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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 10 13 17 20 24 27 30 32 34 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 11 14 16 19 24 29 32 34 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 8 11 14 16 20 26 30 34 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 11 14 17 21 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 6 9 12 15 17 21 26 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 10 13 16 18 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 7 11 14 17 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 12 16 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 8 12 16 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 2 2 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 1 1 0 0 0 0 2 3 0 0 0 0 0 0 0 0 0 1 2 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 3 4 5 5 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 6 6 5 4 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 6 7 6 4 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 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 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 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 1 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 1 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 2 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 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 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 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 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 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 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 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 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 2 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 2 3 4 5 4 1 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 2 4 4 5 5 2 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 3 2 0 0 0 0 0 0 0 0 0 2 5 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 2 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 1 3 2 2 2 1 0 0 0 0 0 0 0 0 0 1 4 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 2 6 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 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 1 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 1 5 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 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 3 6 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 0 0 0 0 2 1 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 1 4 6 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 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 1 4 7 8 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 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 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 2 5 9 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 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 2 13 16 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 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 9 17 18 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 0 0 0 0 0 0 0 0 0 0 0 0 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 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 2 8 20 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 0 0 0 0 0 0 0 0 0 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 3 10 13 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 2 2 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 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 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 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 6 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 8 15 14 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 2 5 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 0 0 0 0 0 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 15 17 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 4 7 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 5 11 15 12 3 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 2 4 8 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 3 8 10 6 2 0 0 0 0 0 0 0 0 0 0 2 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 1 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 2 7 8 2 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 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 6 7 2 0 0 0 0 0 0 0 0 0 0 0 0 0 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 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 1 2 6 3 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 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 5 3 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 2 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 4 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 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 2 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 2 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 7 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 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 0 0 0 0 0 0 0 0 0 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 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 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 5 8 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 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 3 7 10 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 8 11 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 2 5 9 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 2 3 2 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 1 3 7 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 8 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 0 0 0 0 0 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 14 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 13 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 4 13 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 15 13 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 4 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 2 12 16 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 3 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 14 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 2 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 9 15 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 2 4 3 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 6 13 14 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 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 14 11 6 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 3 5 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 3 12 11 10 9 9 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 2 4 6 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 0 0 0 0 2 8 10 10 10 10 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 2 6 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 0 0 0 0 0 0 7 10 10 10 11 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 1 4 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 0 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 7 10 9 8 10 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 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 1 0 0 0 0 0 0 0 0 7 11 8 0 7 9 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 3 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 0 0 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 0 0 0 0 0 0 0 0 6 12 12 8 8 9 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 1 3 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 5 7 0 0 0 0 0 0 0 0 5 11 13 10 8 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 2 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 9 6 1 0 0 0 0 0 0 4 10 14 12 10 8 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 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 3 8 9 2 0 0 0 0 0 0 2 6 13 14 11 8 8 8 2 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 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 1 4 9 3 0 0 0 0 0 0 0 1 10 14 12 9 8 8 3 0 0 0 0 0 3 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 2 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 8 6 2 0 0 0 0 0 0 0 8 13 14 11 8 8 5 2 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 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 7 8 5 0 0 0 0 0 0 0 5 11 14 13 10 8 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 1 1 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 0 0 0 0 0 0 0 4 8 12 14 13 10 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 2 4 4 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 5 7 0 0 0 0 0 0 0 1 4 8 13 14 12 8 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 2 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 4 7 0 0 0 0 0 0 0 0 1 3 9 13 13 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 1 3 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 3 7 1 0 0 0 0 0 0 0 0 0 4 10 13 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 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 2 7 6 2 0 0 0 0 0 0 0 0 1 6 11 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 1 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 0 0 0 0 0 0 0 0 0 0 1 7 8 3 0 0 0 0 0 0 0 0 0 3 8 12 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 2 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 1 6 8 4 0 0 0 0 3 4 0 0 0 1 4 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 1 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 0 0 0 0 0 0 0 0 0 0 0 0 0 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 5 0 0 0 0 0 1 0 0 0 0 2 8 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 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 3 7 6 0 0 0 0 2 4 0 0 0 0 1 5 8 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 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 6 6 0 0 0 0 2 5 0 0 0 0 0 2 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 0 0 0 0 0 0 0 3 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 5 7 0 0 0 0 1 5 1 0 0 0 0 0 5 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 2 6 7 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 4 6 0 0 0 0 1 5 1 0 0 0 0 0 4 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 1 4 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 1 4 1 0 0 0 0 0 3 6 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 1 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 1 0 0 0 0 4 1 0 0 0 0 0 2 5 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 1 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 2 6 1 0 0 0 0 0 0 0 0 0 0 0 1 4 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 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 1 0 0 0 0 0 0 0 0 0 0 0 1 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 4 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 1 5 3 1 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 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 3 6 4 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 2 5 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 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 1 5 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 4 5 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 3 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 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 2 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 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 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 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 nan nan nan 16 16 16 17 17 16 16 16 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 16 16 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 16 16 16 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 16 16 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 15 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 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 5 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 nan 16 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 6 21 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 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 2 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 4 3 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 5 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 4 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 17 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 nan nan 18 nan nan 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 nan nan 17 nan nan 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 nan nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 14 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 14 16 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 14 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 nan nan nan nan 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 nan nan nan nan 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 nan nan nan nan 16 16 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 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 nan nan nan nan nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan 84 85 84 84 83 84 85 87 89 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 87 86 86 85 85 85 86 88 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 89 88 88 87 86 86 87 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 91 90 89 88 88 88 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 92 91 90 89 89 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 92 91 91 91 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 91 92 92 92 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 91 91 92 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 90 91 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 89 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 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 23 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 76 37 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 292 17 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 45 34 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan 246 131 1 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 239 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 73 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 187 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 239 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 313 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 257 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 312 315 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 313 317 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 319 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 314 317 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 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 316 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 322 nan 319 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 321 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 319 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 317 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 314 316 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 312 316 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 307 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 310 316 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 306 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 310 318 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 307 315 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 307 312 317 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 315 319 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 312 316 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 314 319 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 312 317 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 314 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan nan 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 3 3 3 2 2 1 1 1 0 0 0 0 0 -0 -0 -0 0 2 4 4 3 1 1 1 0 0 0 1 1 2 3 3 4 4 4 3 3 2 2 3 4 5 7 7 7 7 4 1 -2 -4 -6 -7 -7 -8 -8 -8 -8 -8 -7 -7 -7 -7 -5 -4 -1 2 5 6 5 2 -2 -8 -13 -17 -18 -18 -17 -15 -13 -11 -10 -9 -10 -11 -12 -13 -15 -16 -14 -9 -7 -8 -13 -16 -15 -14 -14 -15 -15 -14 -12 -12 -13 -14 -13 -12 -14 -17 -16 -13 -9 -9 -14 -18 -18 -15 -12 -9 -8 -10 -14 -17 -17 -15 -13 -16 -18 -18 -15 -10 -9 -11 -13 -13 -13 -12 -11 -11 -11 -11 -12 -12 -12 -12 -11 -11 -11 -12 -12 -12 -12 -12 -12 -11 -11 -12 -12 -11 -10 -9 -8 -9 -10 -10 -8 -4 -3 -5 -8 -11 -11 -8 -2 3 6 6 3 -1 -4 -3 -0 2 2 -0 -2 -1 -1 -1 -3 -5 -5 -3 0 4 7 8 6 5 5 6 7 8 8 6 4 2 1 3 5 4 1 -3 -7 -6 -4 -1 2 5 8 9 9 8 6 4 3 2 3 4 6 8 9 8 6 3 1 0 0 1 2 2 3 3 4 5 5 5 5 5 6 6 6 7 8 9 11 12 12 12 12 11 12 13 14 15 17 18 18 20 21 23 24 25 26 26 26 26 26 27 28 29 30 31 32 33 33 32 31 31 30 30 29 28 27 27 28 28 29 29 29 29 28 28 28 28 28 28 29 29 28 28 27 27 27 27 27 27 27 27 27 27 27 27 27 26 25 24 22 21 20 19 17 16 15 13 12 11 9 8 6 5 4 2 1 -0 -1 -2 -3 -3 -3 -3 -4 -4 -4 -4 -3 -3 -2 -1 -1 -0 -1 -1 -0 -0 0 1 1 1 2 3 3 3 2 2 1 1 1 1 2 2 3 3 2 2 1 1 -0 -1 -2 -3 -4 -6 -8 -9 -11 -12 -13 -13 -13 -12 -12 -12 -12 -12 -12 -12 -12 -12 -11 -10 -9 -8 4 5 5 4 2 1 -0 -1 -2 -3 -4 -5 -6 -7 -8 -9 -8 -6 -4 -3 -4 -5 -4 -3 -2 -2 -3 -4 -4 -4 -2 -1 1 2 3 3 2 1 0 0 0 1 2 3 3 3 3 2 2 1 -0 -3 -6 -8 -10 -10 -10 -10 -9 -8 -7 -7 -6 -6 -5 -3 -0 3 5 6 4 -0 -6 -12 -16 -19 -20 -19 -18 -16 -15 -13 -12 -13 -14 -15 -16 -16 -14 -10 -7 -8 -12 -14 -14 -14 -14 -14 -14 -13 -10 -10 -11 -13 -14 -15 -17 -16 -12 -8 -7 -12 -18 -19 -16 -12 -11 -11 -13 -15 -17 -17 -16 -15 -16 -18 -17 -14 -10 -9 -11 -13 -13 -13 -12 -11 -12 -12 -11 -11 -11 -11 -11 -11 -11 -11 -11 -11 -11 -11 -11 -12 -11 -10 -9 -10 -11 -11 -12 -11 -11 -10 -10 -8 -5 -5 -7 -10 -11 -9 -5 0 4 6 4 0 -4 -6 -4 -1 1 -0 -3 -5 -4 -3 -3 -4 -5 -4 -0 4 8 9 9 7 6 5 6 7 7 6 4 2 1 2 4 5 4 1 -4 -6 -6 -3 0 2 4 6 8 9 9 6 4 3 4 4 5 5 5 6 5 3 1 -0 -1 -0 0 1 2 2 3 4 5 5 5 6 6 7 7 7 7 7 8 9 10 11 11 10 10 10 11 12 13 14 15 16 17 18 20 21 22 22 22 22 22 23 24 24 25 26 27 28 29 30 31 31 30 30 30 30 29 29 28 28 28 28 29 29 29 29 29 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 27 27 27 28 28 28 28 27 26 25 25 24 22 21 19 17 16 15 13 12 10 9 7 6 5 3 2 1 -0 -1 -2 -3 -3 -3 -4 -4 -4 -4 -4 -3 -3 -2 -1 -1 -0 -0 -0 0 1 1 1 2 2 3 3 3 2 1 1 1 1 1 1 2 3 3 3 3 2 1 0 -1 -1 -2 -3 -4 -5 -7 -9 -10 -11 -12 -12 -12 -12 -12 -12 -12 -12 -12 -12 -12 -11 -11 -10 -9 17 16 16 15 14 11 9 8 8 7 6 5 1 -2 -5 -7 -6 -2 -1 -3 -5 -5 -2 -1 -0 -0 -2 -5 -8 -9 -8 -7 -6 -4 -3 -1 -1 -1 -1 -1 -1 -0 -0 -1 -3 -3 -2 1 3 4 4 2 -2 -6 -8 -10 -11 -12 -11 -10 -9 -8 -7 -6 -6 -5 -4 -2 1 4 5 5 2 -3 -9 -15 -20 -21 -21 -20 -19 -18 -17 -17 -17 -17 -16 -14 -12 -12 -10 -10 -11 -12 -12 -13 -13 -13 -13 -11 -9 -9 -12 -14 -16 -16 -16 -12 -8 -7 -10 -17 -19 -16 -13 -13 -14 -16 -16 -16 -16 -16 -17 -17 -18 -16 -13 -9 -8 -10 -13 -13 -13 -12 -12 -12 -12 -12 -11 -10 -10 -10 -11 -11 -11 -11 -11 -10 -10 -10 -11 -11 -10 -8 -8 -9 -11 -12 -13 -11 -10 -8 -6 -5 -6 -9 -11 -10 -7 -3 1 3 2 -0 -4 -6 -7 -4 -1 -0 -2 -5 -7 -6 -4 -4 -4 -3 -1 3 7 10 11 9 6 4 4 4 5 4 3 1 -0 -0 2 4 6 4 1 -2 -4 -3 -0 2 3 3 4 6 9 9 7 5 4 5 7 7 6 4 3 2 1 -1 -2 -1 -1 0 1 1 2 3 4 4 4 4 4 4 5 6 6 6 6 6 6 7 8 8 8 8 8 9 9 11 12 12 13 14 14 15 16 16 17 17 17 18 19 20 21 22 24 25 26 27 28 28 29 29 29 30 30 30 30 29 28 28 28 28 28 29 29 29 29 29 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 27 26 26 24 23 21 19 17 16 14 13 11 10 8 7 6 5 4 2 1 0 -1 -2 -2 -3 -3 -4 -4 -4 -4 -4 -3 -3 -2 -1 -1 -0 0 1 1 1 2 2 3 3 3 2 2 1 1 0 1 1 1 2 2 3 4 3 3 2 1 -0 -1 -1 -2 -2 -3 -5 -6 -8 -9 -10 -11 -11 -12 -11 -11 -11 -11 -11 -11 -11 -11 -10 -10 -10 16 15 15 14 11 6 4 5 6 7 6 4 1 -2 -5 -6 -5 -2 -1 -2 -4 -3 -0 1 1 2 0 -3 -7 -10 -12 -12 -12 -12 -10 -9 -7 -6 -5 -4 -2 -1 -1 -3 -5 -6 -4 -1 1 3 3 3 1 -1 -4 -7 -10 -12 -13 -13 -12 -11 -9 -8 -7 -6 -5 -4 -3 -1 2 5 5 4 -0 -6 -12 -16 -18 -19 -19 -20 -20 -21 -20 -18 -15 -12 -11 -12 -12 -12 -12 -12 -10 -10 -11 -12 -12 -10 -8 -10 -13 -16 -16 -15 -12 -8 -7 -9 -14 -18 -16 -14 -15 -16 -17 -14 -12 -13 -15 -18 -19 -18 -14 -11 -8 -8 -9 -12 -13 -13 -12 -12 -12 -13 -12 -11 -10 -10 -10 -10 -11 -11 -11 -11 -10 -9 -9 -10 -11 -10 -9 -7 -8 -10 -12 -13 -12 -10 -7 -5 -4 -6 -9 -12 -10 -5 -1 1 1 -2 -4 -7 -7 -6 -4 -2 -2 -4 -6 -7 -5 -3 -3 -3 -1 2 7 11 12 10 7 4 1 1 1 2 1 -0 -1 -2 -1 2 4 6 5 2 -1 -2 -0 3 5 5 3 3 4 7 10 8 5 4 5 8 10 9 5 2 -0 -1 -2 -2 -2 -1 -0 -0 0 1 2 3 3 2 2 2 2 3 3 4 4 3 3 4 4 4 5 6 6 6 7 7 8 9 9 10 10 10 11 11 12 12 12 13 14 15 16 17 19 21 22 24 25 26 27 27 28 28 29 29 30 30 30 30 29 28 27 27 27 27 28 28 29 29 29 29 29 28 28 28 28 28 28 29 29 29 29 29 28 28 28 28 28 28 28 28 28 28 28 27 26 25 23 21 19 17 16 14 13 11 9 8 7 6 5 4 3 2 1 -0 -1 -2 -3 -3 -4 -4 -4 -4 -4 -4 -3 -2 -1 -0 0 1 1 2 2 2 3 3 3 2 2 1 0 0 0 1 1 2 2 3 4 4 3 2 1 0 -1 -1 -1 -1 -2 -3 -4 -5 -7 -8 -9 -10 -11 -11 -11 -11 -11 -11 -11 -10 -10 -10 -10 -10 8 9 8 7 5 3 3 5 6 6 5 4 2 1 -0 -1 -0 1 0 0 1 1 2 3 4 4 3 1 -3 -6 -8 -10 -12 -13 -14 -13 -13 -12 -11 -9 -7 -5 -3 -3 -4 -5 -3 -1 -0 -1 -1 -0 1 1 0 -2 -5 -8 -11 -12 -13 -13 -13 -11 -10 -8 -7 -6 -5 -3 -1 2 3 4 3 0 -4 -7 -10 -12 -15 -17 -19 -21 -21 -19 -16 -12 -10 -9 -10 -12 -13 -11 -9 -8 -10 -12 -12 -9 -9 -11 -14 -15 -14 -12 -9 -7 -8 -12 -16 -17 -16 -16 -17 -16 -12 -8 -9 -13 -18 -20 -17 -12 -9 -8 -8 -9 -11 -12 -12 -12 -12 -12 -13 -12 -11 -10 -10 -11 -11 -10 -10 -11 -11 -11 -10 -9 -9 -10 -11 -10 -8 -7 -8 -10 -12 -12 -10 -7 -4 -3 -5 -8 -12 -10 -5 -1 1 -0 -4 -7 -8 -7 -6 -4 -3 -3 -5 -6 -5 -4 -3 -2 -1 1 5 10 12 11 8 3 -1 -3 -2 -1 -1 -2 -3 -3 -3 -0 3 6 7 5 2 -0 -0 2 5 7 7 4 2 2 5 9 9 6 4 5 8 11 11 7 2 -1 -2 -2 -3 -2 -2 -1 -1 -1 0 1 2 2 1 -0 -0 -0 1 1 2 2 2 2 2 3 3 3 4 4 5 5 6 6 6 7 7 7 7 7 8 8 8 9 9 11 12 13 14 16 17 19 20 22 23 24 26 27 27 28 29 29 30 30 30 30 29 28 27 26 25 25 26 27 28 29 29 29 29 28 28 28 28 28 28 29 29 29 29 29 29 28 28 28 28 28 28 28 28 29 28 28 28 27 25 23 21 19 18 16 14 12 11 10 8 7 6 5 4 3 3 1 -0 -1 -2 -3 -3 -4 -4 -4 -4 -4 -4 -3 -2 -1 0 1 2 2 3 3 3 3 3 2 2 1 0 0 1 1 1 2 2 3 4 4 4 3 2 1 -0 -1 -1 -1 -1 -2 -2 -3 -4 -6 -7 -8 -9 -10 -10 -11 -11 -11 -10 -10 -10 -10 -9 -10 6 6 5 4 3 3 4 5 5 6 6 6 6 6 6 6 7 7 5 6 7 7 8 9 11 11 11 10 8 5 2 -1 -3 -5 -7 -8 -10 -11 -12 -13 -12 -10 -8 -6 -5 -4 -2 -1 -2 -2 -3 -4 -3 -1 0 0 -2 -4 -7 -9 -11 -13 -14 -14 -13 -12 -10 -8 -6 -4 -3 -1 -0 0 1 1 0 -2 -4 -6 -8 -11 -14 -17 -18 -19 -18 -15 -12 -11 -12 -13 -13 -12 -10 -8 -10 -12 -11 -10 -10 -12 -14 -13 -11 -10 -8 -8 -11 -15 -18 -18 -17 -17 -14 -10 -6 -6 -12 -18 -20 -17 -12 -9 -9 -10 -11 -11 -12 -12 -12 -11 -12 -12 -12 -11 -10 -11 -11 -11 -11 -10 -10 -11 -12 -11 -10 -10 -10 -11 -11 -10 -8 -6 -8 -10 -11 -11 -8 -5 -3 -3 -6 -10 -11 -6 -2 0 -1 -4 -7 -8 -7 -5 -3 -3 -4 -5 -5 -5 -4 -3 -3 -1 2 7 10 11 8 3 -1 -4 -5 -4 -3 -2 -3 -4 -4 -2 1 5 7 7 5 2 -0 0 2 5 7 7 4 1 1 4 7 8 6 3 4 7 11 12 8 3 -0 -2 -2 -3 -3 -3 -3 -3 -3 -1 1 2 2 1 -1 -2 -1 -0 0 1 1 1 1 2 2 3 3 3 3 3 4 4 4 4 4 4 4 4 5 5 6 6 7 8 8 10 11 12 13 14 14 15 17 18 19 21 22 24 26 27 28 28 29 30 30 30 29 28 26 25 24 24 24 26 27 28 28 29 29 28 28 29 29 29 29 29 29 29 29 29 29 28 28 28 28 28 28 28 28 28 29 29 29 28 27 25 23 21 20 18 16 14 13 11 10 9 8 7 6 5 5 3 1 -0 -1 -2 -3 -3 -3 -4 -4 -4 -4 -3 -3 -1 -0 1 3 3 3 3 3 3 3 3 2 1 1 1 1 1 2 2 3 4 4 4 4 3 2 1 1 0 -0 -1 -1 -1 -1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -10 -10 -10 -10 -10 -9 -9 -9 8 8 7 6 5 4 5 5 5 4 3 3 2 3 3 4 6 7 5 5 6 7 8 9 11 12 13 14 14 13 11 9 7 5 3 2 0 -2 -4 -7 -9 -9 -9 -8 -7 -5 -5 -4 -4 -3 -4 -5 -5 -4 -2 -1 -2 -3 -5 -6 -8 -10 -12 -13 -14 -14 -13 -11 -9 -7 -5 -4 -3 -3 -2 -1 -0 -1 -2 -4 -5 -7 -9 -12 -14 -16 -17 -15 -14 -14 -14 -13 -11 -10 -10 -9 -10 -11 -11 -10 -11 -13 -13 -12 -10 -10 -9 -11 -15 -19 -20 -19 -16 -13 -9 -6 -7 -12 -19 -21 -18 -13 -10 -10 -11 -12 -13 -13 -13 -13 -12 -12 -12 -12 -11 -11 -11 -11 -12 -11 -11 -10 -11 -11 -12 -12 -11 -10 -11 -11 -11 -10 -7 -6 -8 -10 -11 -9 -6 -3 -2 -4 -7 -9 -7 -3 -0 -1 -3 -6 -8 -7 -4 -3 -2 -3 -4 -5 -5 -4 -4 -3 -1 3 7 9 8 5 -0 -3 -5 -4 -2 -1 -0 -1 -2 -2 0 4 7 9 7 4 1 -1 0 2 4 5 4 3 1 1 3 6 7 6 3 3 6 10 12 9 4 -0 -2 -3 -4 -5 -6 -6 -5 -4 -2 1 3 4 2 -0 -2 -2 -1 0 1 2 2 2 2 2 3 3 3 3 3 3 3 3 3 2 2 2 2 3 3 4 5 6 6 7 8 9 9 10 10 10 11 12 13 13 15 16 18 20 21 23 24 26 27 28 28 29 29 28 26 25 24 23 24 25 26 27 27 28 28 28 28 29 29 29 29 29 29 29 29 29 29 29 28 28 28 28 28 27 28 28 29 29 29 29 28 27 25 23 22 20 18 17 15 13 12 10 9 9 8 7 6 4 3 1 -0 -1 -2 -3 -3 -4 -4 -4 -3 -3 -3 -2 -1 1 3 4 4 4 4 4 4 3 3 2 1 1 1 2 2 3 3 4 4 4 3 3 2 2 1 1 0 -0 -1 -1 -1 -1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -10 -10 -10 -10 -9 -9 -9 12 11 10 10 10 10 9 8 7 3 0 -2 -4 -5 -6 -5 -4 -3 -3 -3 -3 -3 -2 -1 -0 0 1 2 3 4 5 5 4 4 3 3 3 3 2 0 -1 -3 -5 -6 -7 -8 -9 -9 -7 -5 -4 -5 -6 -6 -5 -4 -4 -4 -5 -6 -7 -8 -10 -11 -12 -13 -14 -13 -12 -10 -9 -7 -6 -5 -4 -4 -3 -3 -4 -4 -5 -6 -7 -9 -10 -12 -13 -14 -15 -17 -16 -13 -9 -9 -10 -11 -11 -11 -10 -10 -12 -13 -13 -12 -12 -13 -13 -16 -19 -21 -19 -16 -12 -8 -6 -7 -12 -20 -21 -18 -14 -11 -11 -13 -14 -14 -14 -14 -14 -13 -12 -12 -12 -11 -11 -11 -11 -12 -12 -11 -11 -11 -11 -12 -12 -12 -11 -10 -11 -12 -11 -9 -6 -6 -9 -11 -11 -8 -4 -1 -2 -5 -8 -8 -5 -2 -1 -3 -5 -6 -6 -4 -2 -1 -1 -1 -3 -4 -4 -4 -3 -1 3 6 7 5 2 -3 -5 -4 -1 1 3 2 1 -0 0 2 5 7 7 5 2 -1 -1 0 3 4 3 1 -1 -1 -0 3 5 6 5 2 1 4 8 10 8 3 -1 -3 -4 -5 -7 -8 -8 -7 -5 -2 2 5 6 4 1 -1 -2 -1 -0 1 2 2 2 2 2 3 3 3 3 3 3 2 2 1 1 1 1 1 1 2 3 4 5 6 6 7 7 7 7 7 7 7 8 8 9 10 11 12 13 15 16 18 20 21 23 24 25 26 27 27 26 25 24 24 24 24 25 26 26 27 27 27 28 28 29 29 30 30 30 30 29 29 29 29 29 29 29 28 28 27 27 28 28 29 30 30 29 28 26 24 23 22 20 19 17 15 14 12 11 10 10 9 8 6 4 2 1 0 -1 -2 -3 -3 -4 -3 -3 -3 -2 -2 -1 0 2 3 5 5 5 5 5 4 4 3 2 2 2 3 3 4 4 5 5 4 3 3 2 2 2 1 1 0 -0 -1 -1 -1 -2 -2 -3 -4 -5 -6 -7 -8 -9 -10 -10 -10 -10 -10 -9 -9 14 13 13 14 14 14 14 13 13 14 14 14 11 8 4 1 -0 -3 -3 -2 -2 -2 -2 -2 -3 -3 -3 -4 -4 -5 -5 -5 -4 -4 -4 -3 -2 -1 -0 1 2 2 1 -2 -5 -9 -12 -13 -11 -8 -6 -5 -6 -7 -8 -7 -6 -6 -7 -7 -8 -9 -9 -10 -11 -11 -12 -13 -13 -13 -12 -11 -9 -8 -7 -6 -6 -6 -6 -7 -8 -8 -9 -9 -8 -8 -9 -11 -15 -18 -17 -12 -7 -8 -10 -12 -12 -11 -10 -11 -13 -13 -14 -15 -16 -16 -17 -18 -19 -19 -16 -12 -8 -6 -8 -13 -19 -22 -19 -14 -11 -12 -14 -16 -15 -15 -15 -15 -14 -13 -12 -12 -12 -11 -11 -12 -12 -12 -12 -12 -11 -11 -11 -11 -11 -11 -10 -10 -11 -11 -10 -7 -6 -8 -11 -12 -10 -6 -2 -1 -3 -6 -8 -7 -4 -3 -3 -5 -5 -5 -4 -3 -1 1 1 -0 -2 -4 -4 -3 -1 3 6 6 3 -1 -5 -5 -2 2 5 6 5 2 0 1 3 5 6 5 2 -0 -2 -2 0 3 3 1 -2 -3 -3 -1 3 6 6 5 2 -0 2 6 8 6 2 -3 -5 -6 -7 -8 -9 -9 -8 -6 -3 2 6 7 6 3 0 -1 -1 -1 0 2 2 3 3 2 2 2 3 3 3 2 2 2 1 1 0 0 0 0 1 2 3 4 5 6 6 6 6 5 5 5 5 5 6 6 7 7 8 9 10 11 12 13 15 16 18 19 21 22 24 25 26 25 24 24 23 24 25 25 26 26 26 27 27 28 28 29 29 30 29 29 29 29 29 29 29 30 29 29 28 28 27 28 28 29 30 30 30 29 27 25 24 23 22 21 20 18 16 15 14 13 12 11 9 7 6 4 3 2 0 -1 -2 -3 -3 -3 -3 -2 -2 -2 -1 -0 1 2 4 5 6 6 5 5 5 4 4 4 4 4 4 4 5 5 5 4 3 2 2 2 2 2 1 1 -0 -1 -1 -1 -1 -2 -3 -3 -4 -5 -6 -7 -8 -9 -10 -10 -10 -10 -10 -10 9 7 5 4 4 5 6 8 9 10 11 12 13 13 12 11 9 3 2 2 1 0 -0 -1 -1 -2 -2 -4 -5 -7 -8 -9 -10 -10 -10 -10 -9 -8 -7 -5 -2 1 3 2 -1 -6 -10 -13 -13 -11 -9 -7 -7 -8 -8 -8 -8 -7 -7 -8 -10 -11 -12 -12 -11 -11 -11 -12 -13 -13 -14 -13 -12 -10 -9 -8 -7 -7 -8 -9 -10 -11 -11 -10 -8 -7 -8 -11 -15 -18 -15 -10 -8 -10 -13 -14 -12 -10 -10 -12 -13 -15 -17 -19 -19 -18 -17 -17 -16 -14 -11 -9 -7 -9 -14 -19 -21 -18 -13 -11 -12 -15 -17 -16 -15 -15 -15 -15 -14 -13 -12 -12 -12 -12 -12 -12 -12 -12 -12 -12 -11 -11 -11 -11 -11 -10 -9 -10 -11 -10 -9 -6 -7 -10 -12 -12 -8 -4 -1 -2 -5 -7 -8 -7 -5 -5 -5 -5 -5 -4 -3 -2 0 1 1 -2 -4 -4 -3 0 4 6 4 -0 -5 -6 -5 -0 5 8 8 6 2 -1 -1 2 4 4 3 0 -2 -3 -2 0 2 2 0 -2 -4 -3 0 4 6 6 4 1 -0 1 4 5 3 -1 -6 -8 -9 -9 -10 -10 -9 -8 -6 -3 1 4 7 7 4 1 -1 -1 -1 -0 1 3 3 3 3 2 2 2 2 2 2 1 1 1 1 0 0 -0 0 1 1 2 3 4 5 5 5 5 4 4 3 3 4 4 5 5 6 6 6 7 7 8 9 10 12 13 14 15 16 18 20 21 23 23 23 23 23 23 24 25 26 26 26 27 27 27 28 29 29 29 29 28 28 28 28 29 29 29 29 29 28 28 28 28 28 29 29 30 30 29 28 27 25 24 23 23 22 21 19 18 16 15 14 12 11 9 8 7 5 4 2 0 -1 -2 -3 -3 -3 -2 -2 -1 -1 -0 0 1 3 4 6 6 6 6 6 5 5 5 5 5 5 6 6 5 5 4 3 2 2 2 2 2 1 1 0 -0 -1 -1 -1 -2 -2 -3 -4 -5 -5 -6 -7 -8 -9 -10 -10 -10 -10 -10 10 10 9 8 8 7 7 7 7 7 6 6 4 3 3 4 5 3 4 4 3 2 1 1 1 0 -1 -2 -4 -6 -7 -9 -10 -12 -13 -13 -14 -14 -13 -11 -9 -5 -2 1 1 -1 -5 -9 -11 -12 -12 -10 -9 -8 -8 -8 -8 -7 -7 -8 -9 -12 -14 -14 -14 -13 -12 -12 -12 -12 -13 -14 -13 -12 -11 -9 -8 -8 -8 -9 -11 -12 -11 -10 -9 -9 -10 -13 -16 -15 -11 -9 -10 -15 -16 -13 -10 -9 -12 -14 -14 -16 -19 -20 -18 -15 -14 -12 -11 -10 -9 -8 -11 -15 -19 -20 -17 -11 -10 -12 -15 -18 -17 -16 -15 -15 -15 -14 -13 -13 -12 -12 -13 -13 -13 -13 -12 -12 -12 -12 -11 -11 -10 -10 -10 -9 -9 -10 -10 -9 -8 -7 -9 -12 -12 -10 -7 -4 -2 -4 -7 -8 -8 -7 -6 -6 -6 -5 -4 -3 -3 -1 -1 -1 -3 -5 -5 -3 1 4 5 2 -4 -8 -8 -5 1 7 10 9 5 0 -3 -3 -0 2 2 1 -1 -3 -3 -1 1 2 1 -0 -2 -3 -1 1 4 5 5 3 1 -0 -0 2 2 -0 -4 -8 -11 -10 -10 -10 -10 -9 -6 -4 -2 -0 3 5 6 4 2 -0 -1 -1 -0 1 2 3 3 3 1 1 0 1 1 1 0 0 0 0 -0 -1 -1 -1 -0 1 1 2 3 3 4 4 4 3 3 2 2 3 3 4 4 5 5 5 5 5 6 7 7 9 10 11 11 12 13 15 16 18 19 20 20 21 21 22 23 24 25 26 26 26 26 27 27 28 28 28 28 27 27 26 27 27 28 28 29 29 28 28 28 28 28 28 29 29 29 29 29 28 27 25 25 24 24 23 22 21 19 18 16 14 13 11 10 9 7 5 4 2 1 -1 -2 -3 -3 -2 -1 -0 0 0 1 1 2 3 5 6 6 7 6 6 6 6 6 7 7 7 7 6 5 4 3 3 2 2 2 2 1 0 0 -0 -0 -1 -1 -1 -2 -3 -3 -4 -5 -6 -7 -8 -9 -10 -10 -10 -10 -11 15 14 14 13 13 12 12 12 12 12 12 11 10 8 7 6 5 3 3 2 2 2 2 2 2 1 1 -1 -2 -4 -5 -7 -9 -11 -13 -14 -15 -15 -16 -15 -14 -12 -9 -5 -2 -1 -1 -3 -6 -9 -11 -12 -11 -10 -9 -8 -8 -8 -7 -6 -7 -9 -12 -15 -16 -16 -15 -14 -13 -12 -12 -13 -13 -12 -12 -11 -10 -9 -8 -9 -9 -10 -10 -9 -9 -10 -13 -15 -16 -12 -8 -7 -11 -18 -15 -9 -8 -11 -15 -16 -16 -18 -20 -18 -14 -10 -10 -9 -8 -8 -10 -12 -16 -19 -19 -15 -10 -8 -11 -15 -18 -18 -16 -14 -15 -15 -15 -14 -13 -13 -13 -13 -13 -14 -13 -12 -12 -12 -12 -11 -11 -11 -11 -10 -9 -9 -9 -10 -10 -9 -8 -9 -11 -12 -11 -9 -6 -4 -4 -6 -8 -8 -8 -7 -7 -7 -5 -4 -3 -3 -3 -3 -4 -5 -6 -7 -5 -1 2 2 -1 -7 -11 -10 -4 3 9 11 7 1 -4 -6 -5 -1 2 2 -0 -2 -3 -2 -0 1 1 -0 -1 -2 -1 -0 2 3 3 2 1 0 -0 -1 -1 -2 -4 -7 -10 -12 -11 -10 -10 -9 -7 -4 -1 -0 1 2 3 3 2 1 -0 -1 -1 -0 1 2 2 2 2 0 -1 -1 -1 -1 -1 -1 -2 -2 -1 -2 -2 -2 -2 -2 -1 -0 0 1 1 2 2 2 1 1 1 1 1 2 2 3 3 4 4 4 4 4 5 5 6 7 8 9 9 10 11 12 13 14 15 16 16 17 18 20 22 23 24 25 26 26 26 26 26 27 27 26 26 26 25 25 25 25 25 26 27 28 28 28 27 27 28 28 28 29 29 29 29 29 28 27 26 25 25 25 24 23 21 20 18 16 14 13 12 10 8 7 5 4 2 1 -1 -2 -2 -2 -1 0 1 1 1 1 2 3 4 5 6 7 7 7 7 7 7 7 7 7 7 6 5 4 3 3 3 3 2 2 1 -0 -0 -0 -0 -1 -1 -1 -2 -2 -3 -4 -4 -6 -7 -8 -9 -9 -10 -10 -11 -11 12 13 13 13 12 12 11 11 11 12 12 13 14 13 13 13 11 8 5 4 3 2 2 2 2 2 1 -1 -2 -3 -5 -6 -8 -10 -12 -14 -15 -16 -16 -17 -17 -16 -15 -12 -9 -6 -4 -3 -3 -5 -7 -10 -11 -11 -10 -10 -9 -9 -8 -7 -6 -6 -8 -11 -14 -16 -17 -16 -16 -15 -14 -13 -12 -12 -13 -13 -12 -11 -10 -9 -8 -7 -7 -7 -9 -12 -14 -15 -14 -10 -10 -12 -15 -18 -10 -6 -9 -14 -17 -17 -18 -20 -19 -15 -10 -8 -9 -9 -10 -12 -14 -17 -18 -17 -13 -10 -9 -11 -16 -18 -17 -15 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -14 -13 -12 -12 -12 -12 -11 -11 -11 -11 -11 -10 -9 -9 -10 -10 -9 -8 -9 -10 -12 -12 -10 -8 -6 -5 -6 -7 -8 -8 -7 -8 -8 -7 -5 -3 -3 -4 -4 -5 -6 -7 -7 -6 -3 -1 -1 -4 -9 -12 -10 -4 4 9 9 3 -4 -9 -9 -6 -1 3 3 -0 -3 -3 -2 1 1 -0 -2 -4 -3 -1 1 2 2 -0 -2 -2 -1 -1 -1 -2 -4 -6 -9 -10 -11 -11 -9 -7 -5 -3 -0 2 2 2 1 1 1 0 -1 -1 -1 -0 1 1 1 1 1 0 -1 -2 -3 -3 -2 -2 -2 -3 -3 -3 -3 -3 -3 -4 -4 -3 -2 -2 -2 -1 -1 -0 -0 -1 -1 -1 -1 -0 0 1 1 2 2 3 3 3 3 3 4 4 5 6 7 7 8 8 9 10 10 10 11 12 13 14 15 17 19 21 23 24 24 25 25 25 25 25 25 25 25 25 24 24 24 24 24 24 25 26 26 26 27 27 27 27 27 28 28 29 29 29 28 27 27 26 26 26 25 24 23 21 19 18 16 15 13 11 10 8 7 5 4 2 0 -1 -2 -2 -1 0 2 2 3 3 2 3 3 4 5 6 7 7 7 7 7 7 8 8 7 6 5 4 3 3 3 3 3 2 0 -1 -1 -1 -1 -1 -1 -1 -1 -2 -2 -3 -4 -5 -6 -7 -8 -9 -10 -10 -11 -11 7 7 7 7 7 7 7 7 7 7 7 7 8 9 10 12 13 13 13 11 9 8 6 5 3 2 1 0 -1 -2 -4 -5 -7 -10 -13 -16 -16 -17 -17 -17 -18 -18 -18 -17 -16 -14 -13 -11 -9 -8 -8 -9 -10 -12 -12 -12 -12 -11 -10 -9 -7 -6 -6 -7 -9 -11 -14 -16 -17 -17 -15 -14 -14 -14 -14 -13 -13 -12 -11 -9 -7 -6 -6 -7 -9 -12 -14 -13 -11 -11 -12 -15 -16 -13 -6 -8 -13 -17 -18 -18 -20 -20 -17 -12 -9 -9 -11 -13 -15 -17 -18 -17 -15 -12 -10 -10 -12 -16 -18 -17 -15 -14 -14 -14 -15 -15 -15 -15 -15 -15 -15 -14 -13 -12 -11 -12 -11 -11 -11 -11 -11 -11 -10 -9 -9 -9 -10 -9 -8 -9 -10 -11 -12 -11 -9 -7 -6 -6 -7 -7 -7 -7 -8 -8 -8 -6 -4 -3 -4 -5 -6 -6 -7 -7 -7 -6 -4 -3 -6 -9 -12 -11 -4 3 7 6 0 -8 -12 -10 -5 1 6 5 -0 -4 -4 -1 2 1 -2 -6 -7 -6 -2 3 4 1 -2 -5 -5 -3 -1 -1 -3 -6 -8 -10 -10 -10 -9 -7 -4 -1 1 3 3 2 1 -0 -1 -1 -1 -2 -2 -1 -0 1 2 1 1 -0 -1 -2 -3 -4 -4 -4 -3 -3 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -3 -3 -3 -2 -2 -2 -2 -2 -2 -1 -1 -1 -0 0 1 1 2 2 3 3 3 4 4 5 5 5 6 7 7 7 7 7 7 8 9 11 12 15 17 19 20 21 22 23 23 24 24 24 24 24 24 24 24 24 23 23 23 23 24 24 25 25 25 25 25 26 26 27 27 28 28 28 28 27 27 27 26 26 26 25 23 22 21 19 18 17 15 13 11 10 8 7 5 3 1 -0 -1 -2 -1 0 2 3 4 4 4 3 3 4 4 5 6 6 7 7 7 8 7 7 7 6 5 4 4 4 4 4 3 2 0 -1 -2 -2 -1 -1 -1 -1 -1 -1 -2 -2 -3 -4 -5 -6 -7 -8 -9 -10 -10 -11 0 0 0 1 1 2 3 4 4 5 5 4 3 2 2 3 5 8 10 11 12 13 13 13 12 11 11 10 9 7 3 -2 -6 -10 -14 -17 -17 -17 -17 -18 -19 -20 -20 -20 -20 -20 -20 -20 -18 -15 -13 -11 -11 -12 -13 -13 -13 -13 -12 -11 -9 -8 -7 -6 -6 -7 -9 -12 -14 -15 -15 -15 -15 -15 -15 -14 -14 -12 -10 -9 -8 -7 -7 -8 -10 -11 -11 -10 -11 -14 -17 -17 -15 -10 -8 -13 -17 -18 -18 -19 -21 -19 -15 -12 -11 -13 -15 -18 -19 -19 -17 -14 -12 -11 -12 -14 -17 -19 -18 -15 -14 -14 -15 -15 -15 -15 -15 -15 -15 -15 -14 -13 -12 -11 -11 -11 -11 -11 -11 -11 -11 -10 -9 -9 -9 -10 -9 -9 -8 -9 -10 -11 -11 -9 -8 -7 -6 -6 -7 -7 -7 -8 -8 -8 -7 -5 -5 -5 -6 -6 -6 -6 -7 -7 -7 -6 -5 -6 -9 -12 -11 -7 1 5 4 -2 -10 -14 -11 -4 3 7 6 -0 -5 -5 -2 1 1 -4 -9 -11 -8 -3 3 5 2 -3 -8 -8 -5 -2 -1 -3 -6 -9 -10 -10 -9 -7 -5 -2 2 3 3 2 0 -2 -3 -2 -2 -1 -1 -2 -1 1 2 3 2 1 -1 -2 -3 -4 -4 -5 -4 -4 -4 -4 -4 -5 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -3 -3 -3 -3 -2 -2 -2 -2 -2 -1 -1 -0 0 1 1 2 3 3 3 4 4 4 4 5 5 6 5 5 5 5 5 6 8 10 12 14 16 17 18 19 20 21 22 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 23 24 24 24 25 25 26 27 27 28 27 27 27 26 26 26 26 25 24 23 22 21 20 18 17 15 13 11 10 8 6 5 3 1 -0 -1 -0 0 2 3 4 5 5 4 4 4 4 4 5 5 6 7 7 7 7 7 7 6 5 4 4 4 4 4 3 2 0 -1 -2 -2 -2 -1 -1 -1 -1 -1 -1 -2 -2 -3 -4 -5 -7 -8 -9 -9 -10 -11 -3 -3 -3 -3 -2 -1 -0 1 3 5 6 6 5 4 2 0 -1 -1 0 2 4 5 7 8 8 8 8 10 13 15 15 10 3 -5 -11 -16 -17 -18 -18 -18 -20 -21 -21 -21 -21 -23 -24 -25 -25 -23 -20 -17 -15 -14 -14 -14 -14 -14 -13 -12 -11 -9 -8 -7 -5 -5 -6 -7 -9 -11 -12 -14 -15 -16 -16 -15 -13 -11 -9 -8 -8 -8 -9 -10 -10 -10 -9 -9 -12 -17 -20 -17 -13 -11 -13 -18 -19 -18 -18 -20 -21 -17 -14 -12 -14 -17 -19 -20 -20 -17 -14 -12 -12 -14 -16 -19 -20 -18 -16 -15 -15 -16 -17 -16 -16 -16 -15 -15 -15 -14 -14 -13 -12 -11 -11 -11 -11 -11 -11 -11 -10 -9 -8 -8 -9 -10 -9 -9 -9 -10 -11 -10 -9 -8 -7 -7 -6 -6 -6 -7 -8 -8 -8 -7 -5 -5 -6 -7 -7 -7 -6 -6 -6 -7 -7 -7 -7 -9 -11 -11 -9 -3 2 3 -2 -9 -14 -13 -5 3 7 6 0 -6 -7 -4 -1 -1 -5 -11 -13 -10 -4 2 5 1 -4 -9 -9 -6 -2 -1 -3 -7 -9 -10 -9 -7 -5 -3 0 3 4 3 0 -2 -4 -5 -4 -2 -1 -0 -0 0 2 4 4 4 2 -1 -2 -3 -4 -4 -5 -5 -5 -4 -4 -4 -5 -5 -5 -4 -4 -4 -4 -3 -3 -3 -3 -4 -4 -4 -4 -3 -3 -3 -2 -2 -2 -2 -2 -2 -2 -1 -1 -0 0 1 2 3 3 3 3 3 3 4 4 5 5 4 4 4 4 4 5 6 8 10 12 13 14 15 16 18 19 20 21 22 22 22 22 22 22 23 23 23 23 23 23 23 23 22 22 23 23 23 23 24 24 25 26 26 26 26 26 26 26 26 25 25 24 23 22 22 21 20 18 17 15 13 11 9 8 6 4 2 1 1 1 1 2 3 4 5 5 5 5 5 4 4 4 5 5 6 6 7 7 7 6 6 5 5 4 4 4 4 4 3 1 -0 -1 -2 -2 -2 -2 -1 -1 -1 -1 -2 -2 -3 -3 -4 -6 -7 -8 -9 -10 -11 2 2 2 2 3 3 2 2 2 3 4 6 7 8 7 6 4 2 1 1 0 0 1 1 0 -1 -2 -1 2 9 15 16 13 8 1 -5 -10 -13 -16 -18 -20 -22 -21 -21 -21 -23 -25 -28 -28 -27 -25 -23 -20 -18 -17 -16 -15 -15 -14 -13 -12 -10 -9 -8 -6 -6 -5 -4 -4 -5 -7 -10 -13 -15 -15 -14 -12 -10 -8 -8 -8 -9 -10 -11 -11 -10 -10 -11 -15 -19 -19 -16 -13 -15 -18 -20 -19 -18 -19 -21 -19 -16 -14 -14 -17 -20 -21 -20 -17 -14 -13 -14 -16 -19 -21 -21 -19 -17 -16 -16 -17 -18 -17 -16 -16 -15 -15 -14 -14 -13 -13 -12 -11 -11 -12 -11 -11 -11 -11 -10 -8 -8 -8 -9 -9 -9 -8 -9 -9 -10 -10 -9 -7 -7 -7 -7 -7 -6 -7 -8 -8 -7 -6 -4 -4 -6 -8 -9 -8 -6 -6 -5 -6 -6 -7 -7 -8 -9 -10 -10 -7 -2 -0 -3 -8 -13 -13 -6 2 6 5 -1 -7 -9 -6 -3 -2 -6 -11 -13 -10 -5 1 3 1 -5 -9 -9 -6 -2 -1 -3 -7 -9 -9 -8 -6 -4 -1 1 4 4 2 -2 -5 -7 -6 -4 -1 1 2 2 2 3 4 5 5 2 -1 -3 -3 -4 -4 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -4 -4 -4 -3 -2 -2 -2 -2 -3 -4 -4 -4 -3 -3 -3 -2 -2 -2 -2 -2 -2 -2 -1 -1 -0 0 1 2 2 2 2 2 3 3 4 4 4 4 4 3 3 3 3 4 5 7 9 10 11 11 12 13 15 17 18 19 20 20 21 21 21 22 22 22 23 23 23 23 23 23 22 22 22 22 22 22 22 23 23 24 24 25 25 25 25 26 25 25 25 24 23 22 22 21 20 19 18 16 14 12 10 9 7 5 3 2 2 2 2 3 3 4 5 5 6 6 5 5 4 5 5 5 6 6 6 6 6 6 6 6 5 5 5 5 4 4 3 2 1 -1 -1 -2 -2 -2 -2 -2 -2 -2 -2 -2 -3 -3 -4 -5 -6 -7 -8 -10 -11 14 15 15 15 14 13 12 11 10 8 7 6 5 7 8 8 8 8 7 6 5 4 3 2 1 -1 -4 -6 -6 -2 5 11 15 15 13 9 3 -2 -7 -11 -15 -17 -18 -18 -19 -22 -24 -26 -27 -27 -26 -26 -24 -23 -21 -19 -17 -16 -15 -14 -13 -11 -10 -9 -8 -7 -6 -4 -3 -3 -3 -5 -8 -11 -12 -12 -10 -9 -9 -8 -8 -9 -9 -9 -10 -11 -12 -14 -18 -20 -19 -16 -15 -18 -20 -19 -17 -18 -20 -21 -18 -15 -15 -17 -20 -21 -19 -17 -14 -14 -15 -18 -21 -23 -22 -20 -18 -17 -18 -19 -19 -18 -17 -16 -16 -15 -14 -13 -13 -12 -12 -11 -11 -11 -12 -11 -11 -11 -10 -9 -8 -7 -8 -9 -9 -8 -8 -9 -10 -11 -10 -8 -7 -7 -7 -7 -7 -7 -8 -8 -7 -4 -2 -2 -5 -8 -10 -9 -7 -5 -4 -4 -5 -6 -6 -7 -8 -9 -9 -9 -7 -4 -4 -7 -10 -11 -7 0 4 3 -2 -8 -11 -8 -4 -3 -6 -10 -13 -11 -5 -1 1 -1 -6 -9 -9 -6 -2 -1 -4 -8 -10 -9 -7 -4 -2 0 2 3 3 0 -4 -7 -7 -6 -2 1 4 5 4 3 3 4 5 5 2 -1 -3 -4 -4 -4 -5 -6 -6 -5 -5 -4 -5 -5 -5 -5 -5 -4 -4 -3 -3 -1 -1 -1 -2 -3 -4 -4 -3 -3 -3 -3 -3 -3 -2 -2 -2 -2 -1 -1 -1 -0 0 1 2 2 1 1 1 2 3 3 3 3 3 3 3 3 3 4 4 6 7 8 9 9 9 10 11 13 15 16 17 17 18 18 19 20 21 21 22 22 23 23 23 23 23 22 22 22 22 22 21 21 22 22 22 22 23 23 24 24 25 25 24 24 23 22 21 21 21 20 20 19 18 16 14 12 10 7 6 4 3 3 3 3 4 4 4 5 5 6 6 6 5 5 5 5 6 6 6 7 7 6 6 6 6 6 6 6 5 5 5 4 3 2 0 -1 -1 -2 -2 -3 -3 -2 -2 -3 -3 -3 -3 -4 -4 -5 -6 -8 -9 -11 21 19 18 17 16 16 16 16 15 14 11 9 7 6 6 6 7 8 8 8 8 7 7 7 7 6 3 -1 -4 -6 -3 2 7 12 14 14 12 8 4 0 -3 -6 -8 -10 -13 -16 -20 -22 -23 -24 -25 -25 -26 -25 -24 -22 -20 -18 -17 -16 -15 -13 -12 -10 -9 -7 -6 -5 -4 -3 -3 -3 -4 -5 -7 -8 -8 -9 -9 -9 -9 -8 -8 -9 -9 -11 -13 -15 -18 -20 -20 -18 -17 -19 -20 -18 -17 -18 -21 -21 -17 -15 -16 -19 -21 -20 -17 -15 -15 -17 -20 -23 -24 -22 -20 -19 -18 -19 -19 -19 -19 -18 -17 -16 -15 -14 -13 -13 -12 -12 -11 -10 -10 -11 -11 -11 -11 -10 -9 -8 -8 -8 -8 -8 -8 -8 -8 -9 -11 -11 -9 -8 -7 -7 -7 -7 -7 -7 -8 -6 -3 -1 -0 -2 -7 -10 -10 -8 -5 -2 -2 -3 -4 -6 -7 -7 -7 -7 -8 -9 -8 -7 -7 -8 -8 -6 -1 2 1 -4 -9 -12 -9 -4 -3 -5 -9 -12 -11 -6 -2 -0 -2 -6 -9 -9 -6 -3 -1 -3 -7 -10 -9 -7 -3 -0 1 2 1 -0 -3 -7 -8 -7 -3 1 5 8 9 7 5 3 3 4 4 2 -1 -4 -5 -5 -4 -5 -6 -6 -6 -5 -4 -3 -4 -4 -5 -5 -4 -4 -3 -3 -2 -1 -1 -2 -3 -4 -4 -4 -3 -3 -3 -3 -4 -3 -3 -2 -1 -1 -1 -1 -1 -0 0 1 1 1 1 0 1 1 2 2 2 2 2 2 3 3 3 4 5 6 7 7 8 8 8 9 10 11 13 14 14 15 15 16 17 18 19 20 21 21 22 22 22 22 23 23 23 22 22 21 21 21 21 22 22 22 21 21 22 22 23 23 23 23 22 21 20 20 20 20 20 20 20 18 17 14 11 9 6 5 4 4 4 4 4 5 5 5 5 6 6 6 5 5 5 6 6 7 7 7 7 7 6 6 6 6 6 6 6 6 5 5 4 3 2 1 -1 -2 -2 -3 -3 -3 -3 -3 -3 -4 -4 -4 -4 -5 -5 -7 -8 -10 14 12 10 9 9 10 10 11 12 13 12 11 9 7 6 5 4 4 4 4 5 6 7 8 9 10 9 7 4 -0 -3 -3 -1 2 5 7 8 9 9 8 7 6 5 2 -1 -4 -8 -12 -16 -18 -21 -23 -24 -24 -24 -23 -22 -21 -20 -19 -18 -16 -15 -13 -11 -9 -7 -6 -5 -4 -4 -3 -2 -2 -2 -2 -4 -7 -9 -9 -9 -8 -9 -10 -11 -11 -11 -13 -16 -18 -18 -18 -19 -18 -18 -17 -18 -21 -23 -20 -16 -16 -18 -20 -21 -19 -17 -17 -18 -21 -24 -24 -22 -20 -19 -19 -20 -20 -20 -19 -18 -18 -17 -16 -15 -13 -13 -13 -12 -11 -10 -9 -10 -10 -11 -11 -10 -9 -9 -8 -8 -8 -8 -8 -8 -8 -9 -10 -11 -10 -9 -8 -7 -7 -7 -7 -7 -8 -7 -4 -0 1 -0 -5 -9 -11 -10 -6 -2 0 -0 -2 -4 -6 -7 -7 -7 -7 -8 -9 -10 -9 -7 -6 -4 -2 0 -1 -6 -10 -12 -10 -5 -2 -3 -7 -10 -10 -7 -4 -3 -4 -7 -9 -9 -7 -4 -2 -3 -5 -8 -8 -7 -4 -1 1 1 -1 -4 -6 -8 -8 -5 -0 5 10 12 12 9 5 3 2 2 3 1 -2 -5 -6 -5 -4 -4 -5 -6 -6 -4 -3 -2 -2 -3 -4 -4 -4 -4 -3 -3 -2 -1 -1 -2 -3 -4 -4 -4 -4 -4 -4 -4 -4 -4 -4 -3 -2 -1 -1 -1 -1 -1 -1 0 1 1 0 0 -0 -0 0 0 1 1 1 1 2 2 3 3 4 4 5 6 7 8 8 8 8 9 10 11 12 12 13 13 14 14 15 16 18 19 20 20 21 21 22 22 22 22 22 21 21 21 21 22 22 22 22 21 21 20 20 21 21 21 21 21 20 19 19 19 19 20 21 21 20 19 17 13 10 8 6 5 4 4 4 5 5 5 5 5 6 6 6 6 6 6 6 7 7 8 8 8 7 7 6 6 6 7 7 7 6 6 6 5 4 3 2 0 -1 -2 -2 -3 -3 -3 -4 -4 -4 -4 -4 -4 -5 -5 -6 -7 -9 1 1 -1 -1 -2 -1 -0 2 4 7 8 8 8 8 7 5 4 2 1 0 -0 0 1 3 5 7 8 9 8 7 3 -1 -4 -5 -5 -4 -2 0 2 4 5 6 7 8 9 8 7 3 -2 -8 -14 -19 -22 -21 -20 -20 -20 -21 -21 -20 -19 -18 -17 -16 -14 -11 -9 -7 -6 -5 -4 -3 -2 -1 0 0 -1 -3 -5 -7 -8 -9 -11 -13 -13 -12 -11 -13 -15 -16 -18 -21 -23 -22 -18 -19 -21 -23 -22 -18 -16 -17 -20 -22 -21 -20 -18 -19 -21 -23 -24 -22 -19 -18 -19 -20 -20 -19 -19 -19 -18 -18 -17 -15 -14 -13 -13 -13 -12 -10 -9 -9 -9 -10 -10 -9 -9 -9 -9 -9 -9 -8 -8 -8 -8 -9 -10 -10 -11 -10 -9 -8 -8 -7 -6 -7 -8 -8 -5 -1 2 2 -3 -8 -11 -11 -9 -4 -0 1 0 -2 -4 -6 -8 -7 -7 -7 -8 -9 -10 -8 -6 -4 -3 -2 -2 -5 -9 -11 -11 -7 -3 -2 -4 -7 -8 -7 -6 -6 -6 -8 -8 -8 -6 -5 -3 -3 -4 -5 -6 -5 -4 -2 -0 -0 -2 -6 -8 -9 -7 -3 3 8 11 12 10 7 3 -0 -2 -1 1 1 -2 -5 -7 -7 -4 -3 -3 -4 -5 -4 -2 -1 -1 -2 -3 -4 -4 -4 -3 -3 -2 -2 -2 -2 -3 -4 -5 -5 -4 -4 -4 -4 -4 -5 -4 -3 -2 -2 -1 -1 -1 -1 -1 -1 -0 0 1 1 0 -0 -1 -1 -1 -0 0 0 1 1 2 2 3 3 4 5 6 7 8 8 8 8 8 9 10 11 11 11 11 11 12 13 14 15 17 18 19 19 20 20 21 21 21 21 21 20 21 22 23 23 23 22 21 20 20 19 19 20 20 20 20 19 19 18 18 19 20 21 21 21 20 19 16 12 9 7 5 5 4 4 5 5 5 5 5 6 6 6 7 7 7 7 7 8 8 8 8 8 7 7 6 6 7 7 7 7 7 7 6 5 4 3 1 -0 -1 -2 -2 -3 -3 -4 -4 -5 -5 -5 -5 -5 -5 -5 -6 -8 -12 -12 -0 3 3 3 4 2 2 2 3 3 3 4 6 6 6 5 4 2 0 -1 -1 -1 -0 -0 0 1 1 2 3 2 -0 -4 -6 -8 -7 -6 -5 -5 -4 -4 -3 -1 2 5 7 9 9 6 2 -4 -11 -17 -19 -17 -16 -15 -16 -17 -17 -17 -17 -17 -16 -14 -12 -11 -9 -8 -7 -5 -3 -1 -0 0 0 -1 -1 -2 -4 -6 -10 -12 -12 -12 -12 -14 -14 -15 -17 -21 -24 -22 -20 -22 -24 -24 -21 -17 -17 -20 -22 -23 -22 -20 -19 -21 -23 -24 -22 -19 -19 -19 -19 -19 -18 -19 -19 -19 -19 -18 -16 -14 -13 -13 -13 -13 -11 -9 -9 -9 -9 -9 -9 -9 -9 -10 -10 -9 -8 -7 -8 -9 -10 -10 -10 -11 -11 -11 -10 -9 -7 -6 -6 -7 -8 -7 -2 2 3 -0 -5 -10 -12 -10 -7 -3 0 1 0 -2 -5 -7 -8 -7 -7 -7 -8 -9 -9 -7 -5 -4 -4 -4 -5 -7 -8 -9 -8 -6 -4 -3 -4 -5 -6 -7 -9 -10 -10 -8 -6 -4 -4 -5 -5 -4 -3 -2 -3 -3 -3 -3 -3 -3 -6 -9 -10 -7 -2 4 9 11 10 6 1 -3 -5 -6 -4 -1 1 -1 -5 -8 -8 -6 -3 -2 -2 -3 -4 -2 -0 0 -1 -3 -4 -4 -4 -4 -4 -4 -3 -3 -3 -4 -5 -5 -5 -5 -5 -4 -4 -5 -5 -4 -4 -3 -2 -2 -1 -1 -1 -1 -1 -0 -0 1 1 1 1 0 -0 -1 -1 -1 -0 0 1 1 1 2 2 3 3 4 5 7 7 8 7 7 8 9 9 10 10 10 10 10 11 11 12 13 14 16 17 17 18 19 19 20 20 20 20 20 21 22 23 24 24 23 22 21 20 19 19 19 19 19 19 19 18 17 17 18 19 21 21 22 21 20 17 14 11 8 6 5 4 4 4 5 5 5 6 6 6 7 7 8 8 8 8 8 8 8 8 8 8 7 7 7 7 7 7 8 8 8 7 7 6 4 2 1 -0 -1 -1 -2 -3 -4 -4 -5 -5 -5 -5 -5 -5 -5 -6 -7 -4 -4 10 15 16 16 16 13 9 6 1 -3 -4 -3 0 3 5 6 7 6 5 4 3 3 3 2 0 -2 -5 -7 -7 -4 -2 -2 -3 -5 -6 -7 -8 -8 -8 -8 -9 -9 -8 -6 -3 1 5 8 9 8 4 -2 -10 -15 -17 -14 -9 -9 -10 -12 -13 -14 -14 -14 -13 -13 -12 -11 -10 -8 -6 -4 -2 -1 -1 -0 0 1 -0 -2 -5 -7 -8 -10 -12 -13 -13 -14 -16 -21 -23 -22 -22 -24 -24 -22 -19 -18 -21 -23 -24 -23 -21 -20 -21 -23 -24 -23 -20 -19 -19 -19 -19 -18 -18 -19 -20 -19 -18 -16 -15 -13 -13 -14 -14 -13 -11 -10 -9 -10 -10 -10 -9 -10 -10 -10 -9 -6 -5 -6 -8 -10 -11 -10 -10 -10 -11 -11 -10 -8 -6 -5 -6 -7 -7 -5 -0 2 2 -2 -7 -11 -11 -9 -6 -3 -0 0 -0 -2 -5 -7 -8 -8 -7 -7 -8 -8 -7 -5 -5 -5 -5 -6 -6 -6 -6 -6 -6 -7 -6 -4 -3 -3 -5 -9 -12 -12 -10 -6 -3 -3 -5 -7 -6 -3 -0 1 -0 -3 -4 -5 -5 -6 -8 -9 -7 -3 4 9 11 9 3 -3 -8 -10 -9 -7 -3 1 1 -3 -7 -9 -7 -4 -2 -2 -2 -3 -2 -1 -0 -1 -3 -5 -6 -5 -5 -5 -5 -4 -4 -4 -5 -5 -6 -6 -6 -5 -5 -4 -4 -4 -4 -4 -3 -2 -2 -2 -2 -1 -1 -1 -0 -0 0 1 2 2 2 1 -0 -1 -1 -1 -0 1 1 1 1 1 2 2 2 3 5 6 7 7 7 7 7 8 9 9 9 9 9 10 10 10 11 12 13 14 15 16 16 17 17 18 18 18 19 19 21 22 23 23 23 23 22 21 20 20 20 19 19 19 19 18 18 17 17 18 19 20 21 21 21 20 19 16 13 10 7 6 5 4 4 5 5 6 6 6 7 7 8 9 9 9 9 8 8 8 8 8 8 8 8 7 7 7 8 8 8 8 8 8 7 5 3 2 1 0 -1 -1 -2 -3 -4 -4 -5 -5 -5 -5 -5 -5 -5 -6 17 18 18 18 18 18 17 17 16 12 4 -5 -10 -10 -8 -5 -2 0 3 4 5 5 6 7 8 8 8 5 1 -3 -8 -8 -7 -5 -4 -5 -7 -9 -10 -10 -9 -9 -9 -9 -10 -10 -9 -8 -5 -1 3 7 9 8 3 -3 -10 -13 -12 -4 -3 -4 -5 -6 -6 -6 -7 -8 -9 -10 -11 -9 -8 -6 -5 -3 -2 -1 -0 0 0 -0 -1 -1 -3 -6 -9 -11 -12 -13 -16 -20 -22 -21 -23 -24 -23 -21 -20 -21 -24 -26 -25 -23 -21 -21 -23 -25 -24 -22 -20 -20 -20 -19 -18 -17 -18 -20 -20 -19 -17 -15 -14 -14 -14 -14 -14 -13 -11 -11 -11 -10 -10 -10 -11 -11 -11 -9 -6 -4 -4 -7 -10 -11 -10 -9 -9 -10 -11 -10 -8 -6 -5 -6 -7 -7 -6 -2 1 2 0 -4 -8 -10 -9 -7 -5 -3 -2 0 0 -1 -4 -7 -9 -8 -7 -7 -7 -7 -6 -5 -5 -6 -7 -6 -5 -3 -3 -4 -6 -8 -8 -5 -3 -3 -5 -10 -12 -12 -8 -5 -3 -4 -8 -8 -6 -2 1 2 -1 -4 -6 -7 -7 -7 -8 -7 -4 2 8 11 8 2 -5 -10 -13 -12 -9 -5 -1 1 -1 -6 -9 -8 -6 -3 -1 -2 -3 -4 -2 -1 -2 -4 -6 -7 -7 -6 -6 -5 -5 -5 -5 -5 -6 -6 -6 -6 -5 -5 -4 -4 -3 -3 -3 -3 -2 -2 -2 -2 -2 -2 -1 -0 0 0 1 1 2 2 2 2 1 -1 -1 -1 0 1 1 1 1 1 1 1 2 3 4 5 6 6 6 6 7 8 8 9 9 9 9 9 10 10 10 11 12 12 13 14 15 15 16 16 17 17 18 18 19 20 21 22 22 21 20 20 20 19 19 19 19 19 19 18 18 17 17 18 18 19 19 20 20 20 19 17 15 12 9 7 5 5 4 5 5 6 7 7 7 8 9 9 10 10 10 9 9 8 8 8 8 8 8 8 8 8 8 9 9 9 9 8 7 6 4 3 1 0 -0 -1 -1 -2 -3 -4 -4 -4 -4 -4 -4 -5 -5 -5 15 16 15 15 15 14 13 11 7 -1 -7 -10 -11 -12 -12 -11 -9 -7 -6 -4 -3 -2 -0 2 4 8 10 12 11 8 3 -1 -3 -3 -4 -5 -6 -9 -10 -11 -11 -11 -10 -9 -9 -9 -10 -10 -9 -8 -6 -2 2 6 7 6 1 -6 -12 -9 -3 -0 0 1 2 3 2 1 -1 -3 -5 -5 -5 -4 -4 -3 -2 -1 -0 -1 -1 -1 -0 1 0 -2 -4 -8 -10 -13 -16 -20 -22 -21 -24 -24 -22 -21 -21 -24 -26 -27 -25 -23 -22 -23 -26 -26 -24 -22 -21 -21 -20 -18 -17 -18 -20 -21 -19 -18 -16 -15 -14 -15 -15 -15 -15 -13 -12 -12 -12 -11 -11 -12 -12 -12 -9 -6 -3 -3 -7 -10 -12 -11 -9 -8 -9 -10 -10 -9 -7 -5 -5 -7 -8 -7 -4 -0 2 2 -1 -5 -8 -9 -8 -6 -5 -4 -2 1 2 0 -4 -8 -10 -8 -6 -6 -6 -7 -6 -6 -6 -7 -7 -6 -3 -2 -3 -4 -7 -8 -8 -6 -4 -3 -5 -8 -10 -10 -8 -6 -4 -6 -8 -8 -6 -2 0 0 -2 -5 -7 -7 -6 -7 -7 -5 -1 5 10 9 3 -4 -10 -13 -12 -9 -5 -2 1 1 -3 -7 -8 -7 -4 -1 -2 -3 -4 -4 -3 -3 -5 -7 -8 -8 -7 -6 -6 -6 -6 -6 -6 -6 -6 -6 -5 -5 -5 -4 -4 -3 -3 -2 -2 -2 -2 -2 -2 -3 -2 -2 -1 -0 0 1 1 2 2 2 2 2 1 -0 -1 -0 0 1 1 1 1 1 1 1 2 3 4 5 5 5 5 6 6 7 7 8 8 8 9 9 9 10 10 10 11 12 13 13 13 14 15 15 16 16 16 17 18 19 19 20 20 19 19 18 18 17 17 17 18 18 18 18 18 18 17 17 17 18 18 18 18 18 18 17 16 13 11 8 7 6 5 5 6 7 8 8 9 9 10 10 10 10 10 10 9 9 8 8 8 9 9 9 9 9 9 10 10 10 10 9 8 7 5 4 2 1 0 -0 -1 -1 -2 -3 -3 -3 -3 -3 -3 -3 -4 -4 2 -1 -2 -2 -1 0 1 1 0 -2 -5 -6 -8 -9 -10 -10 -10 -9 -8 -8 -7 -7 -7 -5 -3 0 5 9 12 13 12 9 7 4 3 1 -0 -2 -5 -8 -11 -12 -12 -12 -11 -10 -9 -9 -9 -10 -10 -9 -7 -3 0 4 5 4 -2 -12 -9 -5 -2 1 3 6 7 7 7 6 5 3 3 2 2 2 2 2 2 1 -0 -1 -1 -0 0 1 0 -3 -8 -12 -15 -19 -21 -21 -23 -23 -22 -21 -23 -25 -27 -27 -25 -23 -24 -27 -28 -27 -24 -22 -22 -22 -20 -18 -18 -20 -21 -21 -19 -17 -16 -15 -15 -16 -16 -16 -15 -14 -14 -13 -13 -12 -12 -13 -12 -10 -7 -3 -2 -5 -11 -13 -12 -9 -8 -8 -9 -9 -8 -7 -5 -5 -6 -8 -8 -6 -2 1 2 1 -2 -6 -8 -8 -7 -6 -5 -4 -0 3 4 0 -5 -10 -10 -7 -5 -5 -6 -7 -7 -7 -8 -7 -6 -4 -3 -3 -3 -5 -6 -7 -7 -6 -5 -4 -4 -6 -8 -8 -8 -8 -7 -6 -7 -7 -5 -3 -1 -2 -4 -5 -6 -5 -5 -6 -6 -4 0 6 9 6 -1 -8 -11 -11 -8 -5 -2 0 1 -1 -5 -7 -7 -4 -2 -1 -3 -5 -5 -5 -4 -4 -6 -7 -8 -7 -6 -6 -7 -6 -6 -5 -5 -6 -6 -5 -5 -5 -4 -4 -3 -3 -2 -2 -2 -2 -2 -2 -3 -3 -2 -2 -1 -1 0 1 2 2 1 1 2 2 2 0 -0 -0 1 1 1 1 1 1 1 2 2 2 3 4 4 5 5 5 6 6 6 7 7 8 8 8 9 9 10 10 11 12 12 13 13 14 14 15 15 15 15 16 16 17 17 18 18 18 17 16 15 15 15 15 16 17 18 18 18 18 17 17 17 17 17 17 17 17 17 17 16 14 12 10 9 7 7 7 7 8 9 10 10 10 11 11 10 10 10 10 10 9 9 9 9 9 10 10 10 10 10 11 11 11 11 10 10 9 7 5 4 2 1 0 -0 -1 -1 -1 -1 -1 -1 -1 -1 -2 -3 -4 3 3 2 3 4 5 5 5 5 3 1 -1 -3 -5 -5 -6 -6 -6 -5 -6 -6 -7 -7 -7 -7 -6 -3 0 4 8 10 11 10 10 9 9 8 8 5 2 -2 -7 -11 -13 -14 -14 -13 -11 -10 -10 -10 -10 -9 -9 -8 -6 -2 2 4 2 -7 -11 -9 -5 -1 2 4 6 7 7 7 8 7 7 6 6 6 6 5 4 3 2 1 0 2 5 6 2 -5 -9 -13 -17 -20 -21 -22 -22 -21 -21 -23 -26 -28 -26 -25 -24 -27 -30 -29 -26 -23 -23 -23 -21 -19 -18 -20 -21 -21 -20 -18 -17 -16 -16 -16 -17 -17 -17 -16 -16 -16 -15 -14 -13 -13 -13 -11 -7 -4 -2 -5 -11 -14 -13 -11 -9 -8 -9 -9 -8 -6 -5 -4 -6 -8 -8 -7 -4 0 3 2 -1 -4 -7 -8 -7 -6 -6 -5 -2 2 6 4 -2 -8 -12 -10 -5 -4 -4 -7 -8 -8 -8 -7 -6 -4 -3 -3 -4 -4 -5 -5 -6 -7 -7 -7 -5 -4 -4 -6 -7 -9 -9 -8 -6 -5 -4 -3 -2 -2 -3 -5 -5 -4 -3 -4 -6 -7 -4 1 6 8 3 -3 -8 -9 -6 -3 -1 0 0 -1 -3 -5 -5 -4 -2 -1 -2 -4 -6 -5 -4 -4 -5 -7 -7 -6 -6 -6 -7 -7 -6 -5 -5 -5 -5 -5 -5 -5 -5 -4 -4 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -2 -2 -1 0 1 2 1 1 1 2 2 2 1 -0 -0 1 2 1 1 1 1 2 2 2 2 3 3 4 4 5 5 5 5 5 6 6 7 7 8 8 9 9 10 11 11 12 12 13 13 14 15 15 15 15 15 15 15 16 16 16 16 16 14 13 13 13 14 15 16 17 17 18 17 17 16 16 16 16 16 16 16 16 16 16 15 13 12 10 9 8 8 8 9 10 10 11 11 11 11 10 10 10 10 10 10 10 9 10 10 11 12 12 12 12 12 12 13 13 13 12 11 9 7 5 4 2 1 1 1 1 1 1 1 1 1 0 -0 -1 -3 3 3 2 2 3 4 5 5 5 5 4 2 1 -1 -2 -2 -2 -2 -2 -2 -2 -2 -2 -3 -4 -5 -6 -6 -5 -3 -0 2 3 5 7 9 11 13 14 13 10 6 0 -5 -10 -14 -16 -17 -17 -15 -14 -12 -10 -9 -9 -10 -10 -8 -3 3 3 -2 -8 -10 -8 -4 -1 1 3 4 4 5 5 5 5 4 4 4 5 4 3 2 4 8 9 9 7 5 0 -4 -9 -13 -17 -20 -23 -22 -20 -21 -23 -27 -28 -26 -25 -26 -30 -31 -28 -25 -24 -24 -23 -20 -19 -19 -21 -21 -20 -19 -18 -17 -17 -17 -17 -17 -17 -17 -17 -17 -17 -15 -14 -14 -13 -12 -8 -4 -2 -5 -10 -15 -15 -12 -10 -9 -9 -9 -8 -6 -4 -4 -6 -8 -9 -7 -4 -1 3 4 1 -3 -6 -8 -7 -6 -5 -5 -4 -0 5 6 1 -6 -11 -12 -7 -4 -3 -5 -8 -9 -8 -7 -6 -3 -2 -2 -3 -5 -5 -5 -4 -5 -6 -7 -7 -6 -5 -4 -5 -6 -8 -8 -7 -5 -4 -2 -1 -0 -1 -4 -5 -5 -4 -2 -3 -6 -6 -3 3 7 6 1 -4 -5 -4 -1 1 0 -1 -2 -2 -3 -3 -3 -2 -1 -2 -4 -6 -6 -5 -3 -4 -6 -7 -6 -6 -6 -6 -7 -6 -5 -5 -5 -5 -5 -5 -5 -5 -5 -4 -4 -4 -4 -3 -3 -3 -3 -3 -3 -2 -2 -3 -3 -3 -1 0 2 2 1 0 0 1 2 2 1 -0 -0 1 2 2 1 1 1 2 2 2 2 2 3 3 4 4 4 4 4 5 5 6 6 7 7 7 8 9 10 10 11 11 12 13 13 14 15 15 15 15 15 14 14 15 15 15 15 15 14 13 13 13 14 15 16 16 17 17 17 16 17 17 17 17 17 16 16 16 16 16 15 14 13 12 11 10 10 10 10 10 11 12 12 12 11 11 10 10 10 10 10 10 10 11 12 13 14 14 14 14 13 13 13 14 14 14 13 11 9 7 5 4 3 2 2 3 3 3 3 2 2 2 1 -0 -1 -1 -1 -2 -2 -2 -1 -0 1 1 1 1 1 1 0 -1 -2 -2 -2 -1 -0 1 2 2 2 2 0 -3 -5 -7 -8 -8 -8 -7 -6 -4 -2 2 5 9 12 15 16 15 11 6 -0 -7 -12 -17 -19 -20 -19 -16 -14 -11 -10 -11 -11 -11 -7 -2 0 -2 -6 -10 -9 -5 -2 -0 2 2 3 3 2 2 1 -0 0 1 0 -1 -1 -0 1 2 2 -0 -3 -5 -5 -6 -9 -13 -17 -21 -20 -19 -21 -25 -28 -27 -25 -26 -29 -31 -30 -26 -25 -25 -24 -22 -20 -19 -20 -21 -20 -19 -19 -18 -17 -17 -17 -17 -18 -18 -18 -18 -18 -17 -16 -16 -15 -13 -9 -4 -2 -5 -10 -14 -15 -13 -11 -10 -10 -10 -8 -6 -4 -5 -6 -8 -9 -8 -4 -1 3 5 3 -1 -5 -7 -7 -5 -4 -4 -4 -2 2 6 4 -3 -9 -12 -9 -5 -3 -4 -7 -9 -9 -7 -5 -3 -0 1 -1 -4 -5 -5 -5 -4 -4 -6 -6 -7 -7 -6 -5 -4 -5 -6 -6 -5 -4 -2 -0 1 2 -1 -4 -6 -6 -4 -3 -3 -4 -3 1 5 7 3 -1 -3 -2 0 1 -1 -4 -4 -3 -1 -1 -2 -3 -2 -2 -4 -6 -7 -5 -4 -3 -5 -6 -7 -6 -6 -6 -7 -6 -5 -5 -5 -5 -5 -6 -5 -5 -5 -5 -5 -5 -4 -4 -4 -4 -4 -4 -3 -3 -2 -3 -3 -3 -3 -1 0 1 1 1 0 0 2 2 2 0 -0 -0 1 2 2 1 1 1 1 2 2 2 2 3 3 4 4 4 4 4 4 5 5 5 6 6 7 7 8 9 9 10 10 11 12 13 14 15 15 16 15 15 14 14 14 14 14 14 14 14 13 13 14 14 14 15 16 16 17 16 17 17 18 18 18 17 17 17 16 16 16 15 14 13 12 12 12 11 11 11 11 11 12 12 12 12 11 10 10 10 10 10 11 11 12 13 14 16 17 17 16 15 14 14 14 15 15 15 13 11 9 7 5 4 4 4 4 5 5 5 4 3 3 2 1 0 4 4 3 3 3 3 3 4 4 3 1 -1 -3 -3 -4 -4 -5 -5 -4 -3 -1 0 1 2 3 4 3 2 -0 -2 -4 -6 -8 -10 -11 -11 -10 -8 -5 -1 3 8 12 14 14 13 10 5 -1 -7 -12 -16 -18 -18 -15 -13 -12 -12 -13 -13 -10 -6 -3 -3 -6 -10 -11 -9 -6 -2 1 3 4 3 2 0 -1 -1 -2 -2 -3 -3 -3 -4 -3 -1 -1 -3 -6 -9 -11 -12 -13 -15 -18 -18 -19 -23 -27 -28 -26 -25 -27 -30 -31 -28 -26 -25 -25 -24 -21 -20 -20 -20 -20 -19 -19 -18 -18 -17 -17 -17 -18 -18 -18 -18 -17 -17 -17 -18 -18 -16 -12 -6 -3 -5 -9 -13 -15 -13 -11 -10 -10 -10 -9 -6 -5 -5 -7 -9 -10 -8 -5 -0 3 6 6 2 -3 -7 -7 -4 -2 -2 -3 -3 -0 4 5 -1 -7 -11 -10 -6 -2 -3 -5 -8 -9 -8 -6 -3 0 2 1 -2 -4 -4 -4 -4 -4 -5 -5 -6 -6 -6 -6 -6 -5 -4 -4 -3 -3 -2 -1 1 2 2 -1 -5 -7 -8 -6 -4 -3 -2 1 5 7 5 -0 -3 -2 1 2 -2 -6 -7 -4 -1 1 -1 -4 -4 -3 -4 -6 -7 -6 -4 -3 -4 -6 -7 -7 -7 -6 -7 -6 -6 -5 -5 -5 -5 -5 -5 -6 -6 -6 -6 -6 -5 -5 -4 -4 -4 -4 -3 -3 -3 -3 -3 -3 -3 -2 -1 0 1 1 0 0 1 2 2 1 0 -1 -0 1 2 2 2 1 1 1 2 2 2 3 3 3 4 4 4 3 4 4 4 5 5 5 5 6 7 7 8 8 9 9 10 11 12 13 14 15 15 15 15 14 13 13 13 14 14 14 14 14 14 14 14 14 15 15 16 16 16 17 18 19 20 19 18 18 17 17 16 16 15 14 14 13 12 12 12 12 12 12 12 12 12 13 12 12 11 10 10 10 11 11 12 13 14 15 17 18 19 19 18 16 15 15 15 15 15 14 13 10 8 7 6 5 5 5 6 6 6 5 4 3 2 2 1 12 12 12 13 13 13 14 14 13 12 8 2 -3 -5 -6 -7 -9 -10 -9 -9 -7 -6 -5 -3 -2 0 2 3 3 3 3 2 1 -1 -4 -6 -9 -10 -11 -10 -8 -5 -1 3 6 10 12 13 12 8 3 -2 -7 -11 -12 -12 -12 -13 -14 -15 -15 -12 -9 -6 -4 -5 -9 -11 -12 -10 -5 -1 2 3 3 2 1 0 -1 -2 -3 -4 -5 -7 -7 -6 -4 -3 -4 -9 -13 -15 -14 -14 -16 -17 -20 -24 -27 -27 -25 -26 -28 -30 -30 -27 -26 -26 -25 -23 -21 -20 -20 -20 -19 -18 -18 -18 -17 -17 -17 -18 -18 -18 -17 -16 -16 -16 -18 -20 -20 -17 -11 -6 -5 -8 -12 -14 -13 -11 -10 -9 -9 -8 -7 -6 -7 -9 -11 -11 -9 -5 -1 4 6 6 3 -2 -6 -7 -4 -0 1 -2 -3 -2 1 4 1 -6 -10 -10 -7 -3 -2 -4 -6 -8 -8 -6 -4 -1 1 1 -2 -4 -4 -3 -3 -3 -4 -5 -6 -6 -6 -5 -5 -5 -5 -4 -3 -1 -1 -1 -0 0 1 -0 -3 -6 -8 -9 -8 -6 -3 2 6 9 8 2 -3 -3 -0 2 0 -5 -8 -6 -1 2 0 -4 -5 -5 -4 -4 -7 -7 -6 -4 -4 -6 -8 -8 -8 -7 -7 -7 -6 -5 -5 -5 -5 -6 -6 -6 -6 -6 -6 -7 -7 -6 -6 -5 -4 -3 -3 -3 -2 -2 -3 -3 -2 -1 -0 0 0 0 0 0 1 1 2 2 1 0 -0 0 1 2 2 2 1 1 1 2 2 3 3 3 4 4 3 3 3 3 4 4 4 4 4 5 5 6 6 7 7 8 9 9 10 11 12 13 14 15 15 15 14 14 13 13 13 13 13 14 14 14 14 15 15 15 15 15 16 16 17 19 19 20 20 19 18 18 17 17 16 15 15 14 13 13 13 12 12 12 12 12 12 13 13 13 13 12 11 11 11 11 11 12 13 14 16 17 19 20 21 20 19 17 16 16 16 15 15 14 12 10 8 6 6 6 6 6 7 7 6 5 4 3 2 1 14 15 14 13 12 12 12 12 12 11 11 12 13 14 14 11 -6 -18 -18 -17 -16 -14 -13 -11 -10 -8 -6 -4 -2 0 2 3 4 4 3 2 -0 -3 -6 -8 -9 -10 -9 -7 -5 -1 3 7 10 12 12 9 6 2 -0 -2 -5 -8 -11 -15 -16 -16 -14 -11 -7 -4 -4 -7 -10 -12 -12 -9 -5 -1 2 3 3 2 2 1 -1 -3 -6 -7 -8 -9 -7 -4 -3 -6 -11 -14 -14 -12 -14 -16 -20 -24 -25 -25 -24 -26 -28 -29 -28 -26 -26 -25 -23 -22 -20 -20 -19 -19 -18 -18 -17 -16 -16 -17 -17 -18 -18 -17 -16 -15 -15 -17 -20 -22 -20 -15 -10 -8 -9 -11 -13 -12 -11 -9 -9 -9 -8 -7 -7 -8 -10 -11 -11 -9 -6 -1 3 5 5 2 -3 -7 -7 -3 2 4 2 -3 -4 -2 1 2 -4 -9 -10 -8 -4 -2 -3 -5 -7 -7 -7 -5 -2 -0 -1 -3 -5 -5 -4 -2 -1 -2 -3 -5 -7 -7 -6 -4 -4 -4 -4 -4 -3 -1 -1 -1 -2 -2 -2 -3 -5 -6 -8 -9 -8 -6 -0 5 10 10 6 -1 -4 -2 1 1 -3 -7 -6 -2 2 2 -2 -6 -6 -4 -3 -5 -7 -6 -5 -4 -6 -8 -9 -9 -8 -8 -7 -6 -5 -5 -6 -6 -6 -6 -6 -6 -6 -7 -7 -7 -7 -7 -6 -5 -4 -3 -2 -1 -1 -2 -3 -2 -1 0 1 1 -0 -1 -0 1 1 1 1 1 1 1 0 0 1 2 2 2 2 1 2 2 2 3 3 3 4 4 3 3 3 3 3 3 4 4 4 4 4 5 5 6 7 7 8 8 9 9 10 12 13 13 14 14 14 13 13 13 12 13 13 13 14 14 14 15 15 15 15 15 16 16 17 18 18 19 19 19 19 18 18 17 16 16 15 14 14 13 13 13 13 13 12 13 13 13 13 13 13 13 12 12 11 11 12 12 13 14 16 17 19 21 22 22 21 20 18 17 16 16 15 14 13 11 9 7 6 6 6 6 7 7 6 6 5 3 2 2 12 12 10 4 1 -1 -0 1 2 2 1 -0 -2 -4 -7 -9 -14 -17 -18 -15 -18 -19 -19 -18 -16 -15 -13 -12 -10 -8 -6 -3 -1 1 3 4 4 3 1 -1 -4 -6 -8 -9 -9 -9 -7 -4 0 5 8 10 11 11 11 10 7 3 -3 -10 -14 -16 -16 -15 -13 -9 -5 -3 -4 -6 -10 -12 -11 -8 -4 -1 2 3 3 2 0 -2 -5 -6 -7 -8 -7 -6 -5 -6 -10 -12 -12 -9 -11 -15 -18 -21 -22 -22 -23 -24 -25 -26 -25 -25 -24 -23 -21 -20 -20 -19 -18 -18 -17 -17 -16 -16 -16 -16 -17 -17 -17 -16 -14 -14 -16 -19 -22 -21 -18 -14 -11 -11 -12 -12 -12 -10 -9 -9 -9 -9 -9 -9 -10 -11 -12 -11 -9 -6 -2 2 4 3 0 -4 -8 -7 -2 3 6 4 -1 -4 -4 -2 -0 -2 -7 -9 -7 -4 -2 -3 -5 -6 -7 -6 -5 -3 -2 -2 -4 -6 -7 -6 -4 -2 -1 -2 -3 -6 -7 -7 -6 -4 -3 -3 -3 -4 -4 -3 -2 -2 -2 -3 -3 -4 -5 -6 -8 -9 -8 -4 2 8 11 10 4 -2 -3 -1 0 -1 -5 -6 -3 2 3 -0 -6 -7 -5 -3 -3 -5 -7 -6 -5 -6 -8 -9 -9 -8 -8 -7 -7 -6 -6 -6 -7 -7 -7 -7 -7 -7 -7 -7 -8 -8 -8 -8 -7 -6 -5 -3 -1 -0 -0 -1 -2 -2 -0 1 2 1 -0 -1 -0 1 2 2 1 2 2 2 1 1 1 2 3 3 3 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 5 5 6 6 7 7 8 8 9 10 11 12 13 13 13 13 13 12 12 12 12 13 13 13 14 14 15 16 16 16 16 16 16 17 17 17 18 18 18 18 18 17 16 16 15 15 14 14 13 13 13 13 13 13 13 13 13 13 13 13 13 13 12 12 12 12 13 14 15 17 18 20 22 23 23 22 20 18 17 16 16 15 14 12 10 8 7 6 6 7 7 7 6 6 5 4 3 2 -1 1 4 6 7 7 9 10 12 13 13 12 10 7 4 1 -2 -5 -7 -9 -11 -14 -15 -16 -16 -16 -16 -16 -16 -15 -14 -12 -9 -6 -4 -2 0 2 2 2 1 -1 -2 -4 -6 -8 -9 -9 -8 -5 -1 3 6 10 13 16 17 15 10 2 -7 -13 -15 -16 -15 -14 -11 -7 -4 -1 -2 -5 -9 -12 -11 -8 -4 0 2 2 -0 -3 -4 -5 -5 -5 -5 -5 -5 -5 -8 -11 -12 -8 -6 -8 -12 -15 -17 -18 -19 -20 -21 -22 -22 -21 -20 -20 -19 -19 -18 -18 -17 -16 -16 -15 -15 -15 -15 -16 -16 -16 -16 -14 -13 -15 -18 -22 -22 -19 -15 -13 -13 -13 -13 -12 -10 -9 -9 -9 -10 -11 -11 -12 -12 -12 -11 -9 -6 -3 1 2 1 -2 -6 -9 -8 -3 4 7 6 1 -4 -6 -4 -2 -2 -4 -7 -6 -5 -3 -3 -5 -6 -7 -6 -5 -4 -3 -3 -4 -6 -8 -7 -6 -4 -3 -2 -3 -4 -6 -7 -7 -6 -4 -2 -2 -2 -3 -4 -4 -4 -3 -2 -2 -2 -3 -5 -7 -9 -9 -7 -2 4 10 11 9 3 -2 -3 -2 -2 -3 -5 -3 1 3 1 -4 -8 -6 -4 -3 -4 -7 -7 -5 -6 -7 -9 -9 -8 -8 -7 -7 -6 -6 -7 -7 -8 -8 -8 -8 -7 -7 -7 -8 -8 -8 -8 -8 -8 -7 -6 -3 -0 1 1 0 -1 -1 0 1 2 1 -0 -1 -0 1 2 2 2 2 3 3 2 1 1 2 3 3 3 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 5 5 6 6 6 7 7 8 9 9 10 11 12 12 13 12 12 12 12 12 12 13 13 13 13 14 15 16 16 16 16 16 16 16 16 16 17 17 18 18 17 17 16 15 15 14 14 14 13 13 13 13 13 13 13 13 13 13 14 14 14 14 13 13 13 13 14 15 16 17 19 22 23 24 23 21 20 18 17 17 16 14 13 11 9 7 7 6 7 7 7 7 6 6 5 4 4 5 6 7 8 8 8 9 10 11 13 14 14 15 15 14 13 11 9 7 4 2 -1 -3 -6 -8 -9 -11 -12 -14 -16 -16 -16 -15 -13 -12 -10 -8 -5 -3 -2 -1 -0 -0 -1 -2 -3 -5 -7 -8 -8 -6 -4 -1 2 7 12 17 20 20 16 7 -3 -11 -14 -15 -14 -13 -12 -9 -6 -2 -0 -0 -3 -7 -11 -14 -10 -5 -4 -5 -5 -2 -2 -3 -4 -4 -3 -3 -3 -5 -7 -7 -4 -1 -1 -4 -7 -10 -11 -12 -14 -16 -17 -17 -16 -16 -16 -16 -16 -16 -16 -16 -15 -15 -14 -14 -14 -15 -15 -16 -15 -14 -13 -14 -17 -20 -22 -19 -16 -14 -14 -14 -15 -13 -12 -10 -10 -10 -11 -12 -13 -13 -13 -12 -11 -9 -6 -3 -0 2 1 -3 -8 -11 -10 -4 3 8 7 2 -4 -7 -6 -4 -3 -3 -5 -5 -4 -4 -4 -5 -6 -6 -6 -6 -5 -4 -4 -5 -6 -7 -7 -7 -6 -5 -4 -4 -5 -6 -7 -7 -7 -6 -5 -2 -1 -1 -3 -5 -6 -5 -3 -1 -1 -1 -3 -5 -8 -10 -9 -7 -1 6 10 11 8 2 -2 -4 -4 -4 -4 -3 0 3 2 -2 -7 -8 -5 -3 -3 -6 -7 -6 -6 -7 -8 -9 -9 -8 -7 -6 -6 -6 -7 -8 -9 -9 -9 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -7 -3 0 3 3 1 -0 -1 -0 1 2 1 0 -0 -0 1 1 2 2 3 4 4 3 2 1 2 3 4 4 3 3 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 4 5 5 6 7 7 7 8 8 9 9 10 11 11 12 12 12 12 11 11 11 11 11 12 13 13 14 15 16 16 16 16 16 16 16 16 16 17 17 17 17 16 15 14 14 14 13 13 13 13 12 12 12 13 13 13 14 14 15 15 15 15 14 13 13 13 14 15 16 18 20 22 23 23 23 21 20 18 17 16 15 14 12 10 8 7 7 7 7 8 8 7 7 6 6 5 -0 -1 -0 0 1 2 2 3 3 4 6 7 9 11 13 13 14 14 14 13 11 9 7 5 3 1 -1 -3 -6 -8 -10 -12 -14 -14 -15 -14 -14 -12 -10 -8 -6 -5 -5 -4 -3 -3 -3 -4 -4 -5 -5 -4 -3 -2 1 5 10 15 19 20 19 13 4 -6 -12 -13 -13 -12 -11 -10 -8 -5 -3 -1 0 -1 -4 -8 -11 -11 -10 -7 -4 -3 -4 -6 -6 -5 -3 -3 -3 -3 -2 2 4 3 1 -0 -1 -2 -3 -6 -9 -10 -10 -10 -11 -12 -13 -13 -14 -14 -14 -14 -13 -13 -13 -14 -14 -14 -14 -14 -13 -14 -16 -20 -21 -19 -16 -14 -14 -15 -16 -15 -14 -13 -12 -12 -13 -13 -14 -14 -13 -12 -10 -9 -7 -4 -1 1 0 -4 -9 -12 -11 -6 2 7 7 3 -3 -7 -7 -5 -4 -4 -4 -4 -3 -3 -4 -6 -7 -7 -6 -6 -6 -5 -5 -5 -6 -7 -7 -7 -6 -6 -5 -5 -6 -7 -7 -7 -7 -7 -6 -5 -3 -1 -1 -3 -5 -6 -5 -3 -1 0 0 -2 -6 -9 -10 -10 -6 -0 6 10 10 7 1 -4 -5 -5 -4 -3 -1 2 2 -1 -6 -9 -6 -4 -3 -5 -7 -7 -6 -6 -8 -9 -9 -8 -7 -6 -6 -6 -7 -8 -9 -9 -9 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -9 -9 -7 -3 1 4 4 2 0 -1 -1 0 2 2 2 0 -0 0 1 2 3 3 4 5 4 2 2 2 2 3 4 3 3 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 4 5 5 6 6 7 7 7 7 7 7 8 9 10 11 11 12 12 11 10 10 10 10 10 11 11 12 13 14 15 16 16 16 16 16 16 16 16 16 16 16 16 15 14 13 13 13 13 13 12 11 11 11 12 12 13 14 14 15 16 17 16 16 15 14 13 13 14 15 16 18 20 21 22 23 22 21 19 18 17 16 15 14 12 10 8 7 7 8 9 9 9 8 8 7 7 -5 -6 -6 -5 -4 -3 -2 -2 -2 -2 -1 0 1 3 4 5 7 8 9 9 10 9 9 8 6 5 5 4 4 2 0 -2 -5 -8 -10 -12 -13 -14 -13 -13 -12 -11 -10 -10 -9 -8 -7 -6 -6 -5 -5 -4 -3 -2 -1 2 5 9 13 15 17 18 16 9 -0 -9 -11 -11 -10 -9 -9 -8 -7 -6 -4 -2 -1 -2 -4 -7 -8 -8 -7 -6 -6 -5 -6 -7 -7 -6 -3 0 3 5 9 11 11 10 9 8 6 2 -1 -2 -3 -4 -5 -7 -8 -9 -11 -12 -13 -12 -12 -12 -13 -13 -13 -13 -13 -13 -13 -15 -18 -20 -19 -16 -14 -15 -16 -17 -17 -16 -16 -16 -16 -16 -15 -15 -14 -12 -10 -9 -8 -7 -6 -3 -0 0 -3 -9 -13 -12 -7 1 7 7 3 -3 -7 -8 -6 -5 -4 -4 -4 -3 -3 -4 -5 -7 -7 -7 -6 -6 -6 -6 -5 -6 -6 -7 -7 -7 -6 -6 -6 -6 -6 -7 -7 -6 -6 -7 -6 -6 -4 -2 -2 -3 -5 -6 -5 -3 -1 0 0 -2 -6 -9 -11 -10 -6 0 7 10 9 4 -2 -6 -7 -6 -3 -1 2 2 -0 -5 -8 -8 -5 -4 -4 -6 -7 -6 -6 -7 -8 -9 -8 -7 -6 -5 -5 -6 -8 -9 -9 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -9 -7 -3 1 4 5 3 1 -1 -1 -0 2 3 2 1 -1 -1 1 2 3 3 4 4 4 3 2 2 2 3 3 3 3 2 2 2 2 2 2 3 3 3 3 3 3 3 4 4 4 4 4 4 4 4 4 5 5 5 6 6 6 6 6 6 6 6 7 8 9 10 11 11 11 10 9 9 9 9 9 9 10 11 12 13 14 15 16 16 16 15 15 15 15 15 15 15 14 13 13 12 12 12 12 11 11 10 11 11 12 13 13 14 15 16 17 17 17 16 15 14 13 13 13 14 15 17 19 21 22 22 22 20 19 18 17 16 15 13 11 10 9 8 8 9 10 10 10 10 9 9 -4 -5 -5 -5 -4 -3 -3 -2 -2 -1 -1 -1 -1 -1 -1 -1 -1 -1 -0 0 1 2 2 2 2 2 3 4 5 6 6 6 4 2 -1 -4 -7 -9 -11 -12 -13 -13 -12 -12 -11 -11 -11 -10 -9 -8 -7 -6 -5 -4 -2 -0 2 5 8 11 13 16 18 17 13 4 -4 -9 -10 -9 -8 -8 -9 -10 -9 -7 -4 -2 -2 -3 -5 -7 -8 -6 -5 -4 -5 -6 -8 -8 -4 1 6 8 13 17 18 18 17 15 13 10 7 6 4 2 -0 -2 -4 -6 -8 -10 -10 -11 -11 -11 -11 -12 -12 -12 -12 -12 -14 -16 -18 -19 -17 -15 -15 -17 -17 -17 -17 -17 -18 -19 -19 -19 -17 -14 -11 -8 -7 -7 -8 -7 -5 -2 -0 -2 -7 -13 -13 -9 -1 5 6 2 -3 -7 -8 -6 -5 -5 -5 -5 -4 -3 -3 -4 -6 -7 -8 -7 -7 -6 -6 -6 -6 -6 -7 -7 -7 -6 -6 -6 -6 -6 -6 -6 -6 -6 -7 -7 -7 -6 -4 -3 -3 -3 -4 -5 -4 -3 -2 -1 -1 -3 -6 -9 -10 -9 -5 1 7 9 7 1 -5 -7 -7 -4 -1 2 3 1 -3 -6 -8 -6 -4 -4 -5 -5 -5 -5 -6 -7 -8 -8 -7 -6 -5 -5 -6 -7 -9 -9 -8 -8 -7 -7 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -6 -3 1 4 5 4 1 -1 -2 -1 3 4 3 0 -2 -1 1 2 3 3 3 4 4 3 2 2 2 2 3 3 3 2 2 2 2 2 2 2 3 3 3 3 3 3 4 4 4 4 3 3 4 4 4 5 5 5 5 5 6 6 6 6 6 6 6 6 7 9 10 10 10 9 9 8 8 8 8 8 8 8 9 10 11 12 14 14 15 15 15 15 14 14 14 13 13 12 12 11 11 11 11 11 10 10 10 10 11 12 13 13 14 15 16 17 17 17 16 15 13 12 11 12 13 15 17 19 20 21 22 21 20 18 17 16 16 14 13 12 10 9 9 10 10 11 11 12 11 11 -2 -2 -2 -1 -2 -2 -3 -2 -2 -0 1 1 1 1 -0 -1 -2 -2 -3 -3 -2 -2 -2 -2 -2 -1 -1 -1 -0 1 2 4 5 5 5 3 1 -1 -4 -7 -10 -12 -12 -12 -12 -11 -11 -11 -11 -10 -9 -8 -7 -6 -4 -3 -1 2 5 8 11 13 15 18 19 16 8 -0 -6 -9 -9 -8 -9 -9 -9 -8 -7 -5 -4 -3 -4 -5 -7 -6 -6 -5 -5 -6 -8 -8 -5 1 7 11 16 20 21 22 22 20 18 16 14 12 10 7 4 2 0 -2 -5 -7 -8 -9 -9 -9 -9 -10 -11 -12 -12 -12 -14 -16 -17 -17 -16 -16 -17 -18 -18 -18 -18 -19 -21 -22 -21 -19 -16 -12 -8 -6 -6 -7 -8 -7 -4 -1 -2 -6 -12 -14 -10 -4 3 5 1 -4 -7 -8 -6 -4 -4 -5 -6 -6 -4 -3 -3 -5 -7 -8 -8 -8 -7 -6 -6 -6 -7 -7 -7 -7 -7 -6 -7 -7 -7 -7 -6 -5 -5 -6 -7 -7 -7 -6 -5 -4 -4 -4 -4 -4 -4 -3 -2 -2 -2 -3 -6 -8 -9 -8 -4 3 7 7 3 -3 -7 -7 -5 -2 2 4 3 -1 -5 -7 -6 -4 -3 -3 -4 -4 -4 -5 -6 -7 -7 -7 -6 -5 -5 -5 -7 -9 -9 -8 -8 -7 -8 -8 -8 -8 -7 -7 -7 -7 -8 -8 -8 -8 -8 -8 -6 -3 1 4 5 4 1 -1 -2 -0 3 4 3 -0 -2 -1 1 2 2 2 3 4 4 4 3 2 1 1 2 2 3 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 4 4 5 5 5 5 5 5 5 5 5 6 6 6 6 6 7 7 8 9 9 9 9 8 8 8 7 7 7 7 7 7 8 9 11 12 13 14 14 14 14 14 13 12 12 11 10 10 11 11 11 10 10 10 10 10 11 11 12 13 13 14 15 16 17 17 17 16 14 12 11 11 12 13 15 16 18 20 21 21 20 19 18 16 16 15 14 13 12 11 10 11 11 12 13 13 13 13 0 0 1 0 -1 -3 -4 -5 -4 -3 -2 -2 -1 0 1 1 1 1 1 1 0 -0 -1 -1 -1 -1 -1 -2 -2 -2 -2 -1 0 2 3 4 4 4 2 -1 -4 -7 -10 -11 -11 -11 -11 -11 -11 -11 -10 -9 -9 -7 -6 -5 -3 -1 2 5 8 10 12 15 18 20 18 11 3 -4 -8 -9 -8 -8 -7 -7 -7 -7 -6 -5 -4 -4 -6 -7 -8 -9 -9 -8 -8 -7 -4 2 9 14 19 22 24 25 25 23 21 20 19 17 14 11 8 6 3 1 -2 -4 -5 -6 -7 -7 -8 -9 -10 -11 -11 -12 -13 -15 -15 -16 -16 -17 -18 -18 -18 -18 -19 -21 -22 -22 -21 -18 -14 -10 -7 -6 -7 -7 -7 -5 -2 -1 -4 -9 -14 -12 -6 -1 1 -1 -5 -7 -7 -5 -3 -3 -5 -7 -7 -6 -5 -4 -4 -5 -7 -8 -8 -7 -7 -6 -6 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -6 -5 -5 -5 -6 -7 -8 -7 -6 -5 -5 -5 -5 -4 -4 -3 -3 -2 -2 -2 -4 -6 -7 -8 -6 -1 4 6 4 -1 -5 -7 -5 -2 2 5 5 2 -2 -6 -6 -5 -4 -3 -3 -3 -4 -4 -5 -6 -7 -7 -6 -5 -4 -5 -6 -8 -9 -8 -7 -7 -8 -8 -9 -8 -7 -7 -7 -7 -8 -8 -8 -8 -8 -8 -7 -5 -3 1 4 5 4 1 -2 -2 0 4 4 2 -1 -2 -1 1 2 2 2 2 3 4 4 3 2 1 1 1 2 3 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 4 5 5 5 5 5 5 5 5 5 6 6 6 6 6 6 7 7 7 8 8 9 8 8 8 7 7 6 6 6 6 6 7 8 10 11 12 13 14 14 13 12 11 11 10 9 9 10 10 10 10 10 9 10 10 10 11 11 12 13 14 14 15 16 16 16 16 15 13 12 12 12 13 14 15 16 18 19 20 20 19 18 17 16 15 15 14 14 13 12 12 12 13 14 14 15 15 5 3 2 0 -1 -2 -4 -5 -6 -6 -6 -6 -5 -4 -3 -3 -1 -0 1 2 2 2 1 0 -0 -1 -1 -2 -3 -3 -3 -3 -3 -2 -2 -0 1 2 2 2 1 -2 -5 -7 -9 -10 -10 -11 -11 -11 -11 -10 -9 -8 -7 -5 -4 -3 -1 2 5 8 10 11 14 17 20 19 14 6 -2 -6 -7 -6 -5 -5 -5 -6 -6 -6 -5 -5 -6 -8 -10 -12 -13 -13 -11 -8 -2 5 13 17 21 24 26 27 27 26 23 22 22 20 18 15 13 10 7 4 1 -1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -11 -12 -12 -13 -14 -15 -17 -17 -17 -17 -18 -19 -21 -22 -21 -19 -16 -12 -10 -9 -8 -8 -7 -5 -2 -1 -2 -6 -11 -12 -8 -4 -1 -2 -5 -7 -6 -5 -3 -4 -5 -7 -8 -7 -7 -6 -5 -5 -6 -7 -8 -8 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -8 -8 -7 -6 -5 -4 -5 -6 -7 -8 -7 -6 -5 -5 -5 -5 -5 -4 -3 -2 -2 -2 -3 -4 -6 -6 -6 -4 -0 2 2 -0 -4 -6 -5 -2 1 5 6 5 -0 -4 -6 -6 -4 -3 -3 -3 -3 -3 -4 -5 -6 -6 -5 -4 -4 -4 -6 -7 -8 -8 -7 -7 -8 -9 -9 -8 -7 -7 -7 -7 -8 -8 -9 -9 -9 -9 -8 -7 -5 -2 1 4 5 3 -0 -2 -2 1 4 4 2 -1 -2 -1 1 2 2 2 2 2 3 3 3 3 2 1 1 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 3 4 4 4 4 4 5 5 5 5 5 5 6 6 6 6 6 6 6 6 7 7 8 8 8 8 8 7 7 6 6 5 5 5 6 7 9 10 12 13 13 12 12 11 10 9 9 9 9 10 10 10 9 9 9 10 10 11 11 12 12 13 14 14 15 15 15 15 15 15 15 14 13 13 13 13 14 16 18 19 19 19 18 17 16 15 15 15 15 14 14 14 14 14 15 16 16 16 12 10 7 5 5 4 2 1 -1 -2 -3 -4 -5 -5 -5 -6 -6 -5 -4 -2 0 1 1 -0 -1 -2 -2 -3 -3 -4 -4 -5 -5 -5 -6 -6 -5 -5 -3 -1 -0 -0 -2 -4 -6 -7 -8 -9 -10 -11 -11 -11 -10 -9 -7 -6 -5 -4 -2 -1 2 5 7 9 10 12 15 18 19 16 10 2 -3 -5 -5 -4 -4 -4 -5 -6 -6 -7 -8 -9 -11 -13 -15 -16 -15 -11 -3 7 16 20 21 23 26 27 26 25 25 24 24 23 21 19 17 14 11 8 5 4 2 1 -1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -11 -12 -13 -14 -14 -15 -15 -17 -18 -19 -19 -18 -16 -13 -11 -10 -10 -9 -8 -5 -2 0 -0 -3 -7 -10 -9 -6 -4 -4 -6 -7 -6 -5 -4 -4 -6 -7 -8 -8 -7 -7 -6 -6 -6 -6 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -8 -8 -7 -6 -5 -4 -5 -6 -7 -8 -7 -6 -5 -5 -6 -6 -6 -5 -3 -2 -1 -2 -3 -5 -6 -6 -5 -3 -1 -1 -1 -3 -4 -4 -2 2 5 7 6 2 -2 -5 -5 -5 -4 -3 -3 -3 -3 -3 -4 -5 -6 -5 -5 -4 -4 -5 -7 -8 -8 -7 -7 -8 -9 -9 -9 -7 -6 -6 -7 -8 -8 -9 -10 -10 -10 -9 -8 -6 -4 -2 1 3 3 1 -1 -3 -2 1 4 3 2 -0 -1 -0 1 2 2 2 2 2 2 3 3 3 2 2 2 1 1 2 2 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 3 3 3 3 3 4 4 4 5 5 5 5 6 6 6 6 6 6 6 6 6 6 7 7 8 8 8 8 7 7 6 6 5 5 5 6 7 8 10 11 12 12 11 10 9 8 8 8 8 9 9 9 9 9 9 9 10 11 11 12 12 13 13 14 14 14 15 15 16 16 17 17 15 14 13 13 13 15 16 18 18 19 18 17 16 15 15 15 15 15 15 15 15 15 16 16 17 18 14 13 11 10 9 8 6 5 4 4 3 2 1 0 -1 -3 -5 -6 -6 -5 -3 -1 0 -0 -1 -2 -3 -4 -4 -5 -6 -6 -6 -7 -8 -9 -10 -11 -10 -9 -6 -4 -3 -3 -4 -5 -5 -6 -8 -9 -11 -12 -12 -11 -9 -8 -6 -4 -3 -2 -0 2 4 6 7 8 10 12 15 18 17 12 6 -0 -4 -6 -5 -4 -4 -5 -6 -7 -8 -10 -13 -16 -18 -19 -19 -17 -6 9 23 27 28 29 31 32 30 29 29 27 26 25 24 22 21 18 16 13 11 9 8 6 4 2 -0 -1 -2 -3 -4 -4 -5 -6 -7 -8 -9 -10 -10 -11 -12 -14 -15 -16 -15 -14 -12 -11 -10 -11 -11 -10 -7 -4 -0 1 -1 -3 -6 -6 -5 -4 -5 -6 -7 -6 -5 -5 -5 -7 -8 -9 -8 -8 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -6 -6 -7 -8 -8 -8 -8 -6 -4 -4 -4 -6 -7 -7 -7 -5 -5 -5 -6 -6 -6 -5 -3 -2 -1 -2 -4 -5 -6 -6 -5 -4 -3 -3 -3 -3 -2 -1 2 5 7 6 3 -1 -4 -5 -4 -4 -3 -3 -3 -3 -3 -4 -5 -6 -6 -5 -4 -4 -5 -6 -7 -7 -7 -7 -8 -9 -9 -9 -7 -6 -6 -7 -8 -8 -8 -9 -10 -10 -10 -9 -7 -6 -4 -1 1 3 2 0 -2 -3 -1 1 3 3 2 1 -1 -0 1 2 2 2 2 1 1 2 2 3 3 3 2 1 1 1 1 1 1 1 1 0 0 0 0 0 0 -0 -0 -0 0 0 1 2 2 2 3 3 3 3 4 4 4 5 5 5 5 5 5 6 6 6 6 6 6 6 6 6 7 7 7 7 7 7 7 6 5 5 4 5 5 7 8 10 11 11 11 10 9 8 7 7 8 8 8 8 8 8 9 9 10 10 11 12 12 13 14 14 14 14 14 15 16 17 18 18 17 15 13 13 13 14 15 16 17 17 17 17 16 15 14 14 15 15 16 16 16 16 17 17 18 18 9 9 9 8 8 7 6 5 5 6 6 6 6 6 5 4 2 -0 -2 -3 -3 -2 -0 1 1 1 0 -1 -3 -4 -6 -6 -7 -7 -8 -8 -10 -12 -13 -13 -12 -10 -7 -6 -6 -5 -5 -4 -4 -6 -8 -11 -13 -13 -12 -11 -9 -7 -5 -4 -2 -0 1 3 4 5 6 8 10 12 13 14 12 8 2 -4 -7 -6 -4 -5 -6 -8 -9 -11 -14 -17 -20 -21 -23 -25 0 25 34 35 36 36 34 33 32 30 31 30 28 27 27 26 24 22 20 18 17 15 14 12 9 7 5 3 2 1 0 -0 -0 -1 -2 -3 -4 -4 -5 -6 -7 -9 -11 -11 -10 -9 -8 -8 -9 -10 -10 -8 -6 -2 0 -0 -2 -3 -3 -2 -2 -4 -5 -6 -6 -5 -5 -6 -7 -9 -9 -9 -8 -8 -8 -8 -8 -8 -8 -7 -7 -6 -7 -7 -8 -8 -7 -7 -6 -6 -6 -6 -7 -8 -9 -9 -8 -6 -4 -3 -4 -6 -7 -7 -6 -5 -5 -5 -6 -6 -5 -4 -3 -2 -2 -2 -4 -5 -6 -6 -6 -5 -4 -3 -2 -1 1 3 5 7 6 3 -0 -3 -4 -4 -4 -3 -3 -4 -4 -4 -4 -5 -6 -6 -5 -5 -4 -5 -6 -7 -7 -7 -7 -8 -9 -9 -9 -8 -6 -5 -6 -7 -7 -7 -8 -10 -11 -11 -10 -8 -7 -5 -3 -1 1 2 1 -1 -2 -2 -1 1 3 4 3 1 -1 -1 1 2 2 2 2 1 1 1 1 2 3 3 2 2 0 -0 0 1 1 1 1 1 0 0 -0 -0 -1 -1 -1 -1 -0 -0 0 1 1 1 2 2 2 3 3 3 4 4 5 5 5 5 5 5 6 5 5 5 5 5 5 6 6 6 7 7 7 7 7 6 6 5 4 4 4 5 6 8 9 10 10 9 8 7 7 7 7 7 7 7 8 8 8 9 9 10 11 12 13 13 14 14 14 14 14 15 15 17 18 18 18 16 14 13 13 14 14 15 16 16 16 16 15 15 14 14 14 15 15 16 16 17 17 17 18 19 4 5 5 5 5 4 4 3 3 4 5 6 6 7 7 8 7 6 4 3 1 1 2 3 4 5 5 5 3 1 -1 -3 -4 -5 -5 -5 -6 -7 -8 -10 -11 -11 -10 -8 -8 -8 -7 -6 -4 -4 -5 -7 -10 -12 -13 -14 -13 -12 -11 -9 -6 -4 -2 0 2 3 3 4 5 6 7 8 10 10 8 2 -4 -6 -6 -5 -5 -7 -10 -11 -14 -17 -19 -19 -18 -10 7 22 30 38 42 42 41 40 39 36 36 35 33 31 31 30 28 27 25 24 22 21 19 17 15 12 10 9 7 6 5 5 5 4 4 3 2 1 0 -1 -2 -3 -4 -5 -4 -4 -4 -5 -6 -7 -7 -6 -3 -1 -1 -2 -2 -2 -0 0 -1 -3 -4 -5 -5 -5 -6 -8 -9 -10 -10 -9 -8 -8 -8 -9 -9 -9 -8 -7 -7 -7 -7 -7 -8 -8 -7 -7 -6 -6 -6 -6 -7 -9 -9 -9 -8 -6 -4 -3 -4 -6 -7 -7 -6 -6 -5 -5 -5 -5 -4 -4 -4 -3 -3 -3 -4 -5 -6 -6 -6 -5 -4 -2 -0 2 4 6 7 6 4 0 -3 -4 -4 -4 -4 -4 -4 -4 -4 -5 -5 -6 -6 -6 -5 -5 -5 -6 -7 -7 -7 -7 -7 -8 -9 -9 -8 -7 -5 -6 -6 -7 -7 -7 -9 -10 -11 -11 -9 -8 -7 -5 -3 -2 -0 1 0 -1 -2 -2 -1 1 3 4 3 1 -1 -1 0 1 2 1 1 1 1 1 1 1 2 3 3 2 1 -1 -1 -0 1 1 1 1 0 0 -0 -1 -1 -1 -1 -1 -1 -1 -0 0 0 0 1 1 2 2 2 3 3 3 4 4 4 5 5 5 5 5 5 5 5 5 5 5 5 6 6 6 6 6 6 6 6 5 4 4 4 4 5 7 8 9 10 9 8 7 6 6 6 6 6 7 7 7 8 8 9 10 11 12 13 14 14 14 14 14 14 15 15 16 17 18 18 17 16 14 14 14 14 14 14 15 15 15 15 14 14 14 14 14 15 15 16 16 16 17 18 19 4 4 5 5 5 5 4 4 3 3 3 3 3 3 4 5 5 6 6 6 5 5 5 6 6 8 9 10 9 7 5 3 1 0 0 0 1 1 2 1 -2 -4 -5 -5 -6 -7 -8 -8 -8 -6 -5 -5 -6 -9 -12 -14 -15 -15 -15 -14 -13 -10 -8 -6 -4 -2 -1 0 1 1 1 2 4 7 8 6 1 -5 -7 -7 -6 -7 -9 -11 -13 -14 -14 -12 -8 2 11 18 25 35 42 44 44 43 42 41 39 37 36 35 35 34 32 31 29 28 27 26 24 22 20 18 16 14 13 12 11 10 10 9 9 9 8 7 6 5 4 3 2 2 2 1 1 -0 -2 -3 -3 -2 -1 -0 -1 -2 -2 -1 0 1 -0 -1 -2 -2 -4 -5 -7 -9 -9 -10 -10 -9 -9 -9 -9 -10 -10 -9 -8 -8 -7 -7 -7 -7 -8 -8 -7 -7 -6 -6 -6 -6 -8 -9 -10 -9 -8 -6 -4 -3 -4 -6 -6 -6 -6 -6 -6 -5 -4 -3 -3 -3 -4 -5 -5 -4 -4 -5 -6 -6 -6 -4 -2 1 3 5 7 7 6 4 1 -2 -4 -4 -4 -4 -4 -4 -4 -4 -5 -6 -6 -6 -6 -6 -5 -5 -6 -6 -7 -7 -7 -7 -7 -9 -10 -9 -8 -6 -6 -6 -6 -6 -6 -7 -9 -11 -11 -11 -10 -9 -7 -6 -4 -2 -1 -0 -0 -1 -2 -3 -2 1 2 3 2 0 -1 -1 0 1 1 0 0 1 1 1 0 0 1 2 2 2 1 -0 -1 -1 0 1 1 1 1 0 -0 -1 -1 -2 -2 -2 -2 -2 -1 -1 -1 -0 -0 0 1 1 2 2 2 3 3 3 4 4 5 5 5 5 5 4 4 4 4 4 4 5 5 6 6 6 6 6 5 5 4 4 3 4 4 5 7 8 8 8 8 7 6 5 5 5 6 6 7 7 7 8 9 10 11 12 13 14 15 15 15 15 15 15 15 16 17 17 18 17 17 16 15 14 13 13 13 14 15 15 14 14 13 13 13 14 14 15 15 15 16 16 17 18 6 7 7 7 7 8 8 7 6 5 4 3 2 1 0 -1 -1 -0 0 1 2 3 4 4 5 5 6 8 8 8 7 6 4 3 3 4 5 6 7 8 6 4 1 -0 -1 -2 -4 -7 -9 -9 -7 -5 -4 -5 -8 -12 -14 -16 -18 -18 -18 -17 -16 -14 -12 -9 -7 -5 -3 -2 -2 -2 -2 1 4 6 4 -2 -7 -9 -8 -8 -9 -9 -10 -9 -7 -4 1 8 15 19 25 36 44 46 46 44 43 42 40 40 40 40 38 37 36 35 33 32 31 29 27 26 24 22 20 19 18 17 16 15 15 14 14 14 13 12 11 10 9 9 9 9 8 7 5 4 2 1 2 2 2 1 -0 -1 -0 0 1 1 1 0 0 -1 -3 -5 -7 -9 -9 -10 -10 -10 -10 -10 -10 -10 -10 -9 -8 -8 -8 -8 -8 -8 -8 -8 -7 -7 -6 -6 -6 -7 -8 -10 -10 -9 -7 -5 -4 -4 -5 -5 -5 -5 -6 -6 -6 -5 -4 -3 -2 -3 -4 -5 -6 -6 -5 -5 -5 -4 -3 -1 2 4 6 7 7 6 4 1 -2 -4 -5 -4 -4 -4 -4 -4 -4 -5 -6 -6 -6 -6 -6 -6 -5 -6 -6 -7 -7 -7 -7 -7 -8 -10 -10 -9 -8 -6 -6 -6 -6 -6 -6 -8 -10 -11 -12 -11 -11 -10 -9 -7 -5 -3 -1 -1 -1 -3 -3 -3 -2 0 2 2 1 -1 -1 -1 0 0 0 -0 -0 0 1 1 0 -0 0 1 1 2 1 1 -0 -1 -0 0 0 1 1 0 -0 -1 -2 -2 -2 -2 -2 -2 -2 -2 -2 -1 -1 -0 0 1 1 1 2 2 2 2 3 4 4 4 5 5 4 4 4 4 4 4 4 4 4 5 5 6 6 6 5 5 4 4 4 4 4 5 6 6 7 7 7 6 5 4 4 4 5 5 6 7 7 8 9 10 11 12 13 14 15 15 15 15 15 15 15 16 16 17 17 17 17 17 15 14 13 12 13 13 14 14 14 14 13 13 13 13 14 14 14 14 15 15 16 17 8 8 7 7 7 8 8 9 9 8 8 6 5 3 2 1 -0 -2 -2 -3 -3 -3 -2 -2 -1 -1 0 2 3 4 5 5 4 3 3 3 4 4 6 7 8 7 4 3 2 2 0 -3 -6 -9 -8 -6 -5 -4 -5 -8 -11 -14 -17 -20 -21 -22 -22 -21 -20 -17 -14 -11 -8 -6 -5 -5 -6 -5 -2 2 4 1 -5 -8 -8 -6 -6 -5 -3 -1 1 4 8 15 21 26 33 42 48 49 48 46 44 42 40 40 41 42 41 40 39 38 37 35 34 32 30 29 27 26 24 23 23 22 22 21 20 19 19 18 18 17 16 15 14 14 14 14 13 11 9 7 6 5 5 5 5 3 2 2 2 2 2 2 1 1 1 -0 -2 -4 -6 -8 -9 -9 -9 -10 -10 -10 -10 -10 -9 -9 -9 -9 -8 -8 -8 -8 -8 -8 -8 -7 -7 -6 -7 -7 -9 -10 -10 -9 -7 -5 -4 -4 -5 -5 -4 -4 -5 -6 -6 -5 -4 -2 -2 -3 -4 -5 -6 -6 -5 -5 -3 -1 1 4 5 6 6 6 5 3 0 -2 -4 -4 -5 -4 -4 -4 -4 -4 -5 -6 -7 -7 -7 -7 -6 -6 -6 -6 -7 -7 -7 -7 -7 -8 -9 -10 -10 -9 -8 -7 -6 -6 -5 -5 -7 -8 -10 -12 -12 -13 -12 -11 -10 -8 -6 -4 -2 -3 -3 -4 -4 -3 -2 -0 1 1 0 -1 -1 -1 -0 0 -0 -1 -1 -0 -0 -0 -0 -0 -0 -0 0 1 1 1 1 0 -0 -1 -1 -0 -0 -0 -1 -1 -2 -2 -2 -2 -3 -3 -3 -3 -2 -2 -2 -1 -1 -0 0 1 1 1 1 2 2 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 5 5 5 5 5 4 4 4 4 4 5 5 6 6 6 6 5 4 3 3 3 4 5 6 7 8 9 10 11 12 13 14 15 15 15 15 15 15 16 16 16 16 17 17 17 17 16 14 13 12 12 13 13 14 14 14 13 13 13 13 13 14 14 14 14 14 15 16 5 5 5 4 4 4 4 5 5 6 6 6 6 5 5 5 4 3 2 -0 -2 -3 -4 -5 -5 -5 -5 -3 -2 -0 1 2 2 2 2 1 1 0 0 2 4 4 4 2 2 2 3 2 -1 -6 -8 -8 -7 -5 -4 -4 -7 -10 -14 -18 -21 -24 -25 -26 -25 -24 -20 -17 -14 -11 -9 -8 -9 -9 -7 -4 1 2 -3 -5 -5 -2 0 3 7 10 13 16 21 27 32 37 44 49 51 49 47 45 44 43 42 41 40 41 42 42 41 41 39 38 36 35 33 31 30 29 27 27 27 27 26 26 25 24 23 22 22 21 20 19 19 19 19 18 17 15 13 11 10 9 9 9 8 6 5 4 4 4 4 3 2 1 1 -0 -1 -3 -5 -7 -8 -8 -9 -10 -10 -10 -10 -10 -9 -9 -9 -9 -9 -9 -9 -8 -8 -8 -8 -7 -7 -7 -7 -8 -9 -9 -9 -8 -6 -4 -4 -4 -4 -4 -4 -3 -4 -5 -6 -5 -4 -2 -2 -2 -3 -5 -6 -6 -5 -3 -0 2 4 5 5 4 4 3 2 -0 -2 -4 -4 -5 -5 -4 -4 -3 -4 -5 -7 -7 -8 -7 -7 -7 -7 -7 -7 -7 -8 -8 -8 -8 -8 -9 -10 -11 -11 -9 -8 -7 -6 -5 -5 -6 -7 -9 -11 -13 -14 -14 -14 -12 -10 -8 -6 -5 -5 -5 -5 -5 -4 -3 -2 -1 -1 -0 -0 -1 -1 -1 -0 0 -0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -0 0 1 1 1 1 0 -1 -1 -1 -1 -1 -1 -2 -2 -2 -2 -2 -3 -3 -3 -3 -3 -3 -2 -2 -2 -1 -1 -0 -0 0 1 1 1 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 4 4 5 5 5 4 4 4 4 4 4 4 4 5 5 6 6 5 4 3 3 2 2 3 4 5 6 7 8 9 10 11 13 14 14 15 15 15 15 15 16 17 17 17 17 17 17 17 16 15 13 12 12 12 13 13 14 14 14 14 13 13 13 13 13 13 13 14 15 15 -0 1 2 2 1 1 0 1 1 1 2 2 3 4 4 5 6 6 5 5 3 1 -0 -2 -3 -5 -5 -5 -4 -3 -1 -0 0 1 0 -1 -2 -3 -3 -3 -1 0 1 1 -0 0 2 3 3 -1 -5 -8 -8 -6 -4 -4 -4 -6 -9 -13 -17 -21 -24 -26 -26 -26 -25 -22 -19 -16 -13 -12 -13 -13 -11 -8 -4 0 -1 -4 -3 1 7 12 18 23 27 31 36 40 42 46 51 55 53 49 47 46 45 45 45 44 44 42 42 43 43 43 42 41 39 37 35 34 33 31 30 30 30 30 31 30 29 28 27 26 25 25 24 23 23 23 23 22 21 19 17 15 14 13 13 12 11 10 9 8 7 6 6 5 3 2 1 -0 -1 -3 -4 -5 -6 -7 -9 -9 -10 -10 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -8 -8 -8 -8 -7 -7 -7 -8 -9 -9 -8 -7 -5 -4 -3 -4 -4 -4 -3 -3 -4 -5 -5 -5 -4 -2 -1 -2 -3 -4 -5 -4 -3 -1 1 3 4 3 2 1 0 -0 -1 -2 -3 -4 -5 -5 -5 -4 -4 -4 -5 -7 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -9 -11 -12 -12 -11 -9 -7 -6 -5 -4 -5 -7 -9 -11 -12 -14 -15 -15 -15 -13 -10 -8 -7 -7 -7 -7 -5 -4 -3 -3 -3 -2 -1 -1 -1 -1 -1 -1 -0 -0 -0 -1 -2 -2 -3 -3 -2 -2 -1 -1 -1 -0 0 1 1 1 1 -0 -1 -2 -2 -2 -2 -3 -3 -3 -2 -2 -2 -3 -3 -4 -4 -4 -3 -3 -2 -2 -2 -1 -1 -0 -0 0 1 1 1 2 2 2 2 2 2 2 3 3 3 2 2 3 3 3 4 4 4 4 4 4 4 3 3 3 4 4 5 5 5 5 4 3 2 2 1 2 3 4 6 7 8 8 9 10 12 13 14 14 14 15 15 16 16 17 18 18 18 18 18 17 16 15 14 12 12 12 12 13 13 14 14 14 14 14 13 13 13 12 12 13 14 15 -2 -0 1 1 1 0 -0 -1 -1 -1 -1 -1 -0 0 1 2 3 4 5 5 5 5 4 3 2 -0 -2 -3 -4 -3 -2 -1 -1 -1 -1 -2 -2 -3 -4 -4 -3 -2 -1 -1 -2 -2 -1 1 4 3 -1 -6 -8 -8 -6 -4 -4 -3 -4 -6 -10 -15 -19 -21 -23 -25 -25 -24 -22 -20 -18 -16 -16 -15 -14 -12 -8 -3 -1 -3 -4 -2 8 16 23 29 34 38 42 44 45 47 52 56 54 50 47 47 47 48 47 47 47 47 46 46 45 44 44 43 41 40 38 36 35 34 33 33 33 34 34 34 33 32 31 30 29 28 27 27 27 26 26 25 23 21 20 18 17 17 16 16 15 14 12 11 10 9 8 7 5 3 2 0 -1 -2 -2 -3 -5 -6 -7 -8 -8 -8 -9 -9 -9 -9 -8 -8 -8 -9 -9 -9 -8 -8 -8 -7 -7 -7 -7 -8 -8 -8 -7 -6 -4 -3 -3 -3 -4 -4 -3 -3 -3 -4 -4 -4 -3 -2 -1 -2 -3 -4 -4 -3 -1 0 1 2 1 -1 -1 -2 -2 -2 -2 -3 -4 -5 -6 -6 -5 -4 -3 -4 -6 -8 -8 -8 -8 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -9 -11 -12 -12 -12 -11 -9 -7 -5 -4 -4 -5 -7 -10 -12 -13 -15 -16 -16 -15 -12 -10 -8 -8 -9 -9 -7 -5 -4 -3 -4 -4 -3 -2 -1 -1 -2 -2 -1 -1 -0 -1 -1 -2 -3 -4 -4 -4 -4 -3 -2 -1 -1 -0 0 1 1 1 0 -1 -1 -2 -3 -3 -4 -4 -3 -3 -2 -2 -3 -3 -4 -4 -4 -4 -4 -3 -3 -3 -2 -2 -1 -1 -0 0 0 1 1 1 1 1 1 1 1 2 2 2 1 1 2 2 2 2 3 3 3 3 3 3 3 3 3 3 4 4 5 5 5 4 3 2 2 1 1 2 4 5 6 6 7 8 9 10 12 12 13 14 14 15 16 17 18 19 20 20 20 19 18 17 16 15 13 12 11 12 12 13 13 14 15 15 15 14 13 13 12 12 12 13 14 -1 -0 0 1 1 1 0 -1 -1 -2 -2 -2 -3 -2 -2 -2 -1 -1 0 1 2 3 4 4 4 3 1 -1 -2 -3 -2 -2 -2 -2 -3 -3 -3 -3 -3 -3 -3 -2 -1 -1 -1 -2 -2 -1 1 4 3 -2 -6 -9 -8 -6 -4 -4 -3 -3 -3 -6 -10 -14 -17 -20 -22 -24 -23 -22 -20 -18 -17 -16 -15 -13 -10 -6 -3 -3 -5 -6 1 12 20 28 34 38 42 44 45 48 53 57 54 51 49 48 48 45 43 43 44 43 42 42 44 45 45 45 44 42 40 39 38 37 36 36 36 37 37 37 36 35 34 33 32 31 30 30 29 29 29 27 26 24 22 21 20 20 19 19 18 17 16 14 13 11 10 9 7 5 3 1 -0 -1 -1 -2 -3 -4 -5 -6 -6 -7 -8 -8 -9 -8 -8 -8 -8 -8 -9 -9 -8 -8 -7 -7 -7 -7 -7 -8 -8 -8 -7 -5 -4 -3 -3 -3 -3 -4 -4 -3 -3 -3 -3 -3 -2 -1 -1 -2 -3 -4 -3 -2 -0 0 0 -1 -2 -3 -3 -3 -2 -3 -3 -5 -6 -6 -6 -5 -4 -3 -4 -6 -8 -8 -8 -9 -9 -9 -9 -10 -10 -10 -10 -10 -9 -9 -10 -11 -12 -13 -13 -12 -10 -8 -6 -4 -3 -4 -5 -8 -11 -13 -14 -15 -16 -16 -14 -12 -10 -9 -10 -11 -10 -8 -5 -4 -4 -5 -5 -4 -3 -2 -2 -2 -2 -2 -1 -1 -1 -2 -3 -4 -4 -5 -5 -5 -5 -4 -2 -1 -1 -0 0 0 0 -0 -0 -1 -2 -3 -4 -4 -4 -4 -4 -3 -2 -3 -3 -4 -4 -5 -5 -5 -4 -4 -3 -3 -3 -2 -2 -1 -1 -0 -0 -0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 3 3 4 4 4 4 4 3 3 2 1 0 1 3 4 5 5 5 6 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 21 20 18 17 16 14 12 11 11 11 12 12 13 14 15 15 15 14 13 12 12 12 12 13 -1 -1 -1 -1 -0 0 -0 -1 -2 -2 -3 -4 -4 -4 -4 -4 -4 -4 -4 -4 -3 -2 -1 -1 -0 -0 -0 -1 -3 -4 -5 -4 -4 -4 -4 -4 -4 -5 -4 -4 -3 -2 -1 -1 -1 -2 -3 -3 -2 1 3 2 -2 -7 -9 -7 -6 -4 -4 -3 -2 -2 -3 -6 -9 -12 -17 -20 -21 -20 -19 -17 -16 -14 -12 -10 -8 -7 -4 -3 -4 -6 -5 3 12 22 33 43 50 53 54 56 58 59 55 52 50 48 44 41 41 43 45 45 43 41 42 44 46 46 46 45 43 42 41 40 39 39 39 39 39 39 38 37 36 35 35 34 33 32 32 31 31 29 28 26 25 24 23 22 21 20 20 19 19 18 16 14 12 11 9 6 4 2 1 0 -0 -1 -2 -2 -3 -3 -4 -5 -6 -7 -8 -8 -8 -8 -8 -8 -9 -8 -8 -8 -7 -7 -7 -7 -7 -8 -8 -7 -6 -4 -3 -2 -3 -3 -4 -4 -4 -4 -3 -3 -3 -2 -1 0 -0 -2 -3 -4 -3 -1 0 -0 -2 -3 -4 -3 -3 -3 -3 -3 -5 -6 -7 -7 -6 -4 -4 -4 -6 -8 -8 -9 -9 -9 -10 -10 -11 -11 -11 -11 -10 -10 -10 -10 -11 -12 -13 -13 -13 -12 -10 -8 -6 -4 -3 -3 -5 -8 -11 -13 -15 -16 -17 -17 -15 -12 -10 -10 -11 -11 -10 -8 -6 -5 -5 -6 -6 -5 -4 -3 -3 -3 -2 -2 -2 -2 -2 -3 -4 -4 -5 -5 -6 -7 -6 -5 -4 -2 -1 -0 -0 -0 -1 -1 -1 -1 -1 -2 -3 -4 -5 -5 -5 -4 -3 -3 -3 -4 -4 -5 -5 -5 -5 -5 -4 -4 -4 -3 -3 -2 -2 -1 -1 -1 -1 -0 -0 -1 -1 -1 -0 -0 -0 -0 -0 -0 -0 -0 -0 -0 0 1 1 1 1 1 2 2 2 3 3 4 4 4 4 4 3 2 0 0 1 2 3 3 3 4 5 6 8 9 10 11 12 13 14 15 17 18 19 20 21 22 22 22 20 19 17 15 13 12 11 11 11 11 12 13 14 15 16 15 14 13 12 12 12 12 -2 -3 -3 -4 -3 -3 -3 -3 -3 -4 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -6 -5 -5 -5 -5 -5 -5 -5 -5 -6 -7 -7 -7 -7 -6 -6 -6 -6 -6 -6 -5 -4 -3 -2 -1 -1 -2 -3 -3 -2 1 3 2 -3 -8 -9 -8 -6 -5 -4 -4 -3 -2 -2 -3 -6 -9 -14 -16 -16 -14 -11 -8 -6 -5 -3 -3 -3 -3 -2 -3 -5 -6 -2 9 23 38 52 57 57 55 55 56 55 49 46 44 42 38 37 38 41 45 47 45 43 44 46 47 48 48 47 46 44 43 43 42 42 42 42 41 41 40 39 38 38 37 36 35 35 34 33 33 31 30 28 27 26 25 24 23 22 21 21 21 20 19 17 15 13 11 8 6 4 3 2 1 -0 -0 -0 -0 -1 -2 -3 -5 -6 -7 -7 -8 -8 -8 -9 -9 -8 -8 -7 -7 -7 -7 -7 -7 -7 -7 -6 -5 -4 -3 -2 -3 -3 -4 -4 -4 -4 -4 -3 -2 -1 0 0 -1 -2 -3 -3 -1 -0 -0 -1 -3 -4 -4 -3 -3 -3 -4 -5 -6 -7 -7 -6 -5 -4 -4 -6 -7 -8 -9 -9 -10 -10 -11 -11 -12 -12 -12 -11 -11 -11 -11 -11 -12 -13 -13 -14 -13 -12 -10 -8 -6 -3 -2 -3 -5 -8 -11 -13 -15 -17 -18 -18 -17 -14 -12 -11 -11 -11 -10 -9 -8 -7 -7 -7 -7 -6 -5 -4 -3 -3 -3 -3 -3 -3 -3 -3 -4 -4 -5 -6 -7 -7 -8 -7 -6 -4 -2 -1 -1 -1 -1 -2 -2 -2 -2 -2 -3 -4 -5 -5 -5 -5 -4 -4 -3 -3 -4 -4 -5 -6 -6 -6 -5 -5 -5 -4 -4 -3 -3 -2 -2 -2 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -0 0 0 0 0 1 1 2 2 3 3 3 3 4 3 3 2 0 -0 0 1 2 2 3 3 4 5 6 8 9 11 12 13 14 15 16 17 18 19 21 22 23 23 22 21 19 17 15 13 11 11 11 11 11 12 13 14 15 15 15 14 12 12 11 11 -4 -4 -5 -5 -6 -6 -6 -6 -6 -6 -6 -6 -6 -5 -5 -5 -5 -5 -5 -4 -4 -4 -4 -4 -4 -4 -4 -4 -5 -5 -6 -7 -8 -8 -8 -8 -7 -7 -8 -8 -7 -7 -6 -5 -3 -2 -2 -3 -4 -4 -1 2 4 2 -3 -8 -10 -9 -8 -7 -6 -5 -5 -4 -3 -3 -4 -7 -11 -12 -10 -4 1 4 5 5 4 3 2 1 -0 -2 -3 1 15 32 48 59 60 55 50 48 47 46 39 36 35 34 32 34 37 40 44 47 48 47 47 48 48 49 50 49 48 47 46 45 45 45 44 44 43 43 42 41 40 39 39 38 38 37 36 35 34 33 31 30 29 29 27 26 24 23 22 22 21 21 20 20 18 16 13 10 8 6 4 3 2 1 1 1 1 1 -0 -2 -3 -5 -6 -7 -7 -8 -8 -9 -9 -9 -8 -8 -7 -7 -7 -7 -7 -7 -7 -6 -4 -3 -2 -2 -3 -4 -4 -4 -4 -4 -4 -3 -2 -1 0 0 -1 -2 -3 -2 -0 0 -1 -2 -3 -3 -3 -3 -3 -4 -5 -7 -7 -7 -6 -5 -4 -4 -6 -7 -8 -9 -9 -10 -11 -11 -12 -12 -12 -12 -12 -12 -12 -12 -12 -12 -13 -13 -14 -14 -13 -12 -11 -9 -6 -3 -1 -2 -5 -8 -11 -13 -15 -17 -19 -20 -18 -16 -14 -12 -11 -10 -10 -9 -9 -8 -8 -8 -7 -7 -6 -5 -4 -3 -3 -3 -3 -3 -3 -3 -4 -4 -5 -6 -7 -7 -8 -8 -7 -6 -4 -2 -1 -1 -2 -3 -3 -3 -3 -3 -3 -3 -4 -5 -5 -6 -6 -5 -4 -3 -3 -4 -5 -6 -6 -6 -6 -6 -6 -5 -5 -5 -4 -3 -3 -2 -2 -2 -1 -1 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -2 -1 -1 -1 -0 -0 -0 -0 0 1 2 2 2 3 3 3 3 2 1 0 -0 -0 0 1 2 2 2 3 4 5 6 8 10 11 13 14 15 16 17 18 18 20 21 22 23 23 22 21 18 16 14 12 11 11 11 11 11 12 13 14 15 15 14 13 12 11 11 -2 -2 -2 -3 -4 -4 -6 -6 -7 -6 -6 -5 -5 -4 -4 -4 -3 -4 -3 -3 -3 -2 -2 -2 -2 -2 -2 -2 -2 -2 -3 -4 -5 -7 -8 -9 -9 -9 -9 -9 -9 -9 -8 -8 -6 -4 -4 -4 -4 -5 -3 -1 3 4 2 -3 -8 -10 -10 -9 -9 -8 -8 -7 -6 -5 -4 -5 -7 -10 -10 -4 5 11 13 13 11 10 9 8 6 4 3 10 26 44 56 61 58 52 46 40 36 32 27 26 27 29 30 34 37 40 44 47 50 51 49 48 48 49 51 52 51 50 49 48 47 47 46 46 45 44 43 42 41 41 40 40 40 39 38 37 36 34 33 32 32 31 29 28 26 25 24 23 23 22 22 21 20 18 16 13 10 8 6 5 4 3 3 3 3 2 1 -0 -2 -4 -5 -6 -7 -7 -8 -9 -9 -9 -8 -8 -8 -7 -7 -7 -7 -7 -6 -5 -4 -3 -2 -3 -4 -4 -4 -4 -4 -4 -4 -3 -2 -1 0 -0 -1 -2 -2 -1 -0 -0 -1 -2 -3 -3 -3 -4 -5 -6 -7 -8 -7 -7 -5 -4 -4 -5 -7 -8 -9 -9 -10 -11 -12 -12 -13 -13 -13 -13 -13 -13 -13 -13 -13 -13 -14 -15 -15 -15 -14 -13 -12 -9 -6 -2 -0 -1 -4 -8 -10 -12 -14 -17 -19 -20 -20 -18 -15 -13 -11 -10 -10 -9 -9 -9 -9 -8 -8 -8 -7 -5 -4 -3 -3 -3 -3 -3 -3 -3 -4 -4 -5 -6 -6 -7 -8 -9 -9 -8 -6 -4 -2 -1 -2 -3 -4 -5 -5 -4 -4 -4 -4 -4 -5 -6 -6 -6 -5 -4 -3 -4 -5 -6 -6 -7 -6 -6 -6 -6 -6 -6 -5 -4 -4 -3 -3 -2 -2 -2 -2 -3 -3 -3 -3 -3 -3 -3 -3 -3 -3 -2 -2 -1 -1 -1 -1 -1 -1 -0 0 1 2 2 2 2 2 1 1 1 0 -1 -1 -1 0 1 1 2 2 3 3 5 6 8 10 12 14 15 15 16 17 17 18 19 20 22 23 23 22 20 18 15 13 11 11 10 10 10 10 11 12 14 14 14 14 13 12 11 4 5 5 5 4 2 0 -1 -2 -3 -3 -3 -4 -4 -4 -4 -4 -4 -3 -3 -3 -3 -2 -2 -2 -2 -1 -1 -1 -1 -2 -2 -3 -5 -7 -9 -10 -10 -10 -10 -10 -10 -10 -10 -9 -7 -6 -5 -5 -6 -6 -4 -1 2 4 2 -4 -9 -11 -12 -11 -10 -10 -9 -9 -8 -7 -7 -7 -9 -10 -10 -1 8 15 19 19 18 17 16 14 12 12 19 32 46 56 58 55 49 41 34 27 21 18 20 24 28 33 35 39 42 46 48 50 50 49 47 46 48 52 54 54 53 52 51 50 49 48 48 47 46 45 43 43 42 42 42 42 41 40 39 38 36 35 35 34 33 31 30 29 27 26 25 24 24 23 23 22 20 18 16 13 11 9 7 6 6 5 5 4 3 2 1 -0 -2 -3 -5 -6 -7 -7 -8 -8 -8 -8 -9 -8 -8 -7 -7 -7 -7 -6 -5 -3 -2 -2 -3 -4 -4 -4 -4 -4 -4 -3 -3 -2 -1 -0 -1 -2 -2 -2 -1 -0 -1 -1 -2 -3 -4 -4 -5 -6 -7 -7 -7 -7 -6 -5 -4 -5 -7 -8 -9 -9 -10 -11 -12 -12 -13 -13 -13 -14 -14 -14 -14 -14 -14 -14 -15 -16 -17 -18 -17 -16 -14 -12 -10 -6 -2 -0 -1 -4 -7 -9 -11 -13 -16 -19 -20 -20 -19 -17 -14 -12 -11 -10 -9 -8 -8 -8 -9 -9 -9 -8 -6 -5 -4 -3 -3 -3 -4 -4 -4 -4 -4 -5 -5 -6 -7 -8 -9 -10 -9 -8 -6 -4 -2 -2 -3 -4 -5 -6 -6 -5 -5 -4 -4 -4 -6 -7 -7 -6 -5 -4 -4 -5 -6 -7 -7 -7 -7 -7 -7 -7 -7 -6 -6 -5 -4 -4 -4 -4 -3 -4 -4 -4 -4 -4 -4 -4 -5 -5 -4 -4 -4 -3 -2 -2 -2 -1 -1 -1 -1 -1 0 1 1 1 1 1 0 0 -0 -0 -1 -1 -1 -1 0 1 1 1 1 2 3 5 7 9 11 12 14 15 15 16 16 17 17 19 20 21 22 22 21 19 17 14 12 11 10 10 10 10 10 11 12 13 14 13 13 12 11 8 8 9 9 8 7 6 5 4 2 1 -0 -2 -3 -5 -6 -6 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -4 -4 -4 -4 -4 -4 -5 -6 -9 -10 -11 -11 -11 -11 -11 -11 -11 -10 -9 -8 -7 -7 -7 -8 -8 -6 -3 1 3 1 -4 -9 -12 -13 -12 -12 -11 -10 -10 -10 -10 -11 -12 -12 -13 -10 -2 8 18 24 25 24 22 20 18 18 22 31 40 47 49 46 41 33 26 20 17 18 22 28 33 35 36 39 43 46 46 46 47 46 46 46 49 53 55 56 56 55 54 52 51 50 50 49 48 46 45 44 44 44 44 44 43 42 41 40 39 38 37 36 35 34 33 32 30 29 27 26 26 25 24 23 22 20 18 16 13 11 10 9 8 8 7 6 5 3 2 1 -0 -2 -3 -4 -6 -7 -7 -7 -8 -8 -9 -8 -8 -7 -7 -6 -6 -6 -4 -3 -3 -3 -4 -4 -5 -4 -4 -4 -4 -3 -3 -2 -1 -1 -2 -2 -2 -2 -1 -1 -1 -2 -3 -4 -4 -5 -6 -6 -7 -7 -6 -6 -5 -5 -5 -6 -7 -8 -9 -9 -11 -12 -12 -13 -13 -14 -14 -15 -15 -15 -15 -15 -15 -15 -16 -18 -19 -19 -18 -16 -15 -13 -11 -6 -2 0 -1 -3 -6 -8 -9 -12 -15 -18 -19 -20 -19 -18 -16 -13 -11 -10 -8 -8 -7 -8 -8 -9 -9 -8 -7 -6 -4 -4 -4 -4 -4 -4 -4 -5 -5 -5 -5 -6 -7 -8 -9 -10 -10 -9 -8 -6 -4 -3 -3 -4 -5 -6 -6 -6 -6 -5 -4 -4 -5 -7 -7 -7 -6 -5 -4 -5 -6 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -6 -6 -5 -5 -5 -5 -5 -5 -5 -5 -5 -5 -6 -6 -6 -6 -6 -5 -4 -3 -3 -2 -2 -2 -2 -2 -2 -1 0 0 0 -0 -0 -1 -1 -1 -1 -1 -2 -2 -2 -1 -0 0 0 0 1 2 4 6 7 9 11 12 13 14 15 15 15 16 17 18 19 20 20 20 19 18 16 13 11 10 10 10 10 10 10 10 11 12 12 12 12 11 5 6 6 6 6 6 6 6 6 5 5 4 2 0 -2 -3 -5 -5 -5 -6 -7 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -7 -6 -7 -9 -11 -13 -13 -13 -12 -12 -12 -11 -11 -10 -9 -8 -7 -8 -9 -10 -10 -8 -5 -2 0 -1 -5 -10 -13 -14 -13 -13 -12 -12 -12 -13 -14 -15 -16 -16 -14 -10 -1 10 19 24 26 25 23 22 22 24 28 33 37 38 35 30 25 22 23 27 27 29 32 35 38 38 40 43 45 46 45 47 48 50 50 50 50 54 57 58 57 56 54 53 52 52 51 50 49 48 47 46 47 47 47 46 45 44 42 41 41 40 39 38 37 36 35 33 32 30 29 28 27 26 25 24 22 21 19 17 14 13 12 11 10 9 8 6 5 3 2 1 0 -1 -3 -5 -6 -6 -7 -7 -8 -8 -8 -7 -7 -6 -6 -6 -6 -5 -4 -4 -4 -4 -5 -5 -5 -5 -4 -4 -4 -3 -2 -2 -2 -2 -3 -3 -2 -2 -1 -2 -3 -4 -4 -5 -6 -6 -6 -6 -6 -6 -6 -5 -5 -6 -7 -8 -8 -9 -10 -12 -12 -13 -13 -14 -14 -15 -16 -17 -17 -16 -16 -16 -17 -18 -19 -20 -19 -18 -16 -16 -14 -12 -7 -2 0 -0 -2 -5 -6 -8 -10 -13 -16 -18 -19 -19 -18 -16 -14 -12 -10 -8 -7 -6 -7 -7 -8 -9 -8 -8 -6 -5 -4 -4 -4 -5 -5 -5 -5 -5 -5 -6 -6 -6 -7 -8 -10 -10 -10 -9 -8 -6 -5 -4 -4 -4 -5 -6 -6 -6 -5 -4 -4 -5 -7 -7 -8 -7 -6 -5 -5 -6 -7 -8 -8 -8 -7 -7 -7 -8 -8 -8 -8 -8 -7 -7 -7 -6 -6 -7 -7 -7 -7 -7 -7 -7 -7 -7 -7 -6 -6 -5 -4 -3 -3 -3 -3 -3 -2 -2 -1 -0 -0 -0 -1 -2 -2 -2 -2 -2 -2 -3 -2 -2 -1 -1 -1 -0 -0 1 2 4 5 7 9 10 12 13 14 14 14 15 15 16 17 17 18 19 19 19 17 15 12 11 10 10 10 10 10 10 10 10 11 11 11 11 1 0 0 -1 -1 -1 -0 1 2 3 4 5 5 5 4 3 2 0 -1 -3 -4 -6 -8 -9 -9 -9 -9 -9 -8 -8 -8 -9 -9 -8 -8 -9 -11 -14 -15 -15 -15 -14 -13 -12 -11 -10 -9 -8 -8 -8 -9 -11 -11 -11 -10 -7 -5 -3 -4 -6 -10 -12 -14 -14 -15 -15 -15 -15 -15 -16 -17 -18 -17 -14 -7 2 10 16 23 26 27 26 25 25 27 30 32 32 30 26 24 25 30 34 33 31 31 33 36 38 40 43 46 47 47 47 48 49 49 49 49 52 56 58 59 58 56 55 54 53 53 52 51 50 50 49 50 50 50 49 48 47 45 44 44 43 42 41 40 39 38 36 34 33 32 31 30 28 27 26 25 23 22 20 18 16 15 14 13 11 10 8 6 5 4 3 2 0 -2 -4 -5 -6 -6 -6 -7 -7 -7 -7 -6 -6 -6 -6 -6 -5 -5 -4 -4 -5 -5 -5 -5 -5 -4 -4 -4 -3 -3 -3 -3 -3 -3 -3 -3 -2 -2 -3 -4 -4 -5 -5 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -7 -8 -9 -10 -11 -12 -13 -13 -14 -14 -15 -16 -18 -18 -17 -17 -16 -17 -18 -19 -20 -19 -18 -17 -17 -16 -15 -12 -7 -2 1 1 -1 -4 -5 -7 -9 -11 -14 -16 -17 -18 -18 -17 -15 -13 -11 -9 -7 -5 -5 -6 -7 -8 -8 -8 -7 -5 -4 -4 -5 -5 -6 -6 -6 -6 -6 -6 -6 -6 -7 -7 -9 -10 -10 -10 -10 -8 -6 -5 -5 -4 -5 -5 -6 -6 -6 -5 -5 -6 -7 -7 -8 -7 -6 -6 -6 -6 -8 -8 -9 -8 -8 -7 -7 -8 -8 -9 -10 -10 -9 -9 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -7 -6 -5 -4 -3 -3 -3 -3 -3 -3 -2 -1 -1 -1 -1 -2 -3 -3 -3 -4 -4 -4 -3 -3 -3 -2 -2 -1 -1 -0 1 2 3 5 7 9 10 12 13 13 14 14 15 15 15 16 16 17 18 19 18 16 14 11 10 10 10 10 10 10 10 9 9 9 10 10 -6 -7 -7 -8 -9 -9 -9 -7 -6 -3 -1 2 4 6 8 9 8 7 6 4 3 0 -2 -4 -6 -6 -6 -5 -5 -4 -4 -5 -5 -6 -7 -7 -9 -12 -15 -17 -18 -17 -16 -14 -13 -12 -10 -9 -8 -8 -8 -9 -10 -10 -9 -7 -6 -5 -4 -5 -7 -9 -11 -13 -15 -17 -18 -18 -18 -17 -17 -17 -17 -14 -10 -4 2 8 19 27 31 30 28 27 27 29 30 31 30 28 27 28 32 35 33 30 28 30 34 38 42 46 48 49 47 46 45 46 49 51 53 53 54 56 59 58 57 55 55 54 54 53 53 52 52 52 53 53 53 53 52 50 48 47 46 46 45 45 44 42 41 39 37 36 35 34 32 31 29 28 27 26 25 24 22 20 18 17 15 13 12 10 8 7 6 4 3 1 -1 -3 -4 -5 -6 -6 -6 -7 -6 -6 -6 -6 -6 -6 -6 -6 -5 -5 -5 -5 -6 -6 -6 -5 -4 -4 -4 -4 -4 -4 -4 -4 -4 -3 -3 -3 -3 -4 -4 -5 -5 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -7 -8 -8 -9 -10 -12 -12 -13 -13 -14 -15 -16 -18 -18 -18 -17 -17 -17 -19 -20 -20 -19 -18 -17 -17 -17 -17 -16 -13 -8 -3 1 2 -0 -3 -4 -6 -7 -9 -11 -13 -15 -16 -16 -16 -14 -13 -11 -9 -7 -5 -4 -4 -5 -6 -7 -7 -6 -5 -5 -4 -4 -5 -6 -6 -6 -6 -6 -6 -6 -6 -6 -7 -8 -9 -10 -11 -11 -10 -9 -7 -6 -5 -5 -5 -5 -5 -5 -5 -6 -6 -6 -7 -8 -7 -7 -6 -6 -7 -8 -9 -9 -9 -9 -8 -7 -7 -8 -9 -10 -11 -11 -10 -10 -9 -9 -9 -9 -9 -10 -10 -10 -10 -9 -9 -9 -9 -9 -8 -7 -5 -4 -3 -3 -3 -4 -4 -4 -2 -1 -1 -1 -2 -3 -4 -5 -5 -5 -5 -5 -5 -4 -4 -3 -3 -2 -2 -1 -0 1 4 6 8 9 11 12 13 13 14 15 15 15 15 16 16 17 18 18 17 15 12 10 10 10 10 10 10 10 9 8 8 8 8 -12 -13 -14 -15 -15 -15 -15 -13 -11 -9 -7 -6 -3 -0 3 6 8 8 8 8 7 6 5 2 0 -1 -2 -2 -1 -0 -0 -1 -1 -2 -3 -3 -4 -6 -10 -14 -18 -19 -19 -18 -17 -15 -13 -11 -10 -8 -8 -8 -8 -8 -7 -4 -2 -1 -0 -1 -3 -5 -7 -10 -13 -17 -20 -22 -21 -20 -18 -16 -14 -12 -9 -6 -1 4 15 26 33 34 32 30 29 29 30 31 31 31 31 30 31 31 29 26 26 29 35 41 45 48 49 47 45 45 43 45 49 53 55 54 54 55 57 58 57 56 55 54 54 54 54 54 54 55 56 56 56 56 55 53 51 50 49 48 48 48 47 45 43 41 40 38 37 36 35 34 32 31 29 28 27 26 25 24 22 20 18 15 13 12 10 9 8 6 4 2 -0 -2 -3 -4 -5 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -5 -5 -5 -6 -6 -6 -6 -5 -5 -4 -4 -5 -5 -5 -5 -5 -4 -4 -4 -4 -4 -5 -5 -6 -6 -7 -7 -7 -7 -6 -6 -6 -7 -7 -7 -8 -8 -9 -10 -11 -12 -13 -13 -14 -14 -16 -17 -18 -18 -18 -17 -18 -19 -20 -21 -20 -19 -18 -18 -18 -18 -18 -17 -14 -9 -3 1 3 1 -2 -4 -5 -6 -7 -9 -10 -12 -13 -14 -14 -13 -12 -11 -9 -7 -5 -3 -3 -4 -5 -6 -6 -6 -5 -4 -3 -3 -4 -5 -6 -6 -6 -6 -6 -6 -6 -6 -6 -7 -8 -9 -11 -12 -12 -11 -9 -7 -6 -5 -5 -4 -4 -5 -5 -5 -5 -5 -6 -7 -7 -7 -7 -6 -7 -7 -8 -9 -9 -9 -8 -7 -7 -7 -8 -10 -11 -11 -11 -11 -10 -10 -10 -10 -10 -11 -11 -11 -11 -10 -10 -11 -11 -10 -9 -8 -7 -5 -4 -4 -4 -4 -4 -4 -4 -3 -1 -1 -1 -3 -4 -6 -6 -6 -6 -6 -6 -6 -5 -5 -4 -4 -3 -3 -2 -0 2 4 7 8 10 11 12 13 14 14 15 15 15 15 16 17 18 18 18 16 13 11 10 10 10 10 10 9 9 8 8 7 7 -15 -15 -16 -16 -16 -15 -14 -13 -11 -10 -10 -11 -10 -9 -8 -6 -4 -2 0 1 3 3 4 3 2 -0 -2 -3 -2 -2 -1 -1 -1 -1 -2 -2 -2 -2 -4 -7 -12 -16 -19 -20 -20 -19 -18 -15 -13 -11 -10 -9 -8 -8 -6 -3 3 6 6 5 3 0 -3 -6 -10 -14 -20 -24 -25 -24 -22 -17 -12 -9 -6 -3 1 5 14 24 32 36 35 33 31 30 30 31 31 32 32 31 30 28 26 25 28 33 39 44 48 50 49 46 45 45 42 44 48 52 56 56 56 55 54 54 55 55 55 54 55 55 55 56 56 57 58 59 59 59 58 56 54 52 51 50 50 50 49 47 46 44 42 41 39 38 37 36 35 33 32 30 29 29 28 27 25 23 20 17 15 13 12 12 11 8 6 3 1 -1 -1 -3 -4 -5 -6 -6 -6 -6 -5 -5 -5 -5 -5 -5 -5 -5 -6 -7 -7 -7 -6 -6 -5 -5 -5 -5 -6 -6 -6 -5 -5 -4 -4 -4 -5 -5 -6 -7 -7 -7 -7 -7 -6 -6 -7 -7 -7 -8 -8 -8 -9 -10 -11 -12 -12 -13 -13 -14 -15 -17 -18 -18 -17 -17 -17 -18 -20 -21 -20 -19 -19 -19 -19 -19 -19 -18 -17 -14 -9 -4 1 3 2 -1 -3 -4 -4 -5 -6 -8 -9 -10 -11 -12 -11 -10 -10 -8 -7 -5 -3 -2 -2 -3 -4 -4 -4 -4 -3 -3 -2 -2 -3 -4 -6 -6 -6 -6 -6 -6 -6 -6 -6 -7 -9 -10 -12 -12 -12 -11 -9 -8 -6 -5 -5 -4 -4 -4 -4 -4 -4 -4 -5 -6 -7 -7 -7 -6 -7 -7 -8 -9 -9 -9 -8 -7 -7 -7 -8 -10 -11 -11 -12 -11 -11 -11 -11 -11 -12 -12 -12 -12 -11 -11 -12 -12 -11 -11 -9 -8 -7 -6 -4 -4 -4 -4 -5 -5 -4 -3 -1 -1 -2 -4 -6 -7 -7 -7 -8 -8 -8 -7 -7 -6 -5 -5 -5 -4 -2 0 3 5 7 9 10 11 12 13 14 14 15 15 16 16 17 17 18 18 17 15 12 10 10 10 10 10 9 9 8 7 7 7 -9 -9 -8 -8 -7 -6 -5 -5 -5 -6 -8 -10 -11 -12 -12 -12 -12 -10 -8 -6 -4 -3 -1 -0 -0 -1 -2 -4 -5 -5 -4 -3 -2 -2 -2 -3 -3 -2 -2 -3 -6 -10 -14 -18 -20 -21 -21 -19 -16 -14 -12 -11 -10 -9 -8 -5 3 8 10 9 7 4 2 -1 -5 -10 -18 -24 -27 -27 -22 -15 -9 -6 -2 3 7 11 16 22 27 31 32 31 30 30 30 31 31 31 31 31 30 28 27 29 35 42 46 47 48 48 47 46 47 46 44 44 48 53 58 60 58 55 52 50 51 53 54 54 55 55 56 57 57 59 60 61 62 62 61 59 57 55 53 52 52 51 51 49 48 46 45 43 41 40 39 38 37 35 34 33 31 31 30 29 28 25 23 19 17 15 14 13 12 10 7 4 2 1 0 -1 -3 -4 -5 -6 -6 -6 -5 -5 -5 -5 -5 -5 -5 -6 -7 -8 -8 -8 -7 -6 -6 -6 -6 -6 -6 -6 -6 -6 -5 -5 -5 -5 -5 -6 -7 -8 -8 -8 -7 -6 -6 -7 -8 -8 -8 -8 -9 -9 -10 -11 -12 -12 -12 -13 -13 -14 -16 -17 -18 -17 -16 -16 -17 -19 -20 -20 -20 -19 -19 -19 -19 -19 -18 -18 -16 -14 -9 -4 1 4 3 0 -2 -3 -3 -4 -4 -5 -7 -8 -9 -9 -9 -9 -8 -7 -6 -4 -2 -0 0 -1 -2 -2 -2 -2 -2 -2 -1 -1 -2 -3 -4 -5 -5 -5 -5 -5 -5 -5 -6 -7 -8 -9 -11 -12 -13 -12 -11 -9 -8 -6 -6 -5 -4 -3 -2 -2 -1 -2 -3 -5 -6 -7 -7 -6 -6 -6 -7 -8 -9 -9 -8 -7 -6 -6 -7 -8 -10 -11 -11 -12 -12 -12 -12 -12 -13 -13 -13 -12 -12 -12 -13 -13 -12 -12 -11 -9 -8 -7 -6 -5 -4 -4 -5 -5 -5 -4 -3 -1 -1 -3 -5 -7 -8 -8 -9 -9 -10 -10 -9 -8 -7 -6 -6 -5 -4 -2 1 3 6 8 9 10 11 12 13 14 14 15 16 16 17 17 18 18 17 16 14 11 10 10 10 10 9 8 8 7 7 7 2 2 2 2 3 3 3 2 1 -1 -2 -4 -5 -7 -8 -9 -9 -9 -8 -6 -5 -5 -4 -3 -3 -3 -3 -4 -6 -6 -6 -4 -3 -2 -2 -3 -4 -4 -3 -3 -3 -5 -8 -12 -17 -20 -21 -21 -19 -17 -15 -13 -12 -11 -10 -8 -3 4 7 7 5 4 3 1 -2 -6 -14 -21 -23 -19 -11 -2 -1 -0 4 10 14 16 18 19 20 20 21 22 23 25 28 30 30 29 29 29 30 30 32 38 46 51 51 47 44 45 46 47 48 48 47 47 49 53 58 61 61 58 53 49 48 50 52 54 55 55 56 58 59 60 62 63 64 64 63 62 59 57 55 54 53 52 52 51 50 48 47 45 43 41 40 39 38 37 36 35 34 33 32 31 30 28 25 22 19 17 16 15 13 11 9 6 4 3 2 1 -1 -3 -4 -5 -6 -6 -5 -5 -5 -4 -4 -5 -6 -7 -8 -8 -8 -8 -8 -7 -7 -7 -7 -7 -7 -7 -7 -6 -6 -5 -5 -5 -6 -7 -8 -8 -8 -7 -7 -7 -7 -8 -9 -9 -9 -9 -9 -10 -11 -12 -12 -12 -13 -13 -14 -15 -17 -18 -18 -17 -16 -16 -17 -19 -20 -19 -19 -18 -19 -19 -19 -19 -18 -17 -16 -13 -9 -3 2 5 4 2 -1 -2 -2 -2 -3 -3 -4 -5 -6 -7 -7 -7 -6 -6 -5 -3 -1 0 2 2 1 -0 -0 -0 -0 -0 0 0 -0 -2 -3 -4 -5 -5 -5 -5 -5 -5 -5 -6 -7 -9 -10 -12 -13 -13 -12 -11 -9 -8 -7 -6 -6 -4 -2 -0 1 1 -1 -3 -5 -6 -7 -6 -5 -5 -5 -6 -7 -8 -8 -8 -7 -6 -6 -7 -8 -10 -11 -12 -12 -12 -13 -13 -13 -13 -13 -13 -13 -13 -13 -13 -13 -12 -11 -10 -9 -8 -7 -6 -4 -4 -4 -5 -5 -5 -4 -3 -2 -2 -4 -6 -8 -9 -10 -10 -11 -11 -11 -11 -10 -8 -7 -6 -5 -4 -2 1 4 6 8 9 10 11 12 13 14 15 16 16 17 17 17 18 17 17 15 13 11 10 10 9 9 8 8 7 7 7 4 3 2 2 2 2 1 1 1 1 1 1 1 0 -0 -1 -2 -3 -3 -4 -4 -4 -4 -4 -4 -4 -5 -5 -6 -6 -6 -5 -3 -2 -1 -1 -2 -4 -4 -4 -4 -4 -5 -7 -10 -15 -19 -21 -21 -19 -17 -15 -14 -14 -13 -12 -9 -4 0 3 2 -0 -2 -1 -2 -5 -10 -12 1 14 18 18 9 10 14 18 19 20 18 14 8 5 8 10 11 13 19 25 28 27 27 27 29 31 41 51 58 59 53 46 43 45 47 46 46 47 47 46 47 49 52 56 60 63 61 57 50 47 48 52 55 56 57 58 60 62 64 66 67 67 66 64 62 60 58 56 54 53 53 52 51 50 48 46 44 43 42 41 40 39 38 36 35 35 34 33 32 30 27 24 22 19 17 16 15 13 10 8 5 4 3 2 1 -1 -2 -4 -5 -5 -5 -5 -4 -4 -4 -5 -5 -7 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -7 -6 -6 -5 -5 -6 -7 -8 -8 -8 -8 -7 -7 -8 -9 -9 -9 -9 -9 -9 -10 -11 -11 -12 -12 -13 -13 -14 -15 -17 -18 -19 -18 -17 -16 -17 -18 -19 -19 -19 -18 -18 -18 -19 -19 -18 -18 -17 -16 -13 -9 -3 3 7 6 3 1 -1 -1 -1 -1 -2 -2 -3 -4 -5 -5 -5 -5 -4 -4 -2 -1 1 3 3 3 2 1 1 1 1 1 1 1 -0 -2 -3 -4 -4 -5 -4 -4 -4 -5 -5 -6 -8 -9 -11 -12 -13 -13 -12 -11 -10 -9 -8 -7 -6 -4 -1 2 3 1 -1 -4 -5 -6 -6 -5 -4 -4 -5 -6 -7 -8 -8 -7 -5 -5 -5 -7 -8 -10 -11 -12 -13 -13 -13 -13 -13 -13 -13 -13 -13 -13 -13 -13 -12 -12 -11 -10 -9 -8 -7 -6 -4 -4 -4 -5 -5 -6 -5 -3 -2 -3 -5 -7 -9 -10 -11 -12 -12 -13 -13 -12 -10 -9 -8 -7 -6 -4 -2 1 4 6 8 9 10 11 12 13 14 15 16 17 17 17 17 17 17 16 15 12 10 10 9 9 8 7 7 7 7 -3 -3 -3 -3 -3 -3 -3 -2 -1 -0 1 2 3 3 3 2 0 -1 -3 -4 -5 -6 -6 -7 -7 -7 -7 -8 -7 -7 -7 -6 -4 -2 -1 1 0 -1 -2 -4 -4 -5 -6 -7 -8 -10 -14 -17 -20 -21 -20 -18 -16 -16 -16 -15 -14 -12 -8 -3 1 2 -2 -6 -8 -9 -11 -6 10 22 25 24 15 18 22 23 23 21 16 8 1 -1 2 6 6 6 8 15 23 27 29 29 31 35 46 57 63 62 55 47 43 42 41 37 36 40 43 44 48 53 55 54 54 56 57 53 48 45 45 49 54 56 57 59 62 64 66 68 69 69 68 66 65 63 60 58 56 54 54 53 52 51 50 48 46 44 43 42 41 40 39 38 37 36 35 34 33 32 29 27 24 22 20 18 17 14 12 9 7 5 4 3 2 1 -1 -3 -4 -4 -4 -4 -3 -3 -3 -4 -5 -6 -7 -8 -8 -8 -8 -7 -8 -8 -8 -8 -9 -8 -8 -7 -6 -6 -6 -7 -7 -8 -8 -8 -8 -8 -8 -9 -9 -9 -9 -9 -10 -10 -11 -11 -12 -12 -13 -13 -14 -15 -17 -18 -19 -20 -19 -18 -18 -18 -18 -19 -19 -19 -18 -18 -18 -18 -18 -18 -18 -17 -16 -13 -9 -3 3 8 7 5 2 1 1 1 1 0 -1 -1 -2 -3 -3 -3 -3 -3 -2 -1 -0 1 3 4 4 4 3 3 3 3 2 2 1 1 -1 -2 -3 -4 -4 -4 -4 -4 -4 -5 -6 -7 -8 -9 -11 -12 -13 -13 -13 -11 -10 -9 -9 -8 -6 -3 1 3 3 1 -2 -4 -6 -6 -6 -5 -4 -4 -5 -6 -7 -8 -7 -5 -4 -4 -5 -7 -9 -11 -12 -12 -13 -13 -13 -12 -12 -12 -12 -12 -13 -13 -13 -13 -12 -11 -10 -10 -9 -9 -7 -6 -4 -4 -4 -5 -5 -5 -5 -4 -3 -4 -6 -9 -11 -12 -12 -13 -14 -14 -14 -13 -11 -9 -8 -7 -6 -4 -2 1 4 6 8 10 11 11 12 13 14 15 16 17 17 17 17 17 17 16 14 11 10 9 9 8 8 7 7 7 -6 -6 -5 -5 -5 -4 -3 -2 -1 -0 0 1 1 0 -1 -2 -4 -6 -8 -10 -11 -11 -11 -10 -10 -11 -12 -12 -12 -11 -10 -9 -7 -5 -3 -0 1 1 -0 -1 -2 -2 -5 -7 -9 -9 -10 -13 -16 -19 -21 -20 -19 -18 -17 -16 -17 -16 -15 -13 -9 -4 -1 -3 -7 -10 -11 -6 4 13 18 19 17 21 25 26 24 19 13 5 -1 -3 -2 1 2 2 2 4 15 24 30 34 36 41 50 59 63 61 54 47 41 37 32 28 28 34 40 45 49 52 53 51 50 50 52 52 49 47 46 46 46 49 55 60 63 65 67 69 70 70 69 68 67 65 62 59 57 55 54 54 53 52 51 49 47 45 44 43 42 41 40 39 38 37 36 36 35 33 31 29 27 25 23 21 19 16 14 11 8 6 4 3 2 2 0 -1 -3 -4 -4 -3 -3 -3 -3 -3 -4 -6 -7 -7 -7 -7 -7 -6 -7 -7 -8 -8 -8 -8 -8 -7 -7 -7 -7 -7 -7 -7 -7 -7 -8 -8 -9 -9 -9 -9 -9 -10 -10 -11 -11 -12 -12 -13 -13 -14 -15 -17 -19 -20 -21 -21 -21 -20 -19 -19 -20 -20 -20 -20 -19 -19 -18 -18 -17 -18 -18 -17 -16 -13 -9 -3 3 8 9 7 4 2 2 2 2 1 1 -0 -1 -1 -2 -2 -2 -1 -1 -0 0 2 3 5 6 5 5 4 4 4 3 3 2 1 0 -1 -2 -3 -4 -4 -4 -3 -4 -4 -5 -6 -7 -8 -10 -11 -12 -13 -13 -13 -11 -10 -9 -9 -8 -5 -2 1 2 2 -1 -3 -5 -6 -6 -6 -5 -4 -4 -5 -6 -7 -7 -5 -3 -2 -3 -5 -7 -9 -11 -12 -12 -13 -12 -12 -11 -11 -11 -11 -12 -12 -13 -13 -12 -11 -10 -10 -10 -9 -9 -7 -5 -4 -4 -4 -5 -5 -6 -5 -5 -4 -6 -8 -10 -12 -13 -13 -14 -14 -15 -14 -13 -11 -9 -8 -7 -6 -4 -2 1 4 7 9 10 11 11 12 13 14 15 16 16 17 16 17 16 16 15 12 10 9 9 8 8 7 7 7 -3 -3 -2 -2 -1 -1 0 1 1 0 -1 -2 -4 -7 -9 -10 -11 -11 -11 -12 -13 -13 -12 -11 -11 -12 -15 -17 -18 -18 -16 -14 -11 -8 -6 -3 -1 0 -0 -1 -1 -0 0 -2 -5 -8 -9 -10 -12 -15 -17 -19 -19 -19 -18 -16 -16 -16 -17 -17 -17 -14 -9 -5 -4 -7 -10 -4 4 10 13 15 18 23 25 25 22 17 11 5 2 -1 -4 -6 -5 -4 -3 -2 1 15 27 35 42 47 53 58 60 58 54 48 40 33 27 24 25 33 40 46 49 51 52 50 49 49 49 50 50 49 48 48 46 47 51 57 63 67 69 70 71 72 71 70 68 66 63 61 58 55 54 54 53 53 52 50 48 46 45 44 43 42 41 40 39 38 37 37 36 35 33 31 29 27 25 23 21 19 16 13 10 7 5 4 3 2 1 -0 -2 -3 -3 -3 -3 -2 -2 -3 -4 -5 -6 -7 -6 -6 -6 -6 -6 -6 -6 -7 -8 -8 -8 -8 -8 -7 -7 -6 -6 -6 -7 -7 -8 -8 -8 -9 -9 -9 -9 -10 -10 -11 -11 -12 -13 -13 -14 -15 -17 -19 -20 -22 -23 -23 -22 -21 -21 -21 -21 -21 -21 -21 -21 -20 -19 -18 -17 -17 -17 -16 -15 -13 -9 -4 3 8 10 8 5 3 3 3 3 3 2 1 0 0 -0 -1 -1 -0 0 1 1 2 4 5 6 7 6 5 5 4 4 4 3 3 1 -0 -1 -3 -4 -4 -4 -3 -3 -3 -4 -5 -6 -7 -8 -10 -11 -13 -13 -13 -12 -11 -10 -9 -9 -8 -6 -2 1 2 1 -2 -5 -6 -7 -6 -5 -4 -4 -4 -5 -6 -6 -5 -3 -2 -1 -2 -4 -7 -9 -11 -12 -12 -12 -11 -11 -10 -10 -11 -11 -12 -13 -13 -13 -12 -11 -10 -10 -10 -9 -8 -7 -5 -5 -4 -5 -5 -6 -6 -7 -6 -6 -7 -10 -12 -13 -14 -14 -15 -15 -15 -14 -12 -10 -8 -7 -6 -5 -4 -2 1 5 7 9 11 11 12 12 13 14 14 15 16 16 16 16 15 15 13 10 8 8 9 8 8 8 8 2 2 2 2 2 2 2 1 -0 -3 -5 -8 -11 -13 -14 -13 -11 -8 -7 -7 -8 -8 -8 -8 -8 -9 -11 -15 -18 -18 -18 -17 -15 -12 -9 -6 -3 -1 -1 -2 -2 -1 0 2 2 -1 -4 -7 -9 -11 -13 -15 -17 -18 -17 -16 -15 -15 -16 -17 -19 -20 -18 -13 -7 -5 -7 -3 5 12 15 18 22 24 25 25 22 17 11 8 6 4 0 -11 -12 -11 -9 -8 -7 0 15 29 40 47 52 56 58 59 58 53 42 32 25 23 27 36 42 45 47 49 50 49 48 49 49 48 48 48 48 49 49 49 52 55 61 67 70 71 72 72 72 71 69 67 65 62 59 56 54 54 53 53 52 50 48 47 45 45 44 43 42 41 39 38 38 37 37 36 35 33 31 29 27 25 23 21 18 15 12 9 6 5 4 3 2 1 -0 -1 -2 -3 -3 -2 -2 -3 -4 -5 -6 -6 -6 -5 -5 -5 -5 -5 -5 -6 -7 -7 -8 -7 -7 -7 -7 -6 -6 -7 -7 -7 -8 -8 -8 -8 -9 -9 -9 -10 -10 -11 -12 -13 -13 -14 -15 -16 -18 -20 -22 -23 -23 -23 -22 -22 -22 -21 -22 -22 -22 -22 -22 -21 -20 -18 -17 -16 -16 -15 -14 -12 -9 -5 2 8 11 10 7 4 3 4 4 4 3 2 1 1 1 1 1 1 1 1 2 3 4 5 7 8 8 7 6 5 5 5 4 4 3 1 -0 -2 -3 -4 -4 -4 -3 -3 -3 -4 -5 -6 -7 -9 -10 -11 -12 -13 -13 -12 -11 -10 -9 -9 -8 -5 -2 1 1 -1 -4 -6 -7 -7 -6 -4 -3 -3 -3 -4 -5 -5 -4 -2 -0 0 -1 -3 -6 -8 -10 -11 -11 -11 -11 -11 -11 -11 -12 -12 -13 -13 -13 -13 -12 -11 -10 -10 -10 -9 -8 -7 -6 -5 -5 -5 -6 -7 -8 -8 -8 -8 -9 -11 -13 -13 -14 -14 -15 -14 -13 -12 -10 -8 -7 -6 -6 -5 -4 -1 2 5 8 10 11 11 12 12 12 13 14 15 15 15 14 14 14 12 10 8 7 8 9 8 8 8 2 2 1 -0 -1 -2 -4 -6 -8 -11 -13 -15 -16 -14 -12 -9 -7 -4 -2 -0 1 0 -1 -3 -3 -3 -4 -6 -11 -14 -16 -16 -16 -15 -12 -9 -6 -4 -2 -1 -3 -4 -3 0 3 4 3 1 -2 -6 -8 -11 -14 -15 -16 -16 -15 -14 -13 -14 -17 -20 -22 -19 -14 -7 -3 -3 3 12 20 25 25 25 25 25 23 19 14 11 10 9 8 -7 -13 -15 -16 -15 -13 -13 -3 12 27 38 44 49 54 58 59 56 45 34 25 22 29 38 42 44 44 45 46 47 48 49 50 48 47 46 47 48 49 51 53 55 58 62 66 70 73 73 73 72 70 68 66 63 60 57 55 53 53 53 52 51 49 47 46 45 45 44 43 42 40 39 38 37 37 36 35 34 33 31 29 27 25 23 21 18 15 11 9 7 6 5 4 3 2 1 -1 -2 -2 -2 -2 -3 -3 -4 -5 -5 -5 -5 -4 -4 -4 -4 -4 -5 -6 -6 -7 -6 -6 -6 -6 -6 -7 -7 -8 -8 -8 -8 -8 -9 -9 -9 -9 -10 -10 -11 -12 -13 -14 -15 -16 -17 -19 -21 -22 -23 -23 -23 -22 -22 -22 -22 -22 -22 -22 -23 -23 -22 -21 -19 -18 -16 -15 -14 -13 -12 -10 -6 0 7 11 11 9 6 4 4 5 4 4 3 2 2 2 2 2 1 2 2 3 3 4 5 7 8 8 8 7 6 5 5 5 5 4 2 1 -1 -2 -3 -4 -4 -4 -4 -3 -4 -4 -5 -6 -8 -9 -10 -11 -12 -12 -12 -11 -10 -9 -9 -9 -7 -4 -1 1 0 -2 -5 -7 -7 -6 -5 -3 -3 -2 -3 -4 -4 -4 -3 -1 1 2 1 -2 -4 -7 -9 -10 -10 -10 -11 -11 -11 -12 -12 -13 -14 -14 -14 -13 -12 -11 -10 -10 -10 -9 -9 -7 -6 -5 -5 -6 -7 -8 -9 -10 -9 -9 -10 -12 -13 -13 -14 -14 -14 -12 -11 -9 -8 -7 -6 -5 -5 -4 -3 -1 3 6 9 11 11 12 12 12 12 13 13 14 13 13 12 12 11 10 8 6 8 9 8 8 8 -4 -5 -7 -9 -10 -12 -13 -15 -16 -17 -17 -16 -13 -10 -6 -2 0 3 4 6 7 7 5 3 2 2 2 2 0 -5 -9 -13 -15 -15 -13 -12 -9 -7 -4 -2 -2 -4 -5 -4 -1 4 6 7 5 2 -2 -6 -9 -12 -13 -15 -15 -14 -13 -12 -13 -16 -19 -20 -18 -12 -4 -1 -0 5 15 26 26 25 25 25 24 21 16 13 11 10 10 3 -5 -12 -17 -20 -22 -20 -18 -10 6 18 27 33 40 46 49 48 41 31 23 23 33 38 41 43 44 44 45 46 48 50 51 50 48 47 46 46 47 50 54 57 58 59 63 67 69 71 73 72 71 69 67 64 61 58 55 54 53 52 52 51 49 48 47 46 45 45 44 42 41 40 39 38 37 37 36 35 34 32 31 29 27 25 23 20 17 14 12 10 8 8 7 6 5 3 2 0 -1 -1 -1 -2 -2 -3 -3 -4 -4 -4 -3 -3 -3 -3 -3 -4 -5 -5 -5 -5 -5 -5 -5 -6 -7 -7 -8 -8 -9 -9 -9 -9 -9 -9 -9 -9 -10 -11 -12 -13 -13 -14 -16 -17 -19 -21 -22 -23 -23 -22 -22 -22 -22 -22 -22 -22 -22 -23 -23 -22 -21 -20 -18 -16 -15 -13 -12 -11 -9 -7 -2 5 10 12 10 7 5 5 5 5 4 4 3 3 3 3 2 2 2 2 3 3 4 5 7 8 9 9 8 6 6 5 5 5 4 3 2 1 -1 -2 -3 -4 -4 -4 -4 -4 -4 -5 -6 -7 -8 -9 -10 -11 -11 -11 -11 -10 -10 -9 -9 -9 -7 -4 -1 0 -1 -4 -6 -7 -7 -5 -4 -2 -2 -2 -2 -3 -4 -4 -2 0 3 3 3 1 -2 -5 -7 -8 -9 -10 -10 -11 -12 -13 -14 -14 -15 -14 -14 -13 -12 -11 -11 -10 -10 -10 -9 -8 -7 -6 -6 -7 -8 -10 -10 -10 -9 -9 -11 -12 -13 -13 -13 -12 -11 -10 -8 -7 -6 -5 -5 -5 -4 -4 -3 -0 3 7 9 11 12 12 12 12 12 13 13 12 11 10 10 9 9 7 6 7 8 9 8 8 -11 -12 -13 -13 -14 -14 -14 -14 -13 -12 -11 -8 -5 -2 -0 1 2 2 2 2 3 4 4 3 1 1 1 3 4 3 -1 -6 -10 -12 -12 -12 -11 -9 -7 -4 -2 -3 -5 -6 -6 -2 3 7 9 9 6 1 -3 -6 -9 -12 -14 -14 -13 -12 -11 -12 -13 -15 -15 -13 -8 -1 1 -1 3 20 24 24 24 24 23 21 17 14 12 11 10 8 2 -4 -11 -18 -25 -27 -23 -18 -14 -7 5 11 16 21 24 24 21 16 17 28 37 38 40 43 45 46 45 46 49 52 53 53 50 47 46 45 46 50 54 58 62 65 66 64 65 67 69 71 71 71 68 65 62 59 56 54 53 52 52 51 50 49 48 47 46 46 45 43 42 40 39 38 37 37 36 35 34 33 32 30 28 26 24 22 19 17 14 12 11 10 10 9 8 7 5 3 2 1 0 -0 -1 -1 -2 -2 -2 -2 -2 -1 -1 -2 -2 -3 -4 -4 -4 -3 -3 -4 -4 -5 -6 -7 -8 -8 -9 -9 -9 -9 -9 -9 -9 -9 -10 -10 -11 -12 -12 -14 -15 -17 -18 -20 -21 -21 -22 -21 -21 -21 -21 -21 -21 -22 -22 -22 -22 -21 -21 -20 -18 -17 -15 -13 -12 -11 -9 -7 -3 3 9 12 12 9 6 6 6 6 5 4 4 4 4 4 3 3 3 3 3 3 4 5 6 8 9 9 8 7 6 5 5 5 4 4 3 2 0 -1 -2 -3 -4 -4 -4 -4 -4 -5 -6 -7 -8 -9 -10 -10 -10 -11 -10 -10 -10 -10 -10 -9 -8 -6 -2 -0 -0 -2 -5 -7 -7 -6 -4 -3 -2 -1 -1 -2 -3 -4 -3 -1 2 5 6 6 3 0 -3 -5 -7 -8 -9 -10 -11 -12 -13 -14 -15 -15 -15 -14 -13 -12 -11 -11 -11 -11 -10 -9 -8 -7 -7 -7 -8 -10 -11 -11 -9 -9 -9 -11 -11 -12 -12 -11 -10 -8 -6 -5 -5 -4 -4 -4 -4 -4 -3 -2 0 4 7 10 11 12 12 12 12 12 12 11 10 9 8 8 8 7 5 6 8 9 8 8 -10 -10 -9 -8 -7 -6 -4 -3 -3 -2 -1 -1 -1 -1 -1 -2 -4 -5 -6 -6 -4 -3 -1 0 -1 -3 -4 -2 1 3 4 2 -2 -6 -9 -10 -11 -11 -9 -7 -5 -3 -3 -4 -6 -6 -4 0 5 9 10 8 4 0 -2 -4 -7 -11 -13 -14 -13 -11 -10 -10 -10 -10 -8 -4 1 3 2 3 20 24 24 22 20 19 18 15 13 12 12 10 7 1 -6 -14 -22 -26 -25 -20 -15 -15 -15 -10 -9 -12 -14 -6 -0 -1 4 22 32 38 43 45 46 48 50 50 51 52 54 54 52 49 47 45 46 49 54 58 62 66 69 70 69 67 64 65 70 71 70 67 64 60 57 55 53 52 52 51 51 50 49 48 47 47 46 44 43 41 40 39 38 37 37 36 35 34 33 31 30 28 26 23 21 18 16 14 13 12 12 11 11 10 8 7 5 4 3 2 1 1 1 0 0 0 0 1 0 -0 -1 -2 -2 -2 -2 -1 -1 -2 -3 -4 -5 -6 -7 -8 -8 -9 -9 -9 -9 -9 -9 -9 -9 -9 -10 -10 -11 -13 -14 -16 -17 -18 -19 -20 -20 -20 -20 -20 -20 -20 -21 -21 -21 -21 -21 -20 -19 -19 -18 -17 -16 -14 -13 -11 -10 -8 -4 2 8 12 13 10 8 7 6 7 6 5 5 5 5 4 4 4 3 3 3 3 4 4 6 7 9 10 9 8 6 5 4 4 4 4 3 3 2 0 -1 -2 -3 -3 -4 -4 -4 -5 -6 -7 -8 -9 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -9 -7 -4 -1 -0 -1 -3 -6 -7 -7 -5 -4 -2 -1 -1 -2 -3 -4 -4 -3 1 5 8 10 9 6 2 -1 -3 -5 -6 -7 -9 -11 -13 -14 -15 -16 -16 -15 -14 -13 -12 -12 -12 -12 -11 -11 -9 -8 -7 -8 -8 -9 -11 -11 -9 -8 -8 -9 -10 -10 -10 -10 -9 -7 -5 -4 -3 -3 -3 -3 -3 -3 -3 -3 -2 1 4 8 10 11 12 12 12 12 11 11 10 8 7 7 7 7 5 5 7 9 9 8 -5 -4 -3 -1 1 2 2 3 2 2 0 -1 -3 -5 -8 -10 -12 -13 -13 -12 -10 -7 -4 -1 -0 -2 -5 -6 -5 -2 2 4 4 1 -3 -7 -9 -10 -10 -10 -8 -6 -4 -3 -4 -6 -7 -6 -3 2 7 8 7 5 4 4 3 -1 -6 -10 -14 -14 -14 -13 -12 -9 -7 -5 -1 3 5 3 4 16 22 23 20 18 17 15 14 13 13 12 9 3 -4 -11 -17 -20 -21 -18 -14 -11 -12 -14 -12 -10 -12 -12 -6 -2 -2 -2 5 25 39 46 48 51 53 53 52 53 54 54 53 53 50 45 41 41 45 51 58 66 70 72 73 74 73 70 69 71 71 69 65 62 59 56 55 53 53 52 51 51 50 49 48 48 47 46 44 43 41 40 39 38 37 36 35 34 33 32 31 29 27 25 22 19 17 16 15 14 13 13 12 12 11 10 8 7 5 4 3 3 2 2 2 2 2 2 2 1 0 -0 -1 -1 -0 0 0 0 -1 -2 -3 -5 -6 -7 -7 -8 -8 -8 -8 -8 -8 -8 -8 -8 -8 -9 -11 -12 -14 -15 -16 -17 -18 -18 -18 -18 -18 -18 -19 -19 -20 -20 -20 -20 -19 -18 -17 -17 -17 -16 -16 -15 -13 -12 -10 -8 -5 1 7 12 14 13 10 8 7 7 7 6 6 5 5 5 5 5 4 4 3 3 3 3 4 6 8 9 10 9 7 6 4 4 4 4 4 3 3 2 1 -0 -1 -2 -3 -3 -4 -5 -6 -7 -8 -9 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 -9 -6 -3 -0 -0 -2 -5 -7 -7 -6 -5 -3 -2 -1 -1 -2 -4 -5 -4 -1 4 9 13 13 11 8 4 1 -1 -2 -4 -6 -8 -11 -13 -14 -15 -16 -16 -15 -14 -13 -12 -12 -12 -12 -12 -11 -10 -9 -9 -9 -10 -10 -10 -9 -7 -6 -6 -8 -9 -9 -8 -8 -6 -4 -2 -1 -1 -1 -2 -2 -3 -3 -3 -3 -1 2 5 8 10 11 11 11 11 11 11 9 8 7 6 6 6 5 4 6 9 9 8 -2 -1 -0 1 1 1 0 -1 -2 -4 -6 -8 -10 -12 -14 -16 -17 -17 -16 -14 -12 -9 -5 -1 2 2 -0 -4 -6 -5 -2 1 3 4 2 -2 -6 -8 -9 -10 -10 -10 -8 -6 -5 -5 -6 -7 -6 -5 -1 2 3 3 3 5 7 8 6 -0 -8 -14 -16 -17 -17 -14 -11 -7 -2 2 5 5 2 1 11 21 22 21 17 14 12 11 12 11 8 3 -3 -8 -11 -13 -15 -15 -13 -10 -9 -9 -10 -10 -10 -11 -9 -5 -2 -3 -5 1 20 38 48 53 54 54 53 53 54 56 59 59 54 45 35 39 44 48 52 56 61 68 73 75 75 73 71 73 73 70 66 63 60 58 56 55 54 53 52 51 51 50 49 49 48 47 46 44 43 41 40 39 38 37 36 35 34 33 32 30 28 26 24 21 19 17 16 15 14 14 13 13 13 12 11 9 8 7 5 5 4 4 4 4 4 4 3 2 2 1 1 1 1 2 2 2 1 0 -1 -2 -4 -5 -6 -6 -6 -7 -7 -7 -7 -7 -7 -7 -7 -8 -10 -12 -13 -14 -15 -15 -16 -16 -16 -16 -17 -17 -18 -18 -19 -19 -19 -18 -17 -16 -16 -15 -15 -15 -15 -14 -14 -13 -11 -9 -6 -1 6 12 16 15 12 9 8 8 8 8 7 6 6 6 6 5 5 4 4 3 3 3 3 4 6 8 10 10 9 7 5 4 3 3 3 4 4 3 2 1 0 -0 -1 -2 -3 -4 -5 -6 -7 -8 -10 -10 -11 -11 -10 -10 -10 -10 -10 -10 -10 -9 -7 -4 -1 0 -0 -3 -5 -7 -7 -6 -4 -2 -2 -2 -3 -4 -5 -5 -3 2 8 14 16 15 13 9 6 4 2 0 -2 -5 -9 -11 -13 -14 -15 -16 -16 -15 -14 -13 -12 -12 -13 -13 -13 -12 -11 -10 -10 -10 -10 -10 -7 -5 -3 -3 -5 -7 -7 -7 -6 -5 -4 -1 0 1 1 1 -0 -2 -2 -3 -4 -3 -1 3 6 8 9 10 10 10 11 11 10 8 7 6 6 6 5 4 5 9 9 9 -4 -4 -4 -4 -5 -6 -7 -9 -10 -11 -12 -13 -14 -14 -15 -15 -16 -17 -16 -14 -12 -10 -9 -6 -2 1 2 -0 -3 -4 -3 -2 -0 1 2 1 -2 -5 -8 -9 -10 -11 -11 -10 -9 -7 -7 -7 -7 -7 -6 -4 -2 -1 0 1 5 9 12 10 4 -6 -13 -18 -20 -20 -17 -11 -5 1 4 5 4 -1 -1 9 22 24 18 13 10 9 9 9 7 3 -1 -5 -7 -8 -10 -12 -13 -12 -10 -8 -8 -9 -10 -10 -10 -7 -4 -2 -4 -6 1 16 36 50 55 55 54 53 56 62 65 63 53 35 13 24 35 42 47 52 57 61 66 71 76 75 74 74 74 71 68 64 61 59 58 56 55 54 53 53 52 51 50 50 49 48 47 46 44 43 41 40 39 38 37 36 35 34 33 32 30 28 25 23 21 19 17 16 15 15 14 14 14 14 13 12 11 9 8 7 6 6 6 6 6 5 5 4 3 2 2 2 3 3 3 3 3 2 1 -0 -2 -3 -3 -4 -4 -4 -5 -5 -6 -6 -6 -6 -7 -8 -10 -11 -12 -13 -14 -14 -15 -15 -15 -16 -16 -17 -17 -18 -18 -19 -19 -18 -17 -16 -15 -14 -13 -13 -13 -13 -13 -13 -12 -10 -7 -2 4 11 17 17 14 11 10 9 9 9 8 8 7 7 7 6 6 5 4 4 3 3 3 3 5 7 9 10 10 9 7 5 3 3 3 3 4 4 4 3 2 1 1 -0 -2 -3 -4 -5 -6 -8 -9 -10 -11 -11 -11 -11 -10 -10 -10 -10 -10 -9 -8 -5 -2 0 1 -1 -4 -6 -7 -6 -4 -3 -2 -2 -3 -5 -6 -6 -5 -1 5 13 17 19 17 14 10 8 6 5 3 -1 -5 -9 -11 -13 -14 -15 -16 -15 -14 -13 -13 -13 -13 -14 -14 -14 -13 -12 -12 -12 -11 -9 -5 -1 1 2 -1 -4 -5 -5 -4 -4 -2 -0 2 4 4 4 2 0 -1 -2 -3 -4 -2 0 3 6 8 9 9 10 10 10 10 9 8 7 6 7 6 4 4 8 9 9 -8 -8 -8 -9 -9 -10 -11 -11 -11 -12 -11 -10 -9 -8 -8 -8 -9 -10 -11 -11 -11 -12 -12 -13 -10 -7 -4 -3 -4 -5 -5 -5 -4 -2 -1 -0 -1 -2 -5 -7 -9 -11 -11 -12 -11 -10 -9 -8 -8 -8 -8 -7 -5 -4 -3 -2 0 5 11 14 13 5 -5 -13 -19 -22 -21 -16 -9 -3 2 4 5 2 -4 -1 15 24 19 13 8 7 7 6 5 3 -0 -3 -4 -5 -7 -9 -12 -13 -12 -10 -8 -8 -9 -9 -9 -9 -6 -3 -2 -4 -7 -3 11 31 46 52 52 52 54 58 57 43 24 9 -3 3 16 30 41 49 54 58 62 68 73 75 77 76 73 70 67 64 62 60 59 58 57 56 55 54 53 52 51 51 50 50 49 47 46 44 43 41 40 39 38 37 36 35 34 33 31 29 27 24 22 20 19 17 16 16 15 15 15 15 15 14 13 12 10 9 9 8 8 8 8 7 7 6 5 4 4 4 4 4 4 4 4 3 3 2 1 -0 -1 -1 -2 -2 -2 -3 -4 -4 -5 -5 -6 -8 -9 -11 -12 -13 -13 -14 -14 -15 -15 -16 -17 -17 -18 -19 -19 -19 -19 -19 -18 -17 -15 -13 -12 -11 -10 -10 -11 -11 -11 -11 -9 -4 2 10 17 18 16 14 12 11 11 11 10 9 9 8 8 7 7 6 5 5 4 3 3 3 3 5 8 10 11 10 9 7 5 3 3 3 4 4 4 4 4 4 3 2 1 -1 -2 -4 -5 -6 -8 -9 -10 -11 -11 -11 -11 -11 -10 -10 -10 -9 -8 -6 -3 -0 2 1 -1 -4 -6 -6 -5 -3 -2 -3 -4 -5 -7 -7 -7 -4 1 10 17 21 21 18 15 12 10 9 7 4 -1 -5 -8 -10 -12 -13 -15 -15 -15 -14 -13 -13 -14 -14 -15 -15 -15 -14 -13 -13 -12 -9 -4 2 7 8 4 0 -2 -3 -2 -1 0 2 4 6 7 7 5 3 0 -2 -3 -4 -4 -2 0 3 6 7 8 9 10 10 10 10 9 8 7 7 7 5 3 7 10 10 -9 -9 -8 -8 -8 -7 -6 -5 -5 -4 -3 -2 -1 0 1 1 1 -0 -2 -4 -7 -9 -12 -14 -14 -13 -11 -9 -7 -7 -8 -7 -6 -5 -4 -3 -2 -2 -3 -6 -7 -9 -10 -11 -12 -12 -11 -11 -10 -9 -9 -8 -7 -6 -5 -5 -4 -0 5 10 14 13 5 -4 -13 -18 -19 -17 -12 -6 -1 4 7 6 1 -3 2 22 19 13 9 6 5 5 4 2 -0 -2 -3 -3 -4 -7 -10 -12 -13 -12 -10 -8 -7 -9 -9 -10 -9 -7 -4 -4 -5 -8 -9 4 20 35 44 45 43 41 31 13 -2 -9 -8 -9 0 15 32 44 52 57 62 67 71 74 75 73 69 65 61 60 61 61 60 59 58 57 56 55 54 52 51 51 51 50 50 49 47 46 44 43 42 41 40 39 38 37 36 35 33 31 29 26 24 22 20 19 18 17 16 16 16 17 17 16 16 14 13 12 11 11 10 10 10 9 9 8 7 7 6 6 6 6 6 5 5 4 4 3 3 2 2 1 1 1 0 -0 -1 -2 -3 -4 -5 -7 -8 -10 -11 -12 -13 -14 -15 -15 -16 -17 -17 -18 -18 -18 -19 -19 -20 -20 -20 -19 -17 -15 -13 -10 -8 -8 -8 -8 -9 -10 -9 -6 -0 8 17 20 19 16 14 13 12 12 12 11 10 10 9 9 8 7 7 6 5 4 3 3 3 4 6 8 10 11 11 9 7 5 4 3 4 4 5 5 6 5 5 5 4 2 0 -2 -3 -5 -6 -7 -9 -10 -11 -11 -11 -11 -11 -10 -10 -9 -8 -6 -4 -1 2 3 1 -2 -4 -6 -5 -4 -3 -3 -4 -5 -7 -8 -8 -7 -3 5 14 21 23 22 19 16 14 13 12 10 5 1 -3 -6 -8 -10 -12 -14 -15 -15 -14 -14 -14 -15 -16 -17 -16 -16 -15 -14 -13 -9 -3 5 12 14 11 7 3 2 2 3 4 5 7 9 10 9 8 5 2 -1 -3 -4 -4 -4 -2 0 3 5 7 8 9 10 10 11 10 9 8 8 7 6 2 5 9 11 -6 -5 -4 -2 -1 -1 -0 0 -0 0 0 1 1 1 1 2 2 2 1 -0 -3 -5 -8 -11 -13 -14 -13 -12 -11 -11 -11 -10 -9 -8 -8 -6 -5 -4 -4 -4 -5 -7 -8 -9 -11 -12 -12 -12 -12 -12 -11 -11 -10 -9 -8 -9 -9 -6 -2 2 8 12 11 4 -4 -12 -14 -13 -12 -8 -2 4 8 9 5 -3 -5 19 18 14 9 6 5 5 4 2 0 -2 -2 -2 -3 -5 -7 -9 -11 -11 -11 -9 -8 -8 -9 -10 -10 -10 -8 -7 -7 -8 -11 -14 -12 6 21 26 26 21 4 -4 -6 -8 -11 -9 -4 8 24 39 48 56 62 69 73 75 73 69 64 59 57 58 61 61 60 59 59 59 58 56 55 53 51 51 51 51 51 50 49 48 46 45 43 42 41 40 39 38 37 37 35 33 31 28 26 24 22 20 19 18 18 18 18 18 18 18 18 17 16 14 14 13 13 12 12 12 11 10 10 9 9 8 8 7 7 6 6 6 6 5 5 5 5 4 4 3 3 3 2 1 0 -2 -4 -6 -8 -10 -11 -12 -13 -14 -15 -16 -16 -16 -16 -16 -17 -17 -18 -19 -20 -20 -21 -20 -19 -17 -15 -12 -9 -7 -5 -5 -6 -8 -9 -7 -2 6 16 21 21 19 16 15 14 14 14 13 12 12 11 10 10 9 8 7 6 5 5 4 3 4 5 6 9 11 12 12 10 8 6 4 4 4 5 6 6 7 7 7 6 5 3 1 -1 -3 -4 -6 -7 -9 -10 -11 -11 -11 -11 -10 -10 -9 -8 -6 -4 -1 2 4 3 1 -2 -4 -4 -3 -2 -2 -3 -4 -6 -8 -8 -9 -6 0 9 18 24 26 23 20 18 17 16 15 11 7 3 -1 -4 -6 -9 -12 -14 -15 -15 -15 -15 -15 -16 -18 -18 -18 -17 -15 -13 -10 -3 6 15 19 17 13 10 8 7 8 8 9 10 12 12 12 10 7 4 -0 -3 -4 -5 -5 -4 -3 -0 2 5 7 8 9 10 11 11 10 9 9 8 7 3 4 8 11 -2 -1 -1 -0 -0 -0 -1 -1 -2 -2 -3 -3 -4 -4 -4 -4 -3 -3 -3 -3 -4 -5 -5 -7 -10 -11 -12 -12 -12 -13 -13 -12 -10 -8 -9 -7 -6 -5 -4 -4 -5 -6 -7 -8 -9 -10 -10 -12 -13 -14 -15 -15 -13 -12 -11 -12 -12 -11 -9 -6 -2 4 9 8 3 -4 -10 -11 -12 -9 -3 4 9 10 5 -3 -7 15 17 15 11 6 4 5 5 4 2 0 -0 -1 -2 -3 -4 -5 -7 -9 -10 -10 -9 -8 -9 -9 -10 -10 -11 -10 -8 -9 -11 -12 -10 -12 -11 -5 5 7 4 -1 -6 -9 -11 -9 -1 10 23 37 47 57 65 73 79 80 76 69 63 59 59 60 61 60 58 58 60 60 59 58 56 53 51 50 50 51 52 51 51 49 48 47 45 44 43 42 41 40 39 38 37 35 33 30 28 25 24 22 21 20 20 19 19 20 20 20 20 19 18 17 16 15 15 14 14 14 13 13 12 12 11 11 10 9 9 8 8 8 8 8 8 8 8 7 7 6 6 5 5 5 3 1 -2 -4 -7 -9 -11 -12 -13 -14 -14 -15 -15 -15 -15 -15 -15 -15 -16 -18 -19 -20 -21 -21 -21 -19 -17 -15 -12 -8 -6 -4 -3 -4 -6 -6 -4 3 14 22 24 22 19 17 16 16 15 15 14 14 13 12 12 11 10 9 8 7 6 5 5 4 4 5 7 10 12 13 13 11 9 7 5 5 5 6 6 7 7 8 8 8 7 5 3 0 -2 -3 -5 -7 -8 -10 -11 -11 -11 -10 -10 -9 -8 -6 -4 -1 2 4 5 5 2 -1 -2 -2 -1 -1 -1 -3 -4 -6 -8 -9 -9 -5 4 14 24 27 27 24 21 20 20 19 17 13 8 4 1 -2 -5 -9 -12 -14 -15 -16 -16 -17 -18 -20 -20 -20 -19 -17 -15 -11 -4 6 16 22 22 20 16 14 13 13 13 13 14 15 15 15 13 10 6 1 -2 -4 -5 -5 -5 -5 -3 -1 1 4 7 8 10 11 12 12 11 10 9 9 5 4 7 11 -2 -2 -2 -2 -3 -4 -4 -5 -6 -7 -8 -9 -9 -10 -10 -11 -11 -11 -10 -10 -10 -8 -7 -6 -7 -9 -9 -10 -11 -13 -14 -13 -10 -7 -6 -6 -5 -5 -4 -4 -5 -6 -7 -8 -8 -8 -9 -11 -13 -16 -18 -19 -18 -16 -13 -12 -12 -13 -13 -13 -11 -7 -1 3 4 -0 -7 -12 -14 -13 -8 1 7 8 4 -4 -11 -10 7 13 13 10 7 6 5 5 4 3 2 1 0 -0 -1 -1 -3 -5 -8 -10 -10 -9 -9 -9 -9 -10 -12 -11 -10 -9 -10 -10 -10 -10 -9 -8 -4 6 7 3 -3 -8 -10 -5 6 18 29 40 51 62 74 85 91 87 79 71 65 61 60 58 56 54 53 55 58 60 60 59 57 54 51 50 50 51 52 52 52 51 50 48 47 45 44 43 43 42 41 40 39 37 35 33 30 27 25 24 23 22 22 22 22 22 22 22 21 21 20 19 18 17 17 16 16 16 15 14 14 14 13 13 12 12 11 10 10 10 10 10 11 11 11 10 10 10 9 9 8 7 6 3 0 -3 -6 -9 -10 -11 -11 -12 -13 -13 -13 -13 -13 -13 -13 -14 -15 -16 -18 -19 -20 -21 -21 -21 -19 -17 -15 -12 -8 -5 -2 -1 -3 -4 -4 1 12 21 25 25 21 19 18 18 17 17 16 16 15 15 14 13 12 10 9 8 8 7 6 5 5 4 5 7 10 13 14 14 12 10 8 6 6 6 6 7 7 8 9 9 9 8 6 4 1 -1 -2 -4 -6 -8 -10 -10 -11 -10 -10 -9 -8 -6 -4 -2 1 4 7 8 7 4 2 1 1 1 1 0 -2 -4 -6 -9 -11 -9 -3 8 21 28 29 28 25 23 22 22 21 18 14 9 5 1 -2 -6 -10 -13 -14 -16 -17 -18 -20 -21 -23 -23 -22 -20 -18 -13 -6 4 15 24 26 25 22 19 18 18 17 17 17 17 18 18 16 13 8 4 -1 -3 -4 -5 -5 -5 -5 -4 -2 1 4 7 9 11 12 13 13 12 11 10 7 4 5 10 -4 -4 -4 -5 -6 -7 -8 -9 -10 -11 -12 -13 -13 -14 -15 -15 -16 -17 -18 -17 -16 -13 -10 -7 -6 -7 -8 -8 -9 -12 -14 -12 -8 -6 -6 -6 -6 -6 -5 -5 -4 -5 -6 -8 -9 -10 -10 -11 -13 -15 -17 -20 -21 -20 -18 -15 -12 -12 -13 -14 -15 -13 -10 -5 -1 0 -3 -8 -12 -14 -11 -5 2 5 3 -3 -10 -10 -4 -3 -2 1 6 6 5 4 4 5 5 4 3 2 2 2 1 -1 -4 -7 -9 -9 -9 -9 -10 -10 -11 -11 -10 -9 -9 -11 -11 -11 -10 -9 -8 2 9 9 3 -2 -2 7 16 26 37 48 58 72 85 94 94 87 79 72 67 62 58 54 53 53 54 55 55 56 59 60 58 54 51 50 50 51 53 53 53 52 51 50 49 47 46 45 44 44 43 42 41 40 37 35 32 29 27 26 25 25 24 24 24 24 24 24 23 23 22 21 20 20 19 19 18 17 17 16 15 15 15 15 14 14 13 13 12 13 13 13 13 13 13 13 13 13 12 12 11 10 8 5 2 -2 -5 -7 -8 -9 -10 -11 -11 -12 -12 -12 -12 -12 -12 -13 -14 -15 -17 -18 -20 -21 -22 -22 -21 -20 -18 -15 -12 -9 -5 -2 -1 -1 -2 0 9 19 26 27 24 21 20 19 19 19 18 17 17 17 16 15 14 12 11 10 9 8 8 7 6 5 5 5 7 10 13 15 15 13 11 9 7 6 6 6 7 7 8 9 10 10 10 8 5 3 0 -2 -4 -6 -8 -9 -10 -10 -10 -9 -8 -6 -4 -2 1 4 7 10 11 9 6 5 4 4 4 3 2 -1 -4 -8 -11 -12 -8 0 15 26 31 31 28 25 24 24 24 22 19 14 9 4 0 -3 -7 -11 -13 -15 -17 -18 -20 -22 -23 -24 -23 -22 -21 -18 -10 2 13 23 29 29 26 24 23 21 20 19 19 20 21 21 20 17 12 7 2 -1 -3 -4 -4 -5 -5 -6 -6 -3 1 5 8 10 13 14 15 14 14 12 10 6 4 7 -6 -6 -6 -7 -8 -9 -10 -11 -12 -13 -14 -15 -16 -17 -18 -19 -20 -23 -24 -23 -20 -15 -10 -6 -4 -4 -6 -6 -6 -9 -13 -11 -9 -8 -8 -8 -8 -8 -7 -6 -5 -5 -5 -7 -9 -10 -11 -11 -12 -14 -16 -19 -21 -22 -22 -19 -16 -13 -12 -13 -15 -16 -14 -11 -7 -3 -2 -5 -9 -11 -11 -8 -3 3 4 1 -6 -10 -7 -4 -2 -2 -4 -4 1 4 4 5 6 6 6 6 5 5 4 2 0 -2 -6 -8 -8 -9 -10 -11 -12 -12 -11 -11 -10 -11 -12 -11 -10 -9 -9 -4 6 11 10 6 8 17 26 35 46 57 71 84 94 96 92 85 78 71 63 56 50 48 50 53 57 60 62 61 60 59 59 55 52 50 50 52 53 54 54 53 53 52 50 49 48 47 46 46 45 44 43 42 40 37 34 32 30 28 28 27 27 26 26 26 26 26 26 25 25 24 23 22 22 21 20 19 18 17 17 17 17 17 16 15 15 14 14 15 15 15 16 16 16 16 15 15 15 14 13 12 9 7 3 0 -3 -5 -6 -7 -9 -10 -10 -11 -11 -12 -12 -12 -12 -13 -13 -15 -16 -18 -20 -21 -22 -23 -22 -22 -20 -18 -16 -13 -9 -5 -2 -0 0 1 8 17 26 29 27 23 21 21 21 21 20 19 19 18 18 17 16 14 13 11 10 10 9 8 7 6 5 5 5 7 10 13 15 15 14 12 9 8 7 6 6 6 6 7 9 11 12 11 10 7 4 1 -1 -3 -5 -7 -9 -10 -9 -9 -8 -7 -5 -3 -0 3 7 11 14 13 11 9 7 7 7 7 5 2 -2 -6 -11 -13 -13 -8 5 20 29 33 31 27 25 25 26 26 23 18 12 7 2 -2 -5 -9 -12 -14 -16 -18 -20 -22 -23 -24 -23 -22 -22 -21 -16 -2 11 22 30 33 31 28 26 25 23 22 21 22 23 24 23 21 16 11 6 2 -1 -2 -3 -4 -5 -6 -7 -6 -3 2 6 10 12 15 16 17 16 15 13 8 4 3 -7 -7 -8 -8 -9 -10 -11 -12 -12 -13 -15 -16 -18 -19 -18 -19 -20 -23 -27 -27 -22 -15 -9 -4 -0 1 -0 -3 -6 -7 -11 -11 -10 -10 -11 -10 -10 -10 -10 -9 -8 -7 -7 -7 -8 -10 -12 -12 -13 -13 -15 -18 -21 -23 -24 -22 -19 -15 -13 -13 -14 -16 -16 -15 -12 -8 -5 -4 -6 -8 -9 -8 -5 0 5 5 0 -8 -9 -5 -1 0 -4 -7 -5 0 4 5 6 7 8 8 8 7 6 5 3 1 -2 -5 -8 -10 -11 -12 -12 -12 -12 -11 -10 -10 -12 -11 -10 -9 -9 -7 2 11 15 14 17 26 36 47 61 76 86 94 97 95 90 83 75 67 58 49 45 47 51 56 60 63 67 68 67 63 56 52 51 51 51 53 54 55 55 54 54 53 52 51 50 49 48 48 47 46 45 44 42 39 37 34 32 31 30 30 29 29 29 29 28 28 28 28 27 26 26 25 24 24 23 22 20 19 18 18 18 18 18 17 16 16 16 16 17 18 18 18 18 18 17 17 17 16 15 13 11 8 5 2 -0 -3 -4 -6 -8 -9 -10 -11 -11 -12 -13 -13 -14 -14 -15 -15 -16 -18 -20 -21 -22 -23 -23 -23 -22 -21 -19 -16 -13 -9 -5 -2 0 2 6 15 24 30 29 25 23 22 22 22 22 21 21 20 19 19 18 16 15 13 12 11 10 9 9 8 6 5 5 5 7 10 13 15 15 14 12 10 8 7 6 5 5 5 7 9 12 14 13 11 8 5 2 -1 -3 -5 -7 -8 -9 -8 -8 -7 -6 -4 -1 2 6 10 14 16 16 13 11 10 10 9 8 5 0 -5 -10 -14 -16 -15 -5 11 24 32 33 29 27 26 28 29 28 22 16 9 4 -0 -4 -8 -11 -13 -15 -17 -18 -20 -22 -23 -21 -20 -18 -17 -14 -7 8 21 30 35 35 32 30 27 26 24 23 24 26 27 27 25 20 15 10 5 2 0 -1 -3 -5 -7 -8 -7 -6 -2 3 8 11 15 17 19 19 17 15 11 6 1 -7 -8 -9 -10 -10 -11 -11 -11 -12 -13 -14 -16 -17 -16 -10 -7 -7 -12 -19 -20 -16 -12 -9 -7 -2 2 4 1 -4 -12 -11 -10 -10 -11 -13 -13 -13 -12 -12 -11 -10 -10 -9 -9 -10 -11 -12 -13 -13 -14 -15 -18 -20 -22 -23 -22 -21 -18 -16 -14 -14 -16 -16 -16 -15 -12 -8 -6 -6 -7 -8 -7 -6 -2 4 8 7 -1 -9 -8 -3 2 2 -2 -7 -5 2 6 5 5 7 8 10 9 8 6 4 2 -1 -4 -8 -11 -12 -12 -12 -12 -12 -11 -11 -10 -10 -11 -10 -8 -8 -7 -2 8 17 21 24 34 45 57 71 87 92 94 93 90 85 78 72 64 56 48 47 50 53 56 57 59 65 70 71 67 60 54 48 44 44 49 54 56 56 56 55 54 53 52 52 51 50 49 49 48 47 46 44 42 39 37 35 34 33 32 32 31 31 31 31 31 30 30 30 29 28 28 27 27 25 24 22 21 20 20 20 19 19 18 17 17 17 18 19 19 20 20 19 19 19 19 19 18 17 15 12 10 7 5 2 -0 -3 -5 -7 -9 -10 -11 -12 -12 -13 -14 -15 -16 -17 -17 -18 -18 -20 -21 -22 -23 -24 -24 -24 -23 -21 -19 -16 -13 -10 -6 -2 1 5 13 22 30 32 28 25 24 24 24 24 23 22 21 21 20 19 18 17 15 13 12 11 10 10 9 8 7 6 5 5 7 9 12 14 14 13 12 10 9 7 5 4 4 4 6 10 14 16 15 13 9 5 2 -0 -2 -5 -7 -8 -8 -8 -8 -7 -5 -3 0 4 8 13 17 18 17 14 12 11 11 10 8 3 -3 -8 -13 -17 -18 -14 -1 14 28 33 31 28 27 29 31 31 27 20 12 6 1 -3 -6 -9 -12 -13 -15 -17 -19 -20 -21 -19 -16 -12 -9 -6 -2 9 20 30 37 39 36 33 30 28 26 25 26 28 29 30 28 24 19 14 9 6 3 0 -2 -4 -6 -8 -8 -8 -5 -1 5 10 14 17 19 20 19 17 13 9 2 -6 -6 -8 -10 -11 -11 -11 -12 -13 -15 -14 -11 -6 1 -2 -11 -16 -15 -15 -13 -11 -11 -11 -12 -10 -4 1 3 -0 -8 -11 -9 -9 -11 -13 -13 -13 -13 -12 -12 -12 -11 -11 -11 -11 -12 -13 -14 -15 -15 -16 -18 -19 -19 -20 -20 -20 -20 -19 -18 -17 -16 -16 -16 -16 -14 -12 -9 -7 -7 -6 -6 -5 -3 2 8 12 9 -3 -7 -6 -1 2 1 -2 -6 -4 8 5 3 4 5 7 9 8 6 3 1 -1 -3 -7 -10 -12 -12 -12 -11 -10 -10 -11 -10 -10 -11 -11 -9 -7 -7 -4 4 15 24 29 39 51 62 73 83 83 83 82 79 76 73 70 64 57 52 52 53 53 53 53 55 62 66 67 65 60 53 47 43 43 47 50 51 53 56 57 55 54 54 53 53 53 52 51 50 49 48 46 44 42 39 38 36 35 35 34 34 33 33 33 33 33 32 32 32 31 30 30 29 28 26 25 23 22 22 22 21 20 19 19 18 19 19 20 21 21 21 21 21 21 20 20 19 18 16 14 11 9 7 5 2 -1 -4 -7 -8 -10 -11 -11 -12 -13 -14 -16 -17 -18 -19 -19 -19 -19 -20 -22 -23 -24 -24 -25 -24 -23 -22 -19 -17 -14 -10 -6 -2 3 11 20 30 33 31 28 26 26 26 25 25 24 23 22 22 21 20 18 17 15 13 12 11 10 10 9 8 7 6 5 6 7 9 11 12 13 12 12 10 9 7 5 3 2 3 6 11 16 18 18 14 9 5 2 -0 -2 -4 -6 -8 -9 -8 -8 -6 -5 -2 1 5 10 15 18 19 17 14 12 12 12 10 6 -0 -6 -11 -15 -19 -18 -12 1 18 31 32 30 28 29 32 33 30 24 16 9 3 -1 -5 -8 -11 -12 -13 -14 -16 -19 -20 -18 -12 -7 -3 -0 3 12 20 28 38 41 39 36 33 31 28 27 28 29 31 33 31 28 23 18 13 9 6 3 -1 -3 -6 -8 -9 -9 -8 -5 1 6 12 16 19 20 20 18 15 12 5 -6 -5 -7 -9 -10 -11 -12 -15 -17 -17 -16 -15 -14 -11 -10 -12 -11 -9 -8 -7 -8 -10 -11 -13 -13 -10 -5 0 2 -1 -6 -8 -9 -10 -11 -12 -12 -11 -11 -11 -12 -12 -11 -11 -11 -11 -13 -14 -16 -17 -19 -19 -17 -14 -11 -12 -15 -17 -19 -20 -20 -18 -16 -15 -15 -14 -13 -11 -9 -7 -6 -6 -4 -3 0 5 12 16 8 -1 -5 -3 0 2 0 -4 -3 8 3 1 -0 0 2 5 6 5 3 1 1 -0 -3 -6 -9 -12 -13 -11 -8 -8 -9 -11 -11 -11 -11 -10 -7 -6 -4 1 9 22 32 42 53 63 70 70 64 65 66 66 69 72 70 65 59 56 56 53 52 51 51 53 59 62 61 57 53 47 44 44 46 49 51 52 52 52 52 55 55 55 55 55 55 54 53 51 50 49 48 46 44 42 40 39 38 37 36 36 35 35 35 35 35 35 34 34 34 33 32 31 30 29 27 26 25 25 24 23 22 21 20 20 20 20 21 22 22 22 22 22 22 21 21 20 18 17 15 13 11 9 6 3 -0 -3 -5 -7 -8 -9 -10 -11 -12 -14 -16 -17 -18 -19 -19 -18 -18 -19 -20 -21 -23 -24 -25 -25 -25 -23 -21 -19 -17 -14 -12 -7 -1 7 17 28 34 34 31 28 27 28 27 27 26 25 24 23 22 21 20 19 17 15 14 13 12 11 11 10 9 8 6 5 5 6 7 9 10 11 12 12 11 9 6 4 2 1 3 7 13 18 21 19 14 9 5 2 0 -2 -4 -7 -8 -9 -9 -8 -7 -4 -2 2 7 12 16 19 18 16 14 13 12 11 8 3 -3 -9 -13 -17 -19 -17 -10 4 23 30 31 30 30 32 35 33 28 20 12 6 1 -3 -7 -10 -11 -12 -13 -14 -17 -19 -17 -10 -2 3 4 6 15 22 26 37 43 42 39 36 33 31 29 29 30 33 35 34 31 27 22 17 13 9 5 1 -2 -5 -8 -9 -10 -9 -7 -3 2 8 14 18 20 21 20 17 15 10 -4 -4 -6 -10 -12 -14 -15 -15 -16 -18 -17 -14 -12 -11 -9 -7 -6 -5 -4 -5 -5 -6 -8 -10 -12 -11 -9 -5 -1 1 -1 -5 -8 -9 -9 -10 -10 -9 -9 -8 -9 -10 -10 -10 -9 -9 -11 -13 -15 -18 -20 -21 -16 -4 5 4 -4 -10 -15 -19 -20 -19 -17 -15 -14 -13 -13 -11 -10 -8 -7 -5 -4 -2 -0 3 9 16 15 6 -2 -4 -1 4 4 1 -4 -10 -17 -3 3 3 2 4 6 6 7 6 5 3 -1 -4 -8 -12 -13 -12 -8 -5 -6 -10 -11 -11 -10 -10 -8 -5 -5 -3 2 13 27 40 52 61 63 53 45 49 55 61 67 69 67 63 59 59 57 54 53 53 53 51 56 60 60 55 48 44 44 46 50 52 55 55 54 51 50 53 55 56 56 56 56 55 54 53 52 51 50 49 47 45 42 41 39 38 38 37 37 37 37 37 37 37 37 36 36 35 34 33 32 31 30 29 28 28 27 26 25 23 22 21 21 22 23 23 23 23 22 22 22 22 21 20 19 17 16 14 12 10 7 4 1 -1 -3 -5 -5 -6 -7 -8 -9 -12 -14 -16 -18 -18 -18 -17 -16 -17 -17 -19 -21 -22 -24 -25 -25 -24 -23 -21 -19 -17 -16 -12 -7 1 12 25 34 36 34 31 29 29 29 29 28 26 25 24 24 23 22 20 19 18 16 15 13 12 12 11 10 9 8 6 5 4 4 5 7 9 10 11 11 10 8 5 3 1 1 3 8 14 20 22 19 14 9 5 3 0 -2 -5 -8 -10 -10 -10 -9 -7 -4 -1 3 7 12 16 18 17 15 13 12 12 10 6 0 -5 -11 -15 -18 -18 -15 -9 10 25 31 31 30 31 34 34 31 24 15 9 4 -1 -5 -9 -11 -11 -12 -13 -15 -17 -16 -9 -1 6 8 8 12 17 24 34 43 44 42 39 36 33 31 30 31 34 36 36 33 30 26 21 17 12 8 3 -1 -4 -7 -9 -10 -10 -9 -6 -2 4 10 15 18 20 21 19 17 15 -5 -7 -10 -11 -11 -12 -14 -16 -15 -14 -11 -8 -6 -5 -5 -5 -6 -6 -6 -5 -4 -3 -3 -5 -7 -8 -8 -7 -6 -3 -1 -1 -4 -7 -8 -8 -9 -9 -8 -7 -5 -5 -5 -8 -10 -11 -10 -10 -11 -14 -17 -19 -15 -3 8 10 5 -1 -7 -12 -15 -17 -17 -16 -14 -12 -12 -11 -11 -9 -8 -6 -5 -3 -1 3 7 14 18 13 4 -5 -5 -1 3 4 3 1 -6 -9 -3 3 3 3 5 7 9 9 8 5 1 -3 -7 -10 -12 -12 -10 -7 -3 -5 -9 -11 -10 -9 -8 -7 -6 -6 -5 -0 10 24 38 46 44 31 21 25 36 47 57 59 57 55 56 60 58 55 54 54 53 49 54 60 63 61 55 49 48 50 52 54 54 55 57 58 57 56 58 58 58 57 58 57 55 54 53 52 52 51 49 47 45 43 41 40 39 38 38 38 38 38 38 38 38 38 37 37 36 35 34 33 32 32 32 31 31 30 28 26 24 23 23 23 24 24 24 23 23 23 22 22 21 20 19 18 16 14 12 10 8 5 3 0 -1 -2 -2 -2 -2 -4 -6 -10 -13 -15 -16 -16 -15 -14 -13 -13 -14 -15 -17 -20 -22 -24 -25 -25 -24 -23 -21 -20 -19 -17 -13 -6 5 19 32 38 38 34 31 31 31 31 30 29 27 26 25 24 23 22 21 20 18 17 16 14 13 12 12 10 9 7 6 4 3 3 4 6 8 10 11 11 10 7 5 3 1 1 4 9 16 22 23 19 14 9 5 3 0 -3 -6 -9 -11 -11 -11 -9 -7 -4 -1 3 7 12 16 17 16 14 13 13 12 9 4 -2 -7 -12 -16 -18 -18 -15 -4 13 26 31 30 29 32 33 32 27 19 13 7 2 -3 -8 -10 -12 -12 -13 -13 -15 -16 -11 -2 8 10 10 9 13 23 31 42 46 45 42 38 35 32 31 32 34 37 37 36 33 30 26 21 16 12 7 2 -2 -6 -9 -10 -10 -10 -8 -5 -0 5 11 16 19 21 21 20 18 -7 -8 -9 -8 -9 -11 -13 -13 -10 -6 -4 -4 -5 -6 -8 -8 -9 -8 -8 -7 -6 -5 -3 -3 -3 -5 -6 -8 -9 -9 -7 -5 -3 -4 -6 -8 -8 -8 -8 -8 -7 -5 -3 -2 -3 -5 -8 -10 -11 -11 -8 -9 -10 -5 1 6 6 1 -3 -7 -10 -13 -15 -16 -15 -13 -12 -11 -11 -10 -9 -8 -7 -5 -2 1 6 13 18 18 10 -1 -9 -8 -3 1 3 4 4 -2 -6 -3 3 2 4 6 8 8 8 6 2 -2 -5 -7 -11 -12 -13 -10 -4 -0 -4 -8 -10 -9 -8 -7 -7 -8 -7 -6 -4 -1 3 3 -1 -6 -7 -7 -4 5 20 29 32 32 35 43 47 48 48 48 48 47 55 64 70 70 63 55 51 52 53 51 48 50 56 62 65 66 64 62 60 59 59 58 56 55 54 53 53 52 51 49 47 45 43 41 40 39 39 39 39 39 39 39 39 39 39 38 38 37 36 35 35 35 35 35 34 33 31 29 27 26 25 25 25 25 24 24 23 23 22 22 21 20 19 17 16 14 12 10 8 6 4 2 0 0 1 2 1 -1 -4 -8 -10 -12 -12 -12 -11 -10 -9 -9 -9 -10 -13 -15 -18 -21 -23 -24 -24 -24 -23 -21 -21 -20 -18 -13 -4 10 26 37 41 38 34 33 33 33 33 31 30 28 27 26 25 24 23 21 20 19 18 16 15 14 13 12 10 8 6 4 3 3 3 4 6 9 11 11 11 9 7 5 3 1 2 4 10 18 22 23 20 14 9 6 3 -0 -4 -7 -10 -12 -12 -12 -10 -8 -4 -1 3 7 11 15 16 15 14 13 13 12 8 3 -3 -9 -14 -17 -18 -16 -13 -1 15 27 30 28 28 30 31 28 21 15 10 5 -1 -6 -10 -12 -13 -13 -13 -14 -15 -12 -5 6 11 12 10 10 16 27 40 47 48 45 41 37 34 31 32 35 38 39 38 36 34 30 26 21 16 11 6 1 -4 -7 -9 -10 -10 -9 -7 -4 1 6 11 16 19 21 21 20 -6 -6 -7 -8 -9 -11 -11 -7 -4 -3 -6 -8 -11 -12 -11 -10 -9 -8 -8 -8 -8 -8 -8 -7 -6 -6 -6 -8 -9 -10 -10 -9 -8 -6 -5 -5 -6 -7 -8 -9 -9 -7 -5 -3 -0 1 0 -1 -3 -5 -7 -6 -4 -3 -2 1 3 1 -2 -4 -7 -9 -12 -15 -16 -15 -13 -12 -11 -11 -11 -10 -9 -8 -5 -1 3 10 16 19 16 6 -6 -10 -9 -7 -5 -1 4 4 -3 -5 -1 2 2 5 7 7 7 6 3 1 -1 -4 -7 -11 -13 -12 -7 0 -0 -4 -8 -9 -9 -7 -7 -8 -8 -7 -6 -5 -5 -5 -7 -9 -9 -9 -8 -6 -4 -3 -2 -2 -3 -3 -3 -2 7 20 27 34 50 64 72 73 64 55 52 53 54 50 47 48 51 54 60 66 65 63 60 59 57 56 56 55 54 54 54 53 52 51 49 46 44 42 41 40 40 40 40 41 41 40 40 40 40 40 39 39 38 37 37 37 38 38 37 36 34 32 30 29 28 27 27 26 25 24 23 23 22 22 21 20 19 17 15 14 12 10 9 7 5 3 2 2 3 4 3 0 -4 -7 -8 -9 -9 -8 -8 -7 -6 -5 -5 -5 -7 -10 -13 -17 -20 -22 -24 -24 -23 -22 -22 -22 -21 -19 -13 -1 17 32 41 42 37 35 34 35 35 34 32 31 29 28 26 25 24 23 22 21 20 18 17 16 14 13 11 9 6 4 3 2 2 3 5 7 10 11 12 11 9 7 5 3 1 2 5 12 19 23 24 20 14 9 5 2 -1 -5 -8 -11 -13 -14 -13 -11 -8 -5 -1 2 6 10 14 15 15 14 14 14 12 8 1 -5 -10 -15 -17 -17 -15 -10 0 17 26 26 25 25 26 26 22 17 12 7 1 -5 -9 -12 -13 -14 -14 -14 -15 -13 -8 3 10 13 12 9 5 22 37 47 50 48 43 39 35 32 32 35 38 40 39 38 37 34 30 26 21 16 10 5 -0 -5 -7 -9 -9 -9 -8 -6 -3 1 6 11 16 19 20 20 -5 -6 -9 -13 -12 -8 -6 -5 -7 -10 -14 -16 -15 -13 -11 -9 -8 -8 -8 -9 -9 -9 -9 -10 -10 -10 -9 -8 -8 -9 -9 -9 -9 -7 -6 -5 -5 -6 -7 -8 -9 -9 -8 -6 -3 0 2 5 5 4 0 -4 -6 -5 -3 -2 0 1 -1 -3 -5 -7 -10 -12 -14 -15 -14 -13 -12 -11 -11 -11 -10 -10 -8 -5 -0 6 13 18 19 14 3 -7 -11 -12 -11 -7 -2 3 2 -3 -6 -0 -0 3 6 8 6 5 4 3 2 1 -2 -7 -12 -14 -12 -4 0 -1 -5 -8 -9 -8 -7 -7 -7 -8 -7 -6 -7 -7 -8 -9 -10 -10 -10 -10 -10 -9 -7 -7 -6 -5 -3 -3 -0 3 3 4 30 54 70 76 69 59 52 51 53 54 52 49 48 47 48 49 48 47 46 45 44 46 50 53 54 54 55 54 53 52 50 48 46 44 42 41 41 41 41 42 42 41 41 42 42 42 41 41 40 40 39 40 40 40 40 39 37 35 33 32 31 30 29 28 26 25 24 22 22 21 20 20 18 16 15 13 11 10 8 7 5 4 3 3 4 4 2 -1 -5 -6 -7 -7 -7 -7 -7 -7 -6 -5 -4 -3 -3 -5 -8 -11 -15 -19 -22 -23 -23 -23 -23 -23 -24 -23 -19 -11 4 23 38 44 41 37 36 36 36 36 35 33 31 30 28 27 26 25 23 22 21 20 19 17 16 14 12 9 7 4 2 1 2 3 4 7 9 11 12 12 11 9 6 4 2 1 2 6 13 20 24 24 19 13 8 4 1 -2 -6 -10 -13 -15 -15 -13 -11 -8 -5 -2 1 4 9 13 15 15 15 16 16 13 7 0 -6 -12 -16 -17 -16 -14 -10 -0 16 23 23 21 20 20 18 15 12 8 3 -4 -8 -11 -13 -14 -14 -14 -14 -13 -10 -2 7 12 14 11 6 18 33 45 53 50 46 40 35 32 31 35 39 41 41 40 40 38 34 30 25 21 15 9 4 -1 -5 -7 -8 -8 -8 -7 -6 -3 1 6 11 15 17 18 -9 -10 -11 -10 -9 -9 -9 -10 -11 -12 -14 -14 -14 -12 -10 -9 -8 -7 -7 -8 -9 -9 -10 -11 -12 -12 -11 -10 -9 -9 -9 -9 -8 -7 -7 -6 -5 -6 -7 -8 -8 -9 -9 -9 -7 -5 -2 2 6 9 9 3 -4 -7 -7 -6 -4 -1 0 -2 -4 -6 -8 -10 -12 -14 -14 -14 -13 -11 -10 -10 -11 -12 -11 -9 -5 1 9 15 19 18 12 1 -8 -12 -11 -9 -6 -1 3 1 -6 -3 -2 0 4 9 9 5 4 5 6 6 3 -3 -10 -15 -16 -11 -3 -1 -2 -6 -9 -9 -7 -6 -6 -7 -8 -7 -7 -8 -8 -9 -11 -12 -13 -13 -12 -10 -8 -6 -5 -3 -0 0 -0 -1 -2 -3 3 26 53 66 66 57 51 50 53 58 56 50 45 43 46 50 51 49 47 45 44 42 41 41 45 53 55 55 54 53 51 49 47 45 44 42 42 42 43 43 43 43 43 43 43 44 44 43 42 42 42 42 42 43 42 42 40 38 36 35 33 32 31 29 27 25 24 23 22 21 20 19 18 16 14 12 11 9 8 7 5 4 4 4 4 3 -0 -4 -6 -6 -6 -6 -6 -7 -7 -8 -8 -8 -7 -5 -4 -3 -4 -6 -10 -14 -18 -21 -22 -23 -23 -24 -25 -25 -24 -19 -8 10 29 43 44 41 38 37 37 38 37 36 34 32 30 29 27 26 25 24 23 22 20 19 17 15 13 10 7 4 2 0 0 1 3 6 9 11 13 13 12 10 8 6 4 2 1 3 7 14 21 25 23 18 13 7 3 0 -3 -7 -11 -14 -15 -15 -14 -11 -8 -6 -4 -1 3 8 12 14 15 16 17 16 13 7 -0 -7 -12 -15 -15 -15 -13 -11 1 14 20 20 16 14 11 9 7 4 1 -4 -8 -11 -13 -14 -14 -14 -13 -12 -10 -4 3 10 14 14 10 15 27 42 54 53 48 42 36 32 31 35 39 41 42 42 42 41 38 34 29 25 20 14 8 3 -1 -4 -6 -7 -7 -8 -7 -6 -3 1 6 10 13 14 -10 -12 -12 -11 -8 -5 -3 -2 -3 -6 -9 -10 -10 -10 -10 -9 -8 -7 -7 -8 -9 -10 -12 -13 -14 -13 -12 -12 -11 -10 -9 -8 -8 -7 -7 -6 -6 -6 -7 -7 -8 -8 -9 -10 -11 -10 -8 -4 1 7 11 11 4 -5 -10 -10 -8 -4 -1 -1 -3 -5 -7 -9 -11 -13 -14 -14 -13 -11 -10 -10 -11 -12 -13 -12 -9 -4 4 11 17 20 18 11 -2 -8 -8 -8 -8 -4 1 3 -1 -6 -2 -2 0 6 12 8 5 5 7 10 8 2 -5 -13 -17 -15 -9 -3 -1 -3 -7 -8 -8 -6 -6 -7 -7 -7 -6 -7 -7 -9 -11 -13 -14 -14 -13 -12 -10 -8 -7 -5 -3 -1 -0 -0 -0 1 -2 6 24 45 51 48 46 46 48 52 52 49 47 47 49 52 53 51 48 46 44 42 40 38 39 45 53 56 56 53 52 50 48 47 45 43 43 43 44 44 44 44 44 45 45 46 46 46 45 44 44 44 45 45 45 44 43 41 40 38 36 34 33 31 28 26 25 23 22 22 21 20 18 16 14 11 10 9 8 7 6 5 4 4 3 1 -2 -5 -6 -5 -5 -5 -6 -7 -8 -9 -10 -11 -11 -10 -8 -6 -5 -4 -6 -9 -12 -16 -20 -22 -23 -24 -25 -27 -27 -24 -17 -4 15 36 44 43 40 38 38 39 39 38 36 34 32 30 29 28 26 25 24 23 22 20 18 16 14 12 8 5 1 -1 -2 -1 1 5 8 11 13 14 13 11 9 7 5 3 2 1 3 7 14 21 24 22 18 11 6 3 -1 -4 -7 -11 -14 -15 -15 -14 -11 -9 -7 -5 -3 2 7 11 13 14 15 16 16 13 7 -0 -7 -12 -15 -14 -13 -12 -9 2 13 19 17 11 7 3 -1 -5 -7 -8 -9 -11 -12 -14 -14 -14 -13 -11 -8 -5 1 7 13 16 14 8 15 37 53 54 50 44 38 32 31 34 39 42 42 43 44 44 41 37 33 29 24 18 13 7 3 -0 -3 -5 -7 -7 -8 -8 -7 -5 0 5 8 10 -9 -8 -7 -5 -4 -4 -5 -7 -9 -9 -9 -9 -8 -9 -9 -8 -8 -8 -8 -9 -9 -10 -12 -14 -16 -15 -14 -13 -12 -11 -10 -9 -8 -7 -7 -7 -6 -7 -7 -7 -7 -8 -8 -10 -11 -11 -10 -8 -5 0 7 12 10 3 -5 -9 -7 -7 -6 -4 -2 -4 -6 -9 -11 -12 -12 -12 -12 -11 -10 -10 -10 -11 -12 -14 -13 -9 -1 7 14 18 19 16 7 -3 -7 -5 -9 -7 -1 4 3 -8 -2 -2 -5 -3 7 10 7 5 7 11 10 5 -1 -7 -12 -15 -13 -8 -3 -1 -4 -6 -7 -7 -6 -6 -7 -6 -5 -5 -7 -8 -11 -13 -14 -13 -13 -12 -12 -11 -10 -8 -6 -3 -2 -2 -1 3 6 5 9 23 28 32 33 33 31 29 29 34 40 47 51 52 51 49 47 47 44 39 34 32 34 40 44 48 52 54 53 52 50 48 46 45 44 44 45 45 45 46 46 46 47 48 49 48 48 47 46 46 47 47 47 46 45 44 42 40 38 36 34 32 30 27 25 24 23 23 22 21 19 17 14 12 10 8 8 7 6 5 4 3 2 -1 -4 -5 -5 -4 -4 -4 -5 -6 -7 -9 -11 -12 -14 -14 -13 -11 -9 -7 -6 -6 -8 -12 -15 -19 -21 -23 -25 -27 -28 -27 -23 -15 -1 21 38 44 43 40 38 39 40 40 39 37 34 32 31 29 28 27 26 25 23 21 20 18 15 13 10 6 2 -1 -3 -3 -2 2 6 10 13 14 14 12 10 8 6 4 3 1 1 2 7 15 21 23 22 16 10 5 2 -1 -4 -7 -11 -13 -14 -15 -14 -12 -10 -8 -7 -4 1 7 10 12 12 13 15 14 12 6 -1 -8 -12 -14 -13 -10 -10 -7 2 15 18 13 7 1 -4 -10 -14 -15 -14 -12 -12 -13 -15 -15 -13 -10 -7 -4 -0 5 10 16 16 10 11 28 48 54 52 46 39 33 31 34 38 41 42 44 46 46 44 41 37 33 28 23 17 12 8 4 -0 -3 -6 -7 -8 -9 -9 -9 -5 -0 3 5 -2 -4 -6 -8 -8 -7 -6 -6 -6 -5 -5 -5 -6 -7 -7 -7 -7 -8 -9 -10 -10 -10 -11 -13 -15 -15 -14 -14 -13 -12 -10 -10 -9 -8 -7 -7 -6 -7 -7 -7 -7 -8 -8 -9 -10 -11 -10 -9 -6 -3 2 7 9 6 -1 -8 -7 -6 -6 -8 -7 -3 -5 -9 -11 -12 -11 -10 -10 -10 -10 -10 -11 -11 -11 -13 -14 -12 -5 3 10 15 17 16 13 2 -6 -4 -7 -10 -6 1 4 -3 -5 -4 -5 -8 -6 4 6 5 4 8 10 7 2 -3 -7 -11 -11 -10 -6 -2 -1 -3 -6 -7 -7 -7 -6 -6 -5 -5 -6 -8 -10 -12 -13 -12 -13 -13 -13 -14 -13 -10 -9 -7 -6 -5 -5 0 5 11 15 14 14 17 16 13 11 7 3 7 18 33 43 44 44 42 42 43 41 35 31 30 31 36 40 43 46 48 49 51 51 50 47 46 45 45 46 46 46 47 47 48 49 50 51 51 50 49 49 48 49 49 49 48 48 47 45 43 41 39 36 34 31 29 26 25 24 24 23 22 20 18 15 13 10 9 8 7 7 6 5 3 1 -1 -3 -4 -3 -3 -3 -4 -4 -5 -6 -8 -10 -12 -14 -15 -16 -16 -14 -12 -9 -8 -7 -8 -11 -15 -18 -22 -24 -27 -29 -28 -26 -22 -13 3 25 39 45 43 40 40 40 41 40 39 37 35 33 31 30 29 28 26 25 23 21 19 17 14 11 7 3 -1 -4 -5 -5 -1 3 8 12 15 15 14 12 10 7 6 4 2 1 -0 1 6 14 20 23 21 15 9 5 1 -1 -4 -7 -10 -12 -14 -14 -14 -12 -11 -10 -8 -4 1 7 10 10 10 11 12 12 9 4 -2 -8 -12 -14 -10 -6 -7 -7 4 15 15 10 3 -3 -10 -14 -17 -17 -15 -13 -13 -15 -15 -14 -10 -6 -3 0 4 8 14 17 14 9 10 36 51 54 49 41 34 31 33 37 40 42 45 48 49 48 44 41 37 32 27 21 16 12 8 4 -1 -5 -7 -8 -9 -10 -11 -9 -5 -2 0 -6 -7 -7 -6 -5 -4 -3 -3 -2 -2 -2 -3 -4 -5 -5 -6 -6 -8 -10 -12 -11 -11 -11 -11 -12 -13 -13 -13 -13 -12 -10 -9 -9 -9 -8 -7 -6 -7 -7 -7 -7 -8 -9 -10 -11 -11 -11 -10 -7 -3 1 4 6 6 2 -5 -7 -7 -6 -6 -8 -10 -6 -7 -10 -11 -10 -8 -7 -8 -9 -11 -12 -11 -11 -12 -13 -13 -9 -1 7 12 16 17 16 9 -0 -7 -5 -8 -9 -4 2 3 -7 -7 -6 -7 -10 -5 3 7 7 7 10 9 6 1 -3 -6 -9 -10 -9 -6 -1 -1 -3 -6 -8 -7 -6 -5 -5 -6 -6 -6 -8 -10 -12 -13 -13 -14 -16 -16 -15 -12 -11 -10 -10 -9 -8 -6 -2 5 14 20 21 14 4 -3 0 1 -6 -13 -9 8 26 31 32 31 30 32 31 29 27 27 28 32 37 40 43 44 45 46 48 49 49 47 46 46 47 47 47 48 49 50 51 52 53 53 53 52 51 51 51 51 51 51 50 50 48 46 43 41 38 36 33 30 28 26 25 25 24 23 22 19 17 14 12 10 9 8 8 7 6 4 2 1 -1 -1 -1 -2 -3 -3 -4 -4 -5 -6 -8 -10 -13 -15 -17 -18 -18 -17 -15 -12 -9 -8 -8 -11 -15 -19 -23 -26 -29 -29 -28 -25 -20 -11 8 27 41 45 43 41 40 41 42 41 39 37 35 33 32 31 29 28 27 25 23 21 19 16 13 9 4 0 -3 -6 -7 -5 -1 4 9 14 16 15 14 12 9 7 6 4 2 -0 -2 -0 5 13 20 23 20 14 9 4 1 -1 -4 -6 -9 -12 -13 -14 -14 -13 -12 -11 -9 -4 3 9 10 9 8 8 8 8 6 2 -3 -9 -13 -11 -6 -2 -3 -11 7 14 13 7 -1 -7 -13 -16 -17 -17 -14 -14 -15 -16 -15 -11 -6 -2 1 3 7 12 16 16 10 -3 21 41 52 51 43 35 32 32 35 38 41 45 49 51 51 48 45 41 36 31 26 20 16 12 8 3 -2 -6 -9 -10 -11 -12 -11 -9 -6 -4 -5 -5 -4 -3 -2 -3 -3 -4 -4 -4 -4 -5 -5 -6 -7 -8 -8 -9 -10 -11 -12 -12 -13 -12 -11 -11 -10 -10 -10 -10 -9 -9 -8 -7 -7 -6 -6 -7 -8 -8 -8 -8 -9 -10 -10 -11 -12 -12 -10 -6 -2 2 5 6 4 -1 -8 -6 -8 -8 -8 -9 -11 -9 -8 -9 -9 -6 -5 -6 -7 -9 -11 -11 -11 -12 -13 -13 -10 -4 2 8 13 16 17 13 6 -4 -8 -8 -9 -7 -2 3 -1 -7 -9 -8 -10 -9 -2 6 11 10 10 11 9 5 1 -2 -6 -9 -11 -9 -4 -0 -0 -3 -7 -8 -6 -5 -5 -6 -6 -5 -6 -7 -10 -13 -14 -15 -14 -14 -13 -13 -13 -11 -10 -11 -11 -10 -10 -5 4 14 17 16 10 2 -7 0 -3 -10 -15 -13 7 19 22 19 15 16 18 20 20 21 23 27 33 38 41 43 43 43 45 47 49 48 48 47 48 48 49 49 50 51 52 54 55 55 55 54 53 53 53 54 54 54 53 53 51 49 46 43 40 37 35 32 29 27 26 25 25 24 23 21 19 16 14 12 11 10 9 9 8 6 5 3 2 1 0 -1 -2 -3 -4 -4 -4 -5 -6 -9 -11 -14 -17 -19 -20 -20 -19 -16 -13 -10 -8 -9 -12 -16 -21 -25 -28 -29 -28 -26 -22 -18 -7 10 28 42 44 43 41 41 42 42 41 39 38 36 34 33 31 30 29 27 25 23 21 18 15 11 6 2 -2 -6 -7 -7 -5 -1 5 11 15 17 16 14 12 9 7 6 4 1 -2 -3 -2 4 12 20 22 19 14 8 4 1 -1 -3 -6 -9 -11 -12 -13 -14 -14 -14 -13 -9 -3 6 10 10 8 6 4 4 4 3 0 -5 -11 -12 -8 -2 3 -4 -2 8 14 10 2 -5 -10 -14 -16 -17 -15 -14 -14 -15 -15 -12 -7 -3 1 3 5 9 13 16 14 3 2 22 45 52 46 36 32 32 34 36 39 44 49 53 53 51 48 44 40 35 29 24 20 16 12 7 1 -5 -9 -11 -12 -13 -13 -11 -9 -8 -1 -2 -3 -5 -6 -7 -7 -7 -8 -8 -8 -9 -10 -11 -13 -13 -11 -9 -8 -9 -9 -11 -12 -13 -12 -11 -9 -8 -7 -6 -7 -7 -7 -6 -5 -5 -6 -7 -8 -8 -8 -9 -10 -11 -11 -11 -12 -12 -12 -10 -6 -1 3 6 7 4 -4 -7 -7 -9 -10 -9 -11 -11 -9 -7 -7 -5 -3 -4 -6 -8 -9 -11 -11 -12 -12 -13 -11 -8 -2 4 10 14 16 15 11 3 -7 -8 -8 -7 -5 -1 1 -3 -8 -10 -10 -11 -5 4 12 13 11 11 11 9 4 1 -4 -7 -10 -10 -8 -3 0 -0 -3 -7 -7 -6 -5 -4 -5 -6 -6 -6 -8 -12 -15 -16 -15 -14 -12 -12 -12 -11 -10 -10 -12 -12 -12 -11 -6 5 11 12 11 8 1 -5 -1 -4 -11 -16 -12 12 20 18 12 10 14 17 18 18 18 22 28 34 39 42 42 43 44 45 47 48 48 48 49 50 50 51 52 53 54 55 56 57 57 57 56 55 55 56 57 57 57 56 54 51 48 45 42 39 36 33 30 28 27 26 25 25 24 23 21 18 15 13 12 12 12 11 10 9 8 6 4 3 2 0 -2 -3 -4 -4 -4 -4 -5 -7 -10 -13 -15 -18 -20 -21 -22 -20 -18 -14 -9 -8 -9 -13 -18 -24 -27 -29 -28 -26 -23 -20 -14 -4 11 28 39 43 44 43 43 43 43 41 40 38 37 35 34 32 31 30 28 26 24 21 17 13 9 4 -1 -4 -7 -8 -7 -5 -1 6 12 16 18 18 15 12 10 8 6 3 -0 -3 -5 -3 2 12 19 22 19 14 8 4 1 -1 -4 -6 -8 -10 -12 -13 -14 -15 -15 -14 -9 1 9 12 11 7 3 1 1 1 1 -2 -8 -11 -10 -4 4 4 -6 -2 10 13 5 -2 -8 -12 -14 -15 -15 -14 -14 -14 -15 -12 -8 -4 -0 2 5 7 10 14 16 13 2 10 29 49 47 38 32 31 33 34 36 42 48 53 54 53 50 47 43 38 33 28 24 20 16 11 5 -2 -8 -12 -14 -14 -14 -13 -11 -10 -6 -8 -10 -10 -10 -8 -7 -7 -8 -9 -9 -10 -12 -14 -16 -17 -14 -10 -6 -5 -3 -2 -4 -7 -10 -11 -10 -7 -5 -3 -3 -4 -4 -5 -5 -5 -5 -6 -7 -8 -9 -10 -11 -11 -11 -11 -12 -13 -14 -13 -11 -7 -2 3 7 8 3 -5 -6 -8 -10 -11 -9 -11 -10 -6 -4 -4 -3 -3 -3 -5 -7 -9 -10 -11 -11 -12 -12 -10 -6 -1 4 10 13 14 12 8 -2 -8 -8 -6 -6 -5 -2 -2 -5 -9 -11 -11 -9 -1 9 13 11 11 12 11 7 3 -1 -5 -8 -10 -9 -7 -2 0 0 -4 -7 -6 -5 -3 -4 -5 -5 -5 -6 -11 -14 -16 -16 -15 -13 -12 -13 -13 -12 -11 -12 -13 -13 -13 -12 -4 3 7 8 8 6 -3 -2 -1 -5 -13 -13 8 22 24 19 15 16 19 21 21 21 23 26 31 36 40 40 41 42 42 43 45 47 49 50 51 52 53 53 54 55 56 58 59 59 59 58 57 58 58 59 60 60 59 57 54 51 47 44 40 37 35 32 29 27 26 26 26 26 24 22 20 17 15 14 14 14 14 14 13 11 9 7 5 3 1 -0 -2 -3 -4 -4 -4 -4 -5 -8 -11 -14 -17 -19 -22 -23 -23 -21 -18 -13 -9 -7 -10 -15 -22 -26 -28 -27 -25 -22 -21 -18 -12 -3 10 24 35 42 44 44 45 44 43 42 40 39 37 36 34 33 32 31 29 27 24 21 16 11 6 1 -3 -5 -7 -8 -8 -6 -1 7 14 19 21 20 17 13 10 8 5 2 -2 -5 -7 -6 1 11 19 22 20 13 8 3 0 -2 -3 -5 -7 -9 -11 -13 -16 -17 -17 -14 -8 4 12 14 11 5 1 -2 -2 -0 -0 -5 -10 -10 -6 2 6 1 -4 -1 11 8 1 -5 -10 -13 -14 -14 -14 -13 -13 -14 -12 -9 -5 -2 1 4 6 8 10 14 17 13 10 13 37 45 41 35 32 33 32 34 38 44 51 54 54 52 49 45 41 37 32 28 24 20 16 9 2 -6 -13 -15 -15 -15 -14 -12 -11 -13 -13 -11 -10 -8 -6 -5 -7 -10 -11 -9 -6 -4 -4 -7 -10 -12 -12 -10 -8 -7 -3 1 2 -1 -5 -6 -6 -4 -2 -0 -0 -2 -3 -4 -4 -5 -6 -7 -8 -9 -10 -10 -11 -11 -10 -11 -13 -14 -15 -15 -13 -9 -4 2 7 8 1 -5 -6 -8 -11 -11 -10 -10 -7 -3 -3 -3 -3 -1 -1 -3 -5 -7 -9 -10 -11 -12 -12 -9 -6 -2 3 7 10 11 9 4 -6 -8 -6 -5 -7 -6 -5 -5 -7 -9 -9 -10 -6 1 10 10 10 11 11 9 6 2 -1 -5 -8 -9 -9 -6 -2 1 -1 -5 -7 -6 -4 -2 -4 -4 -4 -5 -8 -12 -15 -17 -17 -15 -13 -14 -16 -15 -13 -11 -13 -13 -14 -14 -10 -3 2 4 6 6 3 -4 -2 1 -6 -10 2 19 28 25 18 18 21 24 25 25 27 29 32 35 38 38 38 39 40 42 43 44 47 50 52 54 55 55 56 56 57 59 60 61 61 60 60 60 61 62 63 63 62 60 57 54 50 46 42 39 36 33 31 28 27 26 26 27 26 24 21 18 16 16 16 17 17 17 16 14 12 9 6 4 3 1 -1 -3 -4 -4 -4 -4 -5 -7 -10 -13 -16 -18 -21 -23 -25 -24 -22 -17 -11 -7 -7 -11 -18 -24 -26 -26 -23 -21 -20 -18 -16 -11 -4 7 19 29 37 42 45 45 45 43 42 40 39 37 36 35 34 34 32 31 28 25 20 15 9 4 -1 -4 -6 -7 -8 -8 -6 0 8 17 23 24 21 18 13 10 7 4 0 -4 -7 -9 -7 -0 9 18 22 19 13 7 2 -0 -2 -3 -5 -7 -8 -11 -15 -17 -18 -17 -14 -5 6 15 15 9 3 -1 -3 -2 -1 -3 -7 -10 -9 -1 5 5 -1 -7 4 8 4 -2 -8 -11 -12 -13 -13 -13 -13 -13 -12 -9 -6 -3 -1 2 5 7 7 9 14 19 16 9 13 36 42 39 35 35 33 32 34 39 46 51 53 53 51 48 43 39 35 31 27 23 19 14 6 -3 -11 -15 -16 -16 -15 -13 -12 -11 -10 -9 -7 -6 -6 -8 -11 -12 -12 -11 -8 -7 -8 -9 -11 -11 -9 -8 -7 -6 -5 -4 -1 3 3 1 -2 -2 -1 1 1 0 -2 -3 -4 -4 -6 -7 -8 -9 -9 -10 -10 -9 -9 -9 -11 -13 -15 -17 -17 -16 -13 -7 -0 6 6 -1 -5 -7 -8 -12 -11 -10 -8 -3 -1 -3 -3 -3 -1 -1 -2 -4 -7 -9 -11 -12 -12 -11 -9 -7 -4 1 5 7 7 4 -4 -8 -7 -4 -7 -7 -7 -8 -8 -8 -7 -6 -6 -5 4 8 9 9 11 11 9 6 2 -1 -5 -8 -9 -8 -5 -1 1 -2 -5 -7 -6 -4 -3 -2 -3 -4 -6 -9 -13 -16 -18 -17 -14 -14 -15 -16 -15 -13 -13 -13 -14 -15 -14 -8 -4 0 2 4 5 0 -0 3 3 -4 -2 11 25 28 22 21 23 26 27 27 29 31 33 36 38 37 36 37 39 41 41 42 43 47 53 56 57 57 57 58 59 60 62 63 63 63 62 62 63 64 65 66 65 63 60 56 52 48 44 40 37 35 32 30 28 27 27 27 27 25 23 20 18 18 18 19 20 20 19 17 14 11 8 6 4 2 0 -2 -4 -5 -5 -4 -4 -6 -8 -11 -14 -17 -20 -23 -25 -26 -25 -21 -15 -9 -5 -7 -14 -20 -24 -24 -21 -18 -18 -18 -17 -14 -11 -5 3 12 21 28 34 39 42 44 43 42 40 39 38 37 37 36 36 34 32 29 24 19 13 7 2 -2 -4 -6 -7 -8 -8 -5 2 12 22 27 26 23 17 13 9 6 2 -2 -6 -9 -11 -8 -2 7 17 21 18 12 5 1 -1 -2 -3 -5 -6 -9 -12 -16 -18 -18 -17 -12 -3 9 17 12 6 1 -2 -2 -0 -1 -5 -9 -10 -5 2 6 3 -5 -5 3 5 0 -6 -10 -11 -12 -13 -13 -12 -13 -11 -9 -6 -4 -3 -0 3 6 6 5 9 16 22 21 -1 23 38 43 41 38 35 32 30 32 38 45 50 53 52 49 45 41 37 34 30 26 22 17 10 2 -8 -14 -17 -18 -17 -15 -13 -9 -8 -7 -7 -7 -10 -12 -14 -15 -14 -12 -10 -8 -7 -7 -7 -7 -6 -6 -6 -6 -5 -5 -4 -1 2 4 2 0 -0 1 2 1 -1 -2 -3 -4 -5 -6 -7 -8 -9 -9 -9 -9 -9 -8 -9 -11 -14 -17 -19 -20 -19 -16 -10 -3 4 4 -2 -7 -5 -8 -11 -10 -9 -8 -1 -0 -3 -5 -5 -2 -1 -2 -4 -7 -10 -12 -12 -11 -10 -10 -8 -5 -1 2 3 2 -3 -9 -9 -3 -5 -7 -7 -7 -9 -9 -7 -5 -2 -2 -7 3 7 9 10 12 11 8 4 1 -3 -7 -8 -9 -8 -6 -1 1 -2 -6 -8 -7 -3 -1 -1 -3 -5 -7 -11 -14 -17 -18 -16 -13 -13 -15 -17 -16 -14 -13 -13 -15 -15 -12 -8 -5 -1 2 4 5 1 0 9 4 -2 3 16 27 26 25 26 28 29 29 31 33 36 38 39 37 37 38 40 41 40 40 42 47 54 57 59 59 59 59 60 61 63 64 65 65 64 64 65 66 68 68 68 66 62 59 54 50 45 42 39 37 34 32 29 28 28 28 27 26 24 22 20 20 20 22 23 23 22 20 17 14 11 9 6 4 1 -2 -5 -7 -6 -5 -5 -5 -7 -10 -13 -15 -18 -21 -24 -26 -27 -25 -20 -13 -6 -3 -7 -14 -20 -21 -19 -16 -16 -16 -16 -15 -13 -11 -7 -1 5 10 14 19 25 33 39 41 41 40 40 39 39 39 39 38 36 33 29 23 17 10 4 -0 -3 -4 -5 -6 -8 -7 -3 4 16 26 30 28 22 16 12 8 5 1 -4 -8 -11 -13 -11 -5 6 15 19 18 11 5 1 -1 -2 -4 -5 -7 -10 -13 -17 -18 -17 -16 -11 -2 12 13 8 3 -1 -1 1 1 -2 -6 -10 -8 -1 5 6 0 -7 -3 2 2 -3 -8 -10 -11 -12 -13 -12 -12 -11 -8 -5 -3 -4 -3 0 5 5 3 4 10 20 29 21 21 30 44 46 42 38 33 29 27 29 35 42 48 51 50 47 42 39 35 33 29 25 20 14 7 -2 -10 -16 -19 -19 -17 -15 -8 -8 -7 -8 -9 -12 -15 -16 -14 -12 -10 -8 -8 -7 -7 -6 -6 -7 -8 -8 -8 -7 -4 -4 -5 -5 -1 1 1 1 2 2 1 -1 -3 -4 -4 -4 -4 -4 -5 -6 -8 -9 -9 -9 -9 -9 -10 -12 -15 -18 -20 -21 -21 -17 -11 -3 2 2 -3 -8 -3 -7 -10 -10 -9 -8 -2 -1 -4 -6 -5 -2 -1 -2 -4 -7 -9 -10 -10 -10 -10 -10 -7 -4 -1 0 0 -3 -8 -9 -3 -3 -6 -6 -5 -6 -10 -9 -6 -2 1 -0 -5 1 6 8 9 9 8 6 3 -1 -5 -7 -9 -10 -10 -6 -1 0 -3 -7 -10 -7 -3 -0 -1 -3 -6 -8 -12 -15 -18 -18 -15 -13 -14 -17 -18 -15 -12 -12 -13 -14 -14 -11 -8 -5 -2 2 5 1 -3 7 10 3 -1 4 18 28 29 29 30 32 33 32 34 37 39 39 38 39 40 41 42 41 41 43 49 56 59 60 61 61 60 61 62 64 65 66 66 66 66 67 68 70 71 70 68 65 61 56 52 47 43 41 39 37 34 31 29 28 28 28 27 26 24 23 22 23 24 25 25 24 23 20 17 15 12 9 6 2 -2 -6 -8 -8 -6 -5 -5 -7 -9 -12 -14 -16 -18 -22 -25 -28 -27 -24 -18 -11 -4 -3 -7 -13 -17 -16 -14 -14 -14 -15 -14 -14 -13 -11 -9 -5 -2 0 2 4 10 18 26 32 36 39 40 41 41 41 41 40 37 33 28 21 14 8 2 -1 -3 -3 -4 -6 -7 -6 -2 8 21 29 32 27 20 15 11 7 3 -1 -6 -10 -13 -15 -14 -7 4 13 19 17 10 4 1 -2 -3 -5 -7 -8 -11 -14 -16 -17 -16 -15 -11 1 9 9 3 -2 -1 2 4 2 -2 -8 -9 -5 1 6 4 -4 -6 -3 0 -2 -6 -9 -11 -11 -12 -13 -12 -11 -8 -4 -2 -4 -4 -3 2 4 2 2 6 14 26 31 23 23 36 46 43 40 36 31 25 24 26 32 39 46 49 47 44 40 36 34 31 27 22 17 11 4 -4 -12 -18 -20 -19 -17 -9 -8 -7 -7 -8 -10 -12 -12 -10 -8 -7 -8 -9 -9 -9 -9 -9 -10 -10 -10 -11 -10 -8 -6 -4 -5 -7 -6 -4 -2 -0 0 -0 -1 -2 -4 -4 -4 -3 -2 -2 -3 -4 -6 -7 -8 -9 -10 -11 -12 -14 -17 -18 -19 -19 -18 -16 -10 -3 1 1 -4 -7 -3 -5 -8 -10 -8 -7 -3 -3 -4 -6 -4 -2 -1 -2 -4 -7 -8 -10 -10 -10 -10 -8 -5 -2 -0 -0 -1 -6 -9 -6 -1 -5 -7 -6 -5 -6 -9 -7 -3 -1 2 -1 -4 -1 5 7 8 9 8 5 2 -2 -5 -8 -10 -11 -10 -5 -1 -0 -4 -9 -10 -6 -1 2 -0 -4 -6 -8 -13 -18 -20 -17 -14 -14 -16 -17 -16 -13 -12 -12 -13 -13 -12 -10 -7 -4 -1 2 3 1 0 10 8 0 -4 3 21 29 31 32 34 36 34 36 39 41 40 39 39 39 41 41 41 41 42 46 52 56 58 60 62 62 62 63 64 66 67 67 68 68 69 70 72 73 73 71 68 64 59 54 49 45 42 41 39 36 33 30 29 28 28 28 27 26 25 25 25 26 26 26 26 25 24 21 18 15 12 8 4 -1 -5 -7 -8 -7 -5 -5 -6 -8 -10 -12 -14 -16 -19 -23 -27 -28 -27 -23 -18 -10 -4 -3 -7 -12 -13 -13 -13 -13 -13 -14 -13 -13 -13 -12 -10 -6 -4 -4 -5 -6 -2 3 9 16 23 30 36 41 43 44 43 41 38 33 27 19 12 5 1 -1 -1 -2 -4 -6 -7 -6 -0 12 24 32 32 25 19 13 9 6 2 -3 -8 -12 -16 -17 -16 -9 1 12 19 15 9 4 -0 -3 -5 -7 -8 -9 -10 -13 -16 -16 -15 -14 -9 2 6 3 -3 -5 -0 5 6 3 -4 -8 -7 -3 3 5 1 -5 -7 -3 -2 -5 -8 -10 -11 -11 -12 -12 -11 -8 -3 -0 -2 -4 -5 -2 2 2 1 3 10 20 29 31 28 23 32 37 38 37 33 27 22 20 22 27 35 42 45 45 41 38 36 33 29 25 20 15 10 3 -6 -15 -20 -21 -20 -9 -6 -4 -4 -4 -5 -5 -5 -4 -3 -5 -6 -7 -8 -7 -7 -8 -8 -8 -8 -7 -8 -10 -10 -10 -7 -7 -8 -9 -9 -9 -8 -8 -7 -6 -4 -4 -4 -3 -2 -1 -1 -2 -3 -4 -6 -8 -9 -11 -12 -13 -15 -16 -17 -17 -17 -16 -13 -9 -4 -0 -0 -4 -5 -3 -3 -8 -10 -10 -7 -4 -3 -5 -5 -4 -2 -2 -2 -4 -6 -8 -10 -10 -9 -8 -5 -2 -0 0 0 -2 -6 -9 -4 -5 -7 -8 -6 -4 -7 -7 -5 -2 -1 1 -2 -4 -2 4 6 8 7 6 3 -0 -3 -6 -9 -12 -13 -9 -4 0 -1 -6 -10 -9 -5 1 3 -1 -4 -6 -9 -15 -18 -17 -16 -15 -15 -16 -16 -15 -14 -13 -13 -12 -12 -11 -8 -5 -2 -0 1 1 -9 6 10 5 -5 -10 6 22 31 34 35 36 37 38 41 43 41 38 37 37 37 38 38 39 41 44 50 56 58 61 64 64 63 64 66 67 68 68 69 70 70 72 73 74 74 73 71 67 62 57 52 47 44 42 40 38 34 31 30 29 28 28 28 27 27 27 27 27 28 28 28 27 27 25 22 19 15 11 7 2 -3 -6 -7 -6 -4 -4 -5 -6 -9 -11 -12 -14 -17 -20 -25 -28 -28 -27 -23 -17 -9 -4 -3 -6 -9 -11 -11 -11 -12 -12 -13 -13 -13 -13 -12 -9 -5 -3 -3 -6 -10 -10 -9 -5 -0 6 15 26 36 43 45 44 41 37 32 24 16 9 4 1 1 -0 -2 -4 -6 -8 -6 3 16 28 33 29 23 17 12 8 4 -0 -5 -10 -14 -18 -19 -18 -12 -1 12 16 14 8 2 -1 -5 -7 -9 -9 -9 -10 -13 -15 -15 -13 -13 -5 2 3 -4 -8 -6 0 6 7 1 -5 -8 -6 -1 3 3 -2 -6 -6 -4 -5 -7 -9 -10 -10 -12 -12 -11 -9 -3 2 1 -2 -6 -5 -1 0 -0 1 6 16 25 30 27 17 9 19 28 34 35 30 24 19 16 16 20 30 38 43 43 40 37 34 31 27 22 18 14 9 2 -9 -18 -23 -23 -7 -4 -2 -2 -3 -3 -1 1 3 4 4 3 1 0 -1 -3 -5 -7 -8 -6 -4 -3 -5 -8 -11 -12 -11 -10 -9 -8 -7 -6 -6 -5 -5 -6 -8 -8 -5 -3 -2 -1 -1 -2 -3 -4 -5 -7 -9 -11 -12 -13 -14 -15 -15 -15 -15 -15 -12 -9 -5 -1 1 -3 -4 -3 -3 -7 -10 -10 -6 -2 -3 -5 -5 -4 -2 -2 -2 -4 -6 -8 -9 -9 -8 -5 -3 -0 1 2 1 -3 -9 -7 -6 -8 -9 -8 -5 -4 -7 -7 -4 -3 -2 -1 -3 -5 -3 3 5 5 4 2 1 -1 -4 -8 -11 -13 -12 -7 -2 0 -2 -8 -11 -10 -5 2 3 1 -2 -6 -10 -15 -17 -16 -15 -14 -15 -16 -16 -15 -14 -13 -12 -12 -12 -10 -7 -4 -2 0 2 -3 1 7 7 -0 -12 -11 6 23 32 34 37 38 39 40 43 41 36 34 34 33 31 32 34 37 42 49 56 61 65 67 65 65 66 67 68 69 70 71 71 72 73 74 76 76 75 73 70 65 60 55 50 46 44 42 39 36 33 31 29 28 28 29 29 29 29 29 29 29 29 29 29 29 28 26 23 19 14 10 5 0 -3 -5 -4 -3 -2 -3 -5 -7 -9 -11 -12 -14 -18 -22 -26 -28 -28 -26 -22 -16 -8 -2 -1 -5 -8 -9 -9 -10 -11 -11 -12 -13 -13 -13 -12 -8 -3 -0 -2 -6 -9 -12 -14 -14 -11 -5 3 13 27 39 44 45 42 36 29 21 14 8 4 3 1 -0 -2 -4 -7 -9 -5 5 20 31 31 27 21 16 11 7 2 -3 -8 -12 -16 -19 -21 -20 -15 -2 10 15 13 6 1 -3 -6 -8 -9 -8 -8 -10 -12 -15 -13 -13 -9 -3 3 -2 -8 -9 -6 0 7 4 -2 -7 -8 -4 0 3 1 -4 -8 -6 -6 -7 -8 -10 -9 -10 -11 -12 -10 -3 3 4 1 -5 -7 -3 -1 -1 -1 4 12 21 26 24 14 1 -2 5 21 31 31 26 20 14 10 9 14 24 36 42 42 39 36 33 29 24 20 16 12 7 -2 -13 -21 -25 -7 -6 -5 -5 -6 -7 -7 -6 -6 -5 -5 -5 -6 -6 -7 -8 -9 -9 -8 -7 -5 -4 -3 -4 -7 -9 -10 -10 -9 -9 -8 -8 -7 -6 -5 -4 -4 -5 -6 -7 -6 -3 -2 -1 -2 -2 -3 -5 -7 -9 -10 -12 -13 -14 -14 -15 -15 -15 -14 -13 -11 -6 -0 1 -2 -4 -3 -3 -7 -9 -6 -3 -1 -4 -5 -5 -3 -2 -2 -2 -3 -5 -7 -8 -8 -6 -4 -1 1 2 2 0 -5 -10 -7 -7 -9 -9 -8 -4 -5 -7 -7 -4 -5 -3 -1 -3 -6 -3 1 2 1 1 2 1 -1 -5 -9 -12 -13 -10 -5 -1 -1 -5 -9 -12 -11 -3 4 6 3 -1 -5 -12 -16 -16 -15 -14 -14 -15 -15 -15 -15 -13 -12 -12 -12 -11 -10 -7 -3 0 2 2 -7 -1 6 4 -4 -12 -8 6 23 31 35 37 39 40 42 39 36 34 33 30 24 25 28 33 39 46 55 64 69 70 68 67 68 69 70 71 72 72 73 74 74 75 77 77 77 75 73 69 64 58 52 48 45 43 41 38 34 32 30 29 28 29 29 30 30 30 30 30 30 30 31 32 31 29 26 22 17 13 8 4 0 -2 -2 -1 -0 -1 -2 -5 -8 -9 -11 -12 -15 -19 -23 -26 -28 -28 -25 -21 -13 -5 1 -1 -4 -6 -7 -8 -9 -10 -11 -12 -13 -13 -13 -10 -6 -1 0 -3 -6 -9 -11 -13 -13 -13 -11 -6 3 17 31 41 45 41 34 26 18 12 8 6 3 1 -1 -3 -6 -10 -10 -5 9 24 29 29 25 20 15 10 6 0 -5 -10 -14 -18 -20 -22 -21 -15 -1 10 15 11 4 -1 -4 -7 -8 -8 -8 -8 -10 -13 -14 -12 -10 -7 2 0 -5 -9 -9 -7 1 4 0 -5 -9 -7 -3 0 1 -2 -9 -9 -8 -8 -9 -11 -9 -9 -10 -12 -11 -5 2 6 5 -2 -7 -5 -3 -2 -2 2 9 17 23 23 12 -1 -7 -5 4 21 27 26 22 15 9 4 2 7 20 35 40 41 38 34 30 25 20 16 12 9 4 -7 -17 -25 -2 -1 -1 -1 -2 -2 -1 -1 -2 -2 -1 -0 0 0 -1 -3 -5 -5 -5 -4 -4 -6 -6 -6 -7 -8 -8 -8 -8 -9 -9 -9 -8 -7 -6 -4 -3 -3 -4 -6 -7 -6 -5 -4 -3 -2 -1 -2 -4 -5 -7 -9 -11 -13 -14 -15 -15 -15 -15 -15 -14 -12 -7 0 3 -0 -6 -4 -3 -4 -4 -2 -1 -4 -5 -5 -4 -3 -3 -2 -2 -3 -5 -7 -8 -7 -5 -2 -0 1 2 1 -2 -10 -9 -7 -8 -10 -10 -7 -5 -5 -8 -8 -6 -6 -4 -1 -3 -7 -4 -1 -1 -1 0 2 2 -1 -5 -9 -11 -11 -8 -4 -1 -3 -7 -11 -13 -10 0 7 9 6 1 -7 -13 -16 -16 -14 -13 -14 -15 -16 -16 -14 -13 -13 -13 -13 -12 -10 -6 -2 2 3 -4 -4 2 7 2 -8 -13 -8 5 21 31 35 37 39 40 39 37 34 32 29 25 21 22 27 34 42 52 63 71 72 70 69 69 69 71 74 74 74 74 75 75 76 77 78 78 77 75 72 67 62 55 50 47 44 42 39 35 33 31 29 29 29 30 31 31 31 30 31 31 32 33 34 34 32 29 25 20 16 12 7 4 1 1 2 2 2 0 -2 -5 -7 -9 -10 -13 -16 -20 -23 -26 -28 -27 -24 -18 -9 1 3 0 -3 -5 -5 -7 -8 -10 -11 -12 -13 -13 -12 -9 -3 1 -1 -4 -7 -10 -12 -13 -12 -11 -11 -11 -5 8 23 37 44 39 32 23 16 12 9 6 3 1 -1 -4 -9 -12 -11 -3 13 24 28 27 23 19 14 9 3 -2 -8 -12 -16 -19 -21 -22 -20 -13 -0 13 15 8 3 -2 -5 -7 -8 -8 -8 -8 -10 -13 -12 -11 -9 -2 1 -3 -7 -9 -9 -6 -1 -1 -5 -9 -9 -8 -4 -2 -3 -9 -12 -12 -12 -12 -13 -10 -8 -9 -11 -12 -7 1 7 8 2 -5 -6 -4 -2 -3 1 7 14 21 22 12 0 -7 -8 -5 18 25 25 22 16 11 5 -2 -5 -1 20 33 39 40 36 31 26 20 15 10 7 4 -2 -12 -23 2 2 2 1 0 -0 1 1 2 2 1 2 2 1 -1 -4 -7 -7 -6 -4 -5 -6 -7 -7 -8 -8 -7 -7 -8 -9 -10 -10 -9 -8 -7 -6 -6 -5 -4 -3 -4 -6 -7 -7 -6 -5 -3 -2 -2 -3 -4 -6 -8 -11 -13 -15 -15 -16 -16 -16 -15 -14 -13 -7 0 5 3 -8 -7 -3 -1 -1 -1 -3 -5 -5 -4 -4 -4 -4 -2 -2 -4 -6 -6 -7 -6 -4 -2 -1 -0 0 -0 -5 -11 -9 -7 -9 -11 -10 -8 -6 -6 -11 -9 -8 -7 -4 1 -3 -8 -6 -3 -4 -2 1 3 2 -1 -5 -8 -9 -9 -7 -4 -3 -4 -8 -13 -14 -6 4 11 12 8 1 -7 -13 -15 -14 -12 -12 -14 -16 -17 -15 -14 -13 -13 -13 -14 -13 -9 -5 -0 2 -1 -6 -3 6 6 -4 -11 -13 -7 4 19 29 34 37 40 40 36 30 26 24 22 19 17 20 26 35 46 59 68 71 70 68 66 66 68 74 77 77 76 76 76 77 78 78 79 78 77 74 71 65 59 53 48 46 44 41 37 34 31 30 29 30 31 32 32 31 31 31 32 33 35 36 36 34 31 28 23 19 15 11 7 4 3 4 5 5 3 0 -3 -5 -7 -8 -10 -14 -17 -21 -24 -26 -27 -26 -22 -14 -2 4 4 1 -2 -3 -4 -6 -8 -10 -12 -13 -13 -13 -11 -8 -1 1 -1 -5 -9 -12 -13 -13 -11 -9 -8 -10 -9 -1 14 32 39 37 29 21 16 12 8 5 3 1 -2 -6 -11 -14 -12 2 16 24 27 25 21 17 13 7 1 -5 -10 -14 -17 -19 -21 -20 -18 -11 4 14 12 7 2 -2 -5 -7 -9 -9 -8 -8 -11 -11 -11 -9 -7 -1 -2 -5 -9 -9 -10 -8 -6 -7 -10 -12 -13 -10 -6 -5 -8 -12 -15 -17 -17 -17 -14 -11 -9 -10 -12 -9 -2 7 11 6 -3 -6 -6 -3 -3 -0 5 12 19 21 13 4 -2 -3 -10 17 27 27 22 16 13 8 1 -7 -15 0 18 33 39 39 33 27 21 15 8 3 -0 -3 -9 -18 -1 -1 -1 -1 -1 0 2 3 2 1 -0 -1 -1 -2 -4 -7 -10 -10 -7 -4 -5 -6 -6 -7 -7 -6 -6 -7 -8 -9 -10 -10 -10 -8 -7 -6 -6 -7 -7 -6 -4 -3 -3 -5 -8 -9 -9 -6 -4 -3 -2 -2 -4 -7 -11 -13 -15 -16 -16 -15 -15 -14 -14 -13 -9 -1 5 3 -6 -6 -2 1 -0 -2 -4 -5 -5 -5 -6 -6 -5 -3 -2 -3 -5 -6 -6 -5 -4 -3 -3 -2 -1 -1 -9 -11 -8 -6 -9 -10 -10 -9 -7 -9 -10 -8 -6 -6 -4 1 -3 -9 -10 -4 -4 -2 0 2 2 -0 -3 -5 -6 -6 -5 -4 -3 -5 -10 -15 -14 -5 6 14 14 9 1 -6 -11 -12 -11 -11 -13 -15 -17 -16 -15 -14 -13 -14 -16 -16 -13 -7 -3 -0 -2 -6 -7 -2 6 0 -7 -12 -12 -8 4 16 25 32 37 40 37 30 23 19 14 9 7 9 13 22 29 37 45 52 59 62 64 64 65 70 76 78 78 77 77 77 78 79 79 78 78 76 73 68 62 55 50 47 45 42 38 34 32 31 30 31 32 33 32 31 31 31 32 34 36 37 38 36 34 31 27 23 19 15 11 7 6 6 7 8 6 3 0 -2 -4 -5 -8 -11 -14 -18 -21 -24 -26 -26 -24 -19 -8 3 7 5 2 -1 -2 -4 -7 -9 -11 -12 -13 -13 -13 -12 -5 -0 1 -2 -7 -11 -13 -13 -12 -10 -7 -5 -5 -8 -10 7 25 34 34 27 20 14 10 7 5 4 1 -3 -9 -14 -16 -9 5 17 24 25 23 20 16 11 4 -2 -8 -13 -15 -17 -19 -19 -19 -16 -10 7 13 11 6 1 -2 -6 -9 -11 -10 -7 -8 -10 -11 -10 -9 -4 -3 -5 -11 -12 -12 -13 -13 -12 -11 -15 -17 -15 -10 -6 -5 -9 -13 -17 -20 -20 -19 -16 -11 -10 -12 -10 -4 4 12 9 -0 -6 -7 -4 -3 -1 3 11 18 20 15 8 5 7 -2 16 28 32 27 19 16 11 5 -4 -13 -14 -0 17 33 39 36 31 24 17 10 1 -7 -12 -13 -15 -3 -2 -1 -0 1 4 5 5 4 2 0 -1 -2 -3 -4 -5 -7 -7 -5 -3 -3 -5 -6 -6 -5 -4 -4 -5 -6 -7 -8 -8 -8 -8 -7 -7 -7 -7 -7 -7 -6 -5 -3 -2 -2 -4 -7 -9 -10 -9 -8 -6 -4 -4 -5 -8 -10 -13 -13 -13 -13 -13 -14 -14 -12 -8 -3 2 1 -4 -6 -4 -1 -1 -2 -4 -5 -4 -4 -6 -6 -5 -2 -1 -3 -5 -7 -7 -6 -5 -4 -3 -2 -0 -5 -11 -11 -5 -7 -9 -10 -10 -11 -10 -10 -9 -8 -7 -7 -5 -3 -5 -9 -9 -4 -4 -4 -2 -0 1 0 -1 -2 -3 -4 -4 -3 -4 -6 -12 -16 -14 -6 6 16 15 9 3 -3 -7 -8 -9 -11 -14 -17 -17 -15 -14 -14 -14 -16 -18 -15 -10 -5 -2 -4 -6 -8 -9 2 2 -3 -8 -11 -12 -6 1 10 19 26 33 35 34 28 20 12 8 7 10 13 16 17 18 19 24 35 47 56 60 60 61 65 71 76 80 79 78 78 79 79 78 78 78 75 71 65 58 52 49 46 44 39 35 33 31 31 32 33 34 33 32 31 31 32 34 36 38 38 38 37 34 31 27 23 19 15 11 9 9 10 10 9 6 3 0 -1 -3 -5 -8 -11 -15 -19 -21 -24 -25 -25 -22 -14 -2 7 9 6 3 0 -2 -5 -8 -10 -12 -13 -13 -13 -14 -10 -4 1 1 -3 -8 -12 -13 -12 -10 -9 -6 -2 1 -2 -11 0 17 30 32 24 17 12 8 7 6 4 0 -5 -11 -16 -15 -6 6 18 22 22 21 18 14 8 1 -6 -11 -14 -16 -18 -18 -18 -17 -17 -4 8 13 10 6 1 -3 -8 -12 -12 -8 -6 -7 -10 -10 -12 -9 -8 -9 -14 -17 -15 -16 -17 -17 -14 -18 -20 -19 -13 -7 -5 -7 -11 -16 -21 -23 -23 -20 -15 -11 -13 -12 -7 1 11 11 3 -5 -7 -4 -3 -2 2 8 16 19 17 12 10 16 11 14 22 31 31 22 18 14 8 -1 -10 -12 -13 -5 17 34 38 35 28 21 14 4 -8 -18 -21 -18 -1 1 2 4 5 6 6 5 4 3 3 2 1 0 0 -0 -1 -1 -2 -2 -2 -2 -5 -7 -7 -6 -5 -6 -6 -7 -7 -8 -7 -5 -5 -5 -6 -7 -7 -7 -6 -4 -4 -4 -4 -4 -4 -4 -5 -7 -9 -11 -11 -9 -7 -5 -6 -7 -9 -10 -11 -11 -12 -13 -13 -11 -8 -3 0 -1 -4 -7 -5 -1 -1 -2 -3 -3 -3 -5 -6 -6 -4 -2 -2 -4 -6 -8 -8 -6 -5 -4 -3 -1 -3 -8 -10 -8 -6 -7 -8 -10 -12 -12 -11 -10 -9 -8 -8 -9 -7 -5 -6 -10 -5 -3 -4 -5 -4 -2 -0 1 2 2 1 -1 -3 -4 -5 -7 -12 -15 -14 -7 5 13 14 11 6 1 -2 -5 -9 -12 -16 -16 -15 -15 -15 -15 -16 -17 -15 -12 -7 -4 -6 -8 -10 -10 -6 1 1 -4 -10 -12 -9 -6 -2 3 9 15 22 28 30 24 16 12 11 15 19 20 18 15 11 7 10 19 31 42 50 51 52 56 65 75 79 79 79 79 78 78 78 78 77 74 68 61 54 50 48 45 41 36 33 32 31 33 34 35 34 33 31 31 32 34 36 37 39 40 40 38 35 31 27 23 19 15 12 12 13 13 12 9 6 3 1 -0 -2 -4 -8 -12 -16 -19 -21 -23 -24 -24 -20 -9 2 9 10 7 3 -0 -3 -6 -9 -11 -13 -14 -14 -14 -13 -8 -1 3 1 -5 -10 -12 -12 -10 -9 -7 -5 -0 5 3 -6 -5 9 27 24 18 12 8 6 6 5 3 -0 -6 -12 -15 -13 -4 9 17 19 19 19 17 11 4 -3 -9 -13 -15 -16 -17 -17 -17 -17 -13 -1 10 14 11 6 -0 -6 -12 -15 -11 -7 -5 -8 -11 -14 -15 -14 -13 -15 -17 -16 -16 -19 -21 -21 -22 -24 -23 -16 -9 -7 -8 -11 -16 -22 -25 -25 -23 -20 -12 -13 -13 -9 -3 8 11 5 -3 -8 -5 -4 -3 -0 5 12 16 16 13 12 19 20 15 15 22 27 22 20 17 10 2 -7 -11 -11 -9 -11 20 34 37 33 26 19 10 -4 -18 -24 -24 3 3 4 4 4 3 2 1 0 1 1 1 1 1 1 1 1 2 4 3 -1 -4 -2 -3 -6 -8 -8 -8 -8 -8 -9 -8 -7 -6 -4 -4 -5 -6 -6 -6 -6 -5 -5 -5 -5 -6 -6 -5 -5 -4 -5 -6 -7 -8 -9 -9 -7 -6 -6 -7 -8 -10 -11 -12 -12 -12 -10 -6 -3 -1 -2 -5 -8 -4 -1 -0 -1 -2 -2 -3 -5 -6 -5 -3 -2 -2 -4 -6 -8 -7 -6 -5 -3 -2 -3 -5 -8 -9 -6 -6 -6 -8 -11 -12 -11 -11 -10 -8 -8 -9 -10 -8 -6 -8 -8 -4 -2 -3 -5 -5 -3 -1 3 5 6 4 -0 -3 -4 -4 -7 -12 -15 -14 -8 2 8 11 11 8 4 0 -5 -9 -13 -15 -15 -15 -16 -16 -16 -16 -15 -14 -11 -6 -7 -10 -12 -12 -14 -3 2 -1 -8 -12 -9 -6 -5 -5 -4 -2 4 11 18 21 18 15 16 19 24 24 23 19 13 6 1 2 8 19 32 40 41 43 49 58 66 71 76 79 79 78 78 78 78 75 70 63 56 51 49 46 42 38 35 32 32 33 35 36 35 34 32 32 32 33 35 37 39 41 43 42 39 36 32 27 23 19 16 15 15 15 14 12 8 5 3 2 1 -2 -5 -8 -13 -16 -19 -21 -23 -24 -23 -16 -6 6 12 10 7 3 -1 -4 -7 -10 -13 -14 -14 -13 -14 -11 -5 3 4 -1 -7 -11 -12 -11 -9 -7 -6 -3 1 5 5 -1 -11 1 13 13 10 7 4 3 3 3 2 -1 -7 -12 -14 -12 -2 10 15 17 17 17 14 8 0 -7 -12 -14 -15 -16 -16 -16 -16 -16 -9 3 14 15 11 4 -3 -10 -15 -14 -9 -4 -4 -10 -16 -18 -18 -17 -16 -17 -16 -17 -21 -22 -26 -28 -29 -28 -20 -14 -12 -12 -12 -15 -20 -24 -26 -26 -24 -15 -13 -13 -12 -7 4 9 6 -2 -8 -7 -5 -4 -3 1 6 11 14 14 14 20 24 24 19 9 11 13 16 16 11 2 -6 -11 -11 -9 -12 7 24 35 36 30 24 16 3 -14 -23 -25 1 1 -0 -2 -3 -4 -6 -7 -7 -7 -6 -5 -4 -4 -3 -3 -2 -1 2 4 4 -0 -4 -5 -4 -5 -7 -8 -8 -8 -9 -8 -7 -6 -5 -5 -5 -6 -6 -6 -6 -6 -5 -6 -6 -6 -7 -7 -7 -6 -5 -4 -4 -5 -7 -8 -8 -8 -6 -5 -6 -8 -10 -11 -11 -11 -10 -8 -6 -4 -3 -3 -7 -7 -3 -0 1 -1 -1 -2 -4 -5 -6 -5 -3 -2 -2 -4 -7 -8 -7 -6 -4 -3 -3 -4 -6 -9 -8 -6 -6 -7 -8 -9 -11 -11 -10 -9 -7 -8 -10 -9 -8 -7 -9 -7 -3 -2 -3 -6 -6 -5 -1 5 9 8 4 0 -2 -2 -4 -9 -14 -16 -14 -8 -1 5 9 9 7 5 0 -5 -10 -13 -14 -15 -16 -16 -16 -16 -16 -16 -15 -11 -9 -11 -16 -18 -16 -8 -2 -1 -6 -10 -9 -7 -5 -3 -3 -3 -5 -6 -2 8 15 17 20 22 25 26 25 22 18 12 5 0 -0 4 16 28 33 35 39 46 53 61 70 77 79 78 78 79 78 77 72 65 58 52 49 47 43 39 36 34 33 34 36 37 37 35 33 32 32 32 34 36 39 43 46 46 44 40 36 32 27 23 20 18 18 18 17 14 10 7 5 4 3 1 -2 -5 -10 -13 -16 -19 -21 -23 -24 -21 -13 -1 10 12 10 6 2 -2 -5 -9 -12 -14 -15 -14 -13 -13 -9 0 5 2 -4 -9 -12 -11 -9 -7 -6 -5 -2 2 5 4 -2 -12 -7 1 7 7 3 -1 -2 -2 -0 -0 -3 -7 -11 -14 -10 1 10 14 15 14 13 10 4 -4 -11 -14 -15 -15 -15 -15 -15 -16 -14 -6 9 16 15 9 1 -7 -14 -15 -12 -6 -1 -6 -14 -19 -20 -19 -17 -17 -17 -19 -25 -25 -27 -28 -28 -24 -21 -19 -17 -15 -12 -13 -16 -20 -23 -24 -23 -15 -12 -14 -16 -12 -2 6 6 -1 -9 -8 -8 -7 -6 -3 -0 7 13 16 17 21 27 31 28 10 -7 -2 6 10 10 2 -6 -10 -10 -8 -9 -10 4 26 35 33 28 21 10 -8 -21 -25 -5 -6 -7 -8 -9 -9 -11 -12 -12 -12 -12 -12 -11 -10 -10 -9 -9 -8 -6 -3 -0 1 -0 -4 -6 -7 -7 -7 -7 -7 -8 -7 -7 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -7 -7 -7 -7 -8 -8 -9 -8 -7 -5 -4 -4 -5 -5 -7 -7 -6 -5 -6 -9 -10 -11 -11 -10 -8 -7 -6 -5 -4 -4 -8 -6 -1 2 2 -0 -1 -2 -4 -6 -6 -5 -3 -2 -3 -7 -9 -9 -7 -4 -3 -3 -4 -6 -7 -9 -8 -7 -5 -5 -6 -9 -10 -10 -9 -7 -7 -9 -10 -9 -8 -8 -8 -6 -2 -1 -3 -6 -8 -6 -0 7 10 8 4 1 -1 -2 -6 -11 -15 -15 -12 -8 -4 1 4 6 7 5 0 -5 -9 -12 -14 -16 -17 -17 -16 -16 -17 -16 -14 -10 -12 -17 -20 -16 -11 -5 -2 -2 -7 -9 -8 -6 -4 -2 -2 -4 -6 -8 -6 6 15 21 24 27 28 27 24 21 18 11 5 1 1 7 18 26 32 37 41 44 52 63 73 77 78 78 79 79 77 73 67 60 53 49 47 44 41 37 35 34 35 37 38 37 36 34 32 31 31 34 37 41 45 48 50 48 44 40 36 32 27 24 22 21 20 18 15 12 8 6 5 4 3 1 -2 -6 -10 -13 -16 -19 -21 -23 -23 -18 -9 4 11 12 10 5 1 -3 -7 -10 -13 -14 -14 -13 -12 -11 -5 3 3 -1 -7 -10 -11 -10 -7 -6 -6 -5 -1 1 2 -0 -6 -8 -4 3 9 6 1 -5 -7 -7 -4 -3 -4 -8 -12 -14 -7 3 11 14 12 11 9 5 -1 -9 -14 -15 -15 -15 -15 -15 -15 -15 -12 -1 13 17 14 6 -4 -12 -15 -14 -9 -2 -3 -10 -17 -21 -20 -17 -16 -17 -21 -28 -28 -27 -27 -24 -19 -19 -23 -22 -17 -14 -13 -14 -17 -19 -20 -19 -12 -10 -12 -17 -16 -9 -0 4 -1 -10 -10 -11 -11 -9 -6 -4 3 11 17 20 24 29 32 28 8 -6 -11 -7 -1 5 -0 -7 -11 -10 -7 -7 -9 -7 4 27 32 30 25 16 2 -19 -25 -8 -9 -9 -10 -10 -11 -11 -12 -13 -13 -13 -12 -13 -14 -14 -15 -16 -17 -16 -13 -9 -6 -3 -3 -4 -7 -9 -7 -6 -5 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -7 -8 -8 -8 -9 -10 -10 -10 -10 -9 -8 -7 -5 -4 -3 -2 -4 -6 -7 -6 -6 -9 -10 -10 -9 -9 -8 -7 -6 -6 -5 -6 -8 -5 1 4 3 1 -1 -3 -4 -6 -6 -5 -4 -4 -6 -9 -10 -8 -5 -3 -4 -6 -6 -6 -9 -10 -8 -6 -5 -4 -7 -9 -9 -9 -8 -7 -8 -9 -9 -9 -8 -8 -8 -5 -1 -0 -3 -6 -9 -7 0 7 10 8 4 1 -1 -4 -8 -12 -13 -12 -11 -9 -7 -4 1 5 7 6 1 -4 -8 -12 -15 -18 -18 -18 -18 -18 -17 -16 -14 -14 -16 -18 -15 -12 -8 -4 -2 -6 -8 -9 -7 -5 -3 -2 -3 -5 -9 -10 -3 7 17 24 27 29 29 27 24 21 14 8 3 1 5 13 22 31 38 43 43 50 61 72 77 79 79 80 80 78 74 68 61 54 49 47 45 42 39 36 36 37 38 39 38 36 33 31 29 30 34 39 43 48 51 53 51 48 44 40 36 32 28 26 24 23 20 17 13 9 7 6 5 4 2 0 -3 -7 -10 -13 -16 -19 -21 -21 -20 -15 -4 6 12 13 9 4 -1 -5 -9 -11 -13 -13 -12 -12 -12 -10 -1 3 1 -4 -9 -11 -10 -8 -6 -6 -6 -4 -2 -1 -3 -6 -7 -6 -3 5 7 4 -2 -7 -10 -10 -7 -5 -5 -8 -12 -12 -5 5 12 11 8 6 5 1 -7 -13 -15 -16 -15 -14 -15 -15 -15 -14 -10 6 15 17 10 1 -9 -14 -15 -12 -5 -1 -5 -14 -21 -18 -16 -16 -19 -24 -29 -29 -28 -26 -23 -18 -18 -23 -24 -20 -16 -14 -14 -15 -16 -17 -16 -9 -6 -9 -17 -18 -14 -7 -2 -3 -13 -14 -15 -14 -11 -9 -6 1 9 17 23 26 30 32 27 5 -7 -10 -10 -10 -4 -4 -8 -12 -11 -7 -6 -7 -9 -7 13 26 30 27 21 13 -5 -20 -9 -10 -11 -11 -11 -11 -11 -12 -13 -13 -13 -12 -13 -14 -16 -17 -20 -23 -22 -19 -16 -14 -10 -6 -5 -6 -9 -8 -5 -4 -4 -5 -6 -7 -6 -6 -6 -6 -6 -6 -6 -7 -8 -8 -9 -11 -12 -12 -11 -11 -11 -10 -9 -8 -7 -6 -5 -2 -1 -3 -7 -9 -7 -6 -7 -8 -8 -7 -8 -8 -6 -6 -7 -7 -8 -7 -3 4 4 2 0 -1 -3 -6 -7 -6 -5 -4 -5 -8 -10 -11 -8 -4 -4 -7 -8 -6 -5 -9 -10 -9 -7 -5 -6 -7 -8 -9 -9 -8 -8 -8 -9 -9 -8 -7 -7 -7 -6 -2 0 -2 -7 -11 -10 -1 7 11 8 3 0 -3 -6 -10 -11 -11 -11 -10 -10 -10 -6 -1 5 8 6 2 -2 -7 -13 -18 -20 -20 -21 -21 -18 -17 -18 -17 -16 -16 -14 -12 -9 -6 -3 -5 -8 -9 -8 -6 -3 -2 -2 -4 -7 -9 -8 1 13 23 28 30 30 29 26 22 16 8 2 0 4 11 20 30 40 48 50 56 64 72 76 79 80 80 81 80 75 69 62 55 50 47 44 42 40 38 37 38 39 39 38 35 32 29 28 30 35 41 46 50 54 56 54 51 47 43 40 36 32 29 27 25 22 18 14 10 8 7 6 5 3 2 -1 -4 -7 -10 -13 -16 -17 -18 -18 -16 -10 -0 8 13 12 7 2 -3 -7 -10 -12 -13 -12 -11 -11 -13 -6 0 2 -2 -7 -10 -11 -9 -6 -6 -7 -6 -4 -3 -6 -8 -7 -7 -6 -3 3 3 -0 -5 -8 -9 -10 -8 -6 -6 -10 -12 -10 -2 9 11 8 4 2 0 -5 -11 -15 -17 -16 -15 -15 -15 -15 -14 -14 -3 10 18 15 5 -5 -12 -15 -13 -8 -3 -3 -8 -15 -14 -18 -21 -24 -27 -28 -29 -29 -27 -24 -21 -20 -23 -25 -21 -17 -15 -14 -13 -13 -15 -14 -8 -3 -5 -16 -19 -18 -13 -7 -7 -12 -16 -18 -17 -13 -11 -6 -0 7 16 24 28 32 33 28 5 -8 -10 -8 -10 -9 -8 -10 -12 -12 -8 -6 -6 -8 -10 -9 7 21 27 25 25 27 5 -11 -13 -13 -12 -12 -11 -10 -11 -12 -13 -13 -14 -14 -15 -16 -17 -19 -21 -20 -19 -17 -15 -13 -10 -8 -8 -10 -11 -8 -6 -4 -5 -6 -7 -8 -8 -8 -7 -7 -7 -7 -8 -9 -8 -9 -11 -12 -11 -12 -11 -10 -8 -8 -8 -8 -8 -7 -6 -4 -2 -3 -6 -11 -7 -5 -5 -6 -7 -8 -8 -7 -7 -7 -8 -8 -8 -6 0 4 4 2 0 -1 -4 -5 -6 -6 -6 -5 -6 -9 -11 -11 -9 -7 -8 -9 -8 -6 -6 -8 -7 -5 -4 -4 -5 -8 -10 -9 -7 -7 -8 -8 -9 -8 -7 -7 -7 -8 -8 -3 -0 -2 -9 -13 -10 -1 9 10 6 3 -1 -5 -8 -9 -10 -11 -11 -11 -13 -11 -7 -1 4 6 5 3 -1 -6 -14 -19 -21 -22 -22 -20 -18 -18 -18 -16 -15 -13 -12 -11 -7 -3 -4 -7 -8 -8 -6 -4 -3 -2 -3 -5 -8 -9 -4 6 20 28 30 30 29 27 23 18 12 6 2 3 8 16 28 41 53 57 61 65 69 71 78 80 81 82 81 77 71 64 56 50 46 44 42 40 38 37 38 39 39 37 34 30 27 27 30 35 40 46 53 57 59 57 54 50 47 43 39 35 32 30 28 24 20 16 12 10 8 7 5 4 2 -0 -2 -4 -7 -11 -13 -14 -14 -14 -15 -13 -7 2 10 14 10 5 0 -5 -9 -11 -12 -12 -12 -11 -12 -10 -4 1 -0 -5 -9 -11 -10 -8 -6 -7 -7 -7 -6 -8 -9 -8 -7 -7 -7 -2 0 -1 -4 -8 -9 -9 -9 -9 -6 -8 -10 -11 -8 2 9 8 4 -0 -2 -5 -10 -15 -18 -18 -17 -16 -16 -15 -14 -13 -10 1 14 17 9 -1 -10 -14 -14 -11 -6 -3 -5 -9 -12 -19 -25 -26 -26 -26 -28 -29 -28 -26 -23 -22 -24 -24 -21 -18 -17 -16 -14 -12 -14 -13 -8 -2 -3 -15 -21 -20 -16 -10 -8 -11 -16 -20 -19 -16 -14 -9 -2 4 14 23 29 34 35 29 6 -7 -10 -6 -7 -9 -10 -11 -13 -12 -9 -7 -7 -8 -9 -16 -14 1 24 29 30 32 31 -13 -13 -13 -12 -11 -10 -9 -9 -10 -12 -14 -17 -17 -17 -17 -16 -15 -13 -13 -12 -12 -12 -9 -7 -8 -13 -18 -20 -16 -10 -5 -4 -5 -7 -8 -9 -9 -10 -9 -9 -10 -10 -9 -8 -9 -11 -11 -11 -12 -11 -11 -9 -8 -7 -7 -8 -8 -7 -6 -5 -4 -4 -6 -9 -7 -4 -4 -6 -8 -8 -8 -7 -6 -7 -8 -9 -8 -5 1 3 3 2 0 -2 -4 -6 -7 -7 -8 -7 -7 -10 -13 -15 -12 -11 -11 -10 -8 -6 -7 -7 -7 -4 -4 -5 -7 -9 -10 -8 -7 -7 -8 -9 -8 -7 -7 -7 -8 -9 -8 -5 -2 -3 -11 -12 -9 -0 10 10 7 3 -1 -4 -3 -5 -8 -11 -12 -13 -11 -9 -6 -3 -0 2 4 5 2 -5 -13 -17 -19 -20 -21 -19 -18 -17 -17 -15 -13 -12 -11 -8 -3 -2 -5 -7 -8 -7 -5 -3 -2 -2 -4 -7 -9 -8 -1 13 26 30 31 30 29 25 19 11 3 -1 0 5 12 25 42 57 59 60 60 61 65 75 79 81 82 82 79 73 66 58 51 47 44 42 41 39 37 39 40 39 36 31 27 25 25 27 29 32 37 47 57 62 61 58 53 50 47 43 39 35 32 30 27 23 19 15 13 11 9 6 4 2 -0 -1 -3 -5 -8 -12 -13 -13 -12 -11 -12 -10 -4 4 12 12 8 3 -3 -7 -10 -11 -12 -12 -11 -11 -11 -7 -1 1 -3 -7 -9 -10 -9 -7 -7 -8 -8 -8 -9 -11 -9 -7 -7 -7 -5 -2 -2 -4 -8 -9 -9 -9 -9 -8 -7 -8 -11 -11 -5 4 7 5 -0 -3 -5 -9 -14 -18 -19 -18 -17 -16 -15 -14 -12 -12 -6 6 17 12 3 -7 -13 -14 -12 -10 -7 -6 -9 -13 -18 -22 -23 -23 -24 -27 -29 -29 -27 -24 -23 -24 -24 -22 -21 -19 -18 -16 -14 -15 -13 -8 -4 -3 -15 -23 -24 -19 -13 -9 -12 -17 -22 -24 -21 -18 -13 -6 0 10 20 29 35 37 30 8 -6 -10 -5 -6 -7 -9 -10 -12 -12 -10 -9 -10 -10 -10 -15 -20 -18 -7 27 33 35 35 -13 -13 -12 -11 -10 -9 -9 -9 -10 -11 -15 -18 -20 -19 -17 -15 -12 -8 -7 -8 -9 -8 -6 -4 -6 -11 -18 -22 -20 -16 -10 -4 -3 -3 -3 -4 -6 -7 -9 -9 -9 -9 -8 -8 -9 -10 -11 -11 -11 -11 -11 -11 -9 -7 -7 -8 -8 -8 -8 -7 -6 -5 -5 -6 -8 -6 -4 -4 -6 -8 -8 -8 -7 -6 -7 -9 -9 -8 -3 1 2 2 2 -0 -3 -5 -6 -8 -9 -9 -8 -9 -12 -15 -15 -14 -12 -12 -10 -8 -7 -7 -8 -5 -3 -3 -5 -9 -13 -12 -8 -6 -7 -8 -8 -7 -6 -6 -7 -8 -9 -8 -6 -3 -6 -11 -12 -7 2 10 11 9 5 2 2 -1 -6 -11 -14 -15 -13 -10 -7 -6 -7 -7 -3 2 6 6 0 -6 -11 -15 -19 -18 -17 -16 -17 -15 -13 -12 -12 -10 -5 -1 -2 -5 -8 -9 -7 -5 -3 -2 -4 -6 -9 -10 -6 5 22 31 33 31 30 26 20 13 5 -1 -1 1 7 19 37 52 55 55 54 55 59 68 75 80 82 82 80 76 69 61 53 48 45 43 41 39 38 40 41 39 35 28 24 24 26 29 28 25 24 29 42 57 63 62 58 53 51 47 43 39 36 33 30 27 24 20 18 16 13 9 5 1 -1 -2 -2 -2 -5 -9 -12 -14 -12 -10 -9 -10 -8 -3 6 11 9 5 -0 -6 -9 -11 -12 -12 -12 -11 -12 -10 -4 1 -2 -5 -8 -9 -9 -7 -7 -8 -9 -9 -10 -11 -11 -9 -7 -7 -5 -3 -2 -4 -7 -8 -9 -9 -9 -9 -8 -8 -9 -11 -9 -1 5 6 1 -4 -7 -9 -13 -17 -19 -18 -17 -16 -15 -14 -12 -11 -10 -5 10 12 6 -3 -11 -14 -13 -14 -14 -12 -13 -16 -19 -20 -20 -19 -20 -23 -25 -26 -25 -23 -22 -22 -23 -23 -24 -23 -21 -18 -16 -16 -14 -10 -6 -2 -13 -23 -27 -24 -18 -13 -14 -19 -25 -29 -26 -20 -15 -10 -4 5 15 24 32 38 32 11 -5 -9 -4 -5 -7 -9 -9 -11 -11 -10 -11 -13 -12 -12 -13 -15 -21 -27 22 34 36 36 -11 -11 -10 -9 -9 -9 -9 -10 -11 -12 -14 -17 -18 -18 -16 -13 -10 -8 -8 -11 -14 -11 -8 -7 -9 -11 -14 -15 -14 -11 -8 -6 -6 -5 -3 -3 -4 -5 -6 -7 -9 -9 -9 -9 -9 -10 -10 -10 -9 -9 -9 -10 -10 -8 -7 -8 -8 -9 -9 -9 -8 -8 -7 -5 -6 -7 -7 -4 -4 -6 -7 -8 -8 -7 -7 -8 -9 -9 -6 -2 1 2 1 1 -2 -4 -6 -8 -9 -10 -10 -9 -9 -12 -15 -15 -14 -13 -13 -9 -8 -7 -8 -8 -4 -3 -4 -7 -12 -12 -9 -6 -6 -8 -8 -7 -6 -6 -6 -7 -8 -9 -9 -7 -5 -8 -11 -11 -8 5 12 12 8 6 7 4 -1 -8 -14 -17 -16 -13 -9 -5 -6 -9 -9 -6 -1 6 11 9 1 -9 -13 -15 -15 -16 -16 -16 -12 -11 -11 -11 -8 -0 2 -1 -5 -8 -9 -7 -5 -3 -3 -5 -8 -10 -9 -4 15 28 34 33 31 28 22 15 7 0 -1 1 5 11 20 30 36 40 43 48 54 60 66 71 75 78 81 78 72 64 57 51 47 44 43 41 41 42 43 41 35 28 26 28 33 36 33 26 18 13 17 35 51 59 60 55 52 49 46 43 40 37 35 32 29 27 25 22 18 14 8 3 -1 -2 -1 -0 -1 -6 -10 -14 -15 -12 -9 -8 -8 -7 -1 6 9 7 2 -4 -9 -11 -11 -12 -12 -11 -11 -11 -7 -1 -1 -4 -7 -8 -8 -7 -7 -7 -8 -9 -11 -12 -11 -9 -8 -8 -6 -4 -2 -3 -6 -7 -8 -8 -9 -9 -8 -8 -7 -9 -9 -5 1 6 3 -4 -9 -11 -12 -15 -16 -16 -15 -15 -14 -13 -12 -11 -10 -10 1 8 7 -0 -9 -13 -14 -17 -19 -17 -17 -20 -22 -21 -19 -18 -18 -19 -21 -22 -22 -21 -20 -20 -21 -23 -25 -26 -24 -20 -18 -19 -16 -11 -7 -1 -10 -21 -29 -30 -25 -18 -18 -22 -28 -32 -29 -23 -17 -14 -8 0 10 20 31 39 33 13 -5 -10 -5 -6 -9 -11 -9 -11 -13 -13 -14 -15 -13 -11 -9 -10 -14 -24 17 34 39 38 -10 -9 -9 -9 -9 -9 -10 -11 -13 -14 -15 -16 -17 -16 -14 -14 -13 -15 -16 -13 -9 -5 -4 -3 -3 -3 -4 -5 -5 -4 -2 -2 -2 -3 -4 -5 -6 -5 -5 -6 -8 -10 -10 -10 -9 -9 -9 -8 -8 -8 -9 -10 -9 -8 -7 -8 -8 -9 -10 -10 -10 -9 -9 -7 -5 -6 -8 -6 -4 -4 -6 -7 -8 -7 -7 -8 -9 -9 -8 -4 -1 -0 0 0 -1 -3 -5 -7 -9 -9 -10 -10 -9 -9 -13 -14 -14 -13 -14 -10 -8 -8 -7 -8 -6 -3 -2 -4 -7 -9 -8 -6 -5 -7 -7 -7 -6 -6 -6 -7 -8 -10 -11 -11 -8 -7 -8 -11 -12 -4 7 12 12 10 12 10 5 -3 -10 -15 -16 -15 -11 -6 -5 -7 -9 -10 -9 -5 11 16 11 -0 -5 -10 -14 -16 -15 -17 -12 -10 -9 -11 -10 -2 3 4 -1 -7 -9 -8 -6 -4 -3 -5 -7 -9 -10 -10 4 21 32 34 32 30 24 17 9 3 2 3 4 7 10 12 13 16 22 31 41 50 59 67 72 73 74 75 75 69 60 55 50 47 45 43 44 47 48 47 40 33 32 37 43 43 39 31 21 9 1 8 24 40 49 49 45 40 38 37 37 37 37 36 35 33 30 27 23 18 11 5 1 -1 -0 2 2 -1 -7 -13 -16 -14 -10 -7 -7 -8 -5 1 6 8 4 -3 -8 -11 -11 -11 -11 -11 -11 -11 -10 -4 -2 -3 -6 -7 -8 -7 -6 -6 -7 -8 -10 -11 -12 -10 -9 -9 -7 -5 -3 -3 -5 -6 -6 -7 -8 -9 -9 -8 -7 -7 -9 -7 -3 2 1 -6 -12 -15 -14 -13 -13 -13 -12 -13 -13 -12 -12 -11 -10 -11 -7 2 5 1 -7 -13 -17 -19 -20 -18 -18 -22 -25 -24 -20 -18 -18 -18 -19 -21 -21 -21 -21 -20 -20 -22 -25 -27 -26 -20 -18 -20 -17 -12 -8 -1 -7 -18 -27 -31 -27 -22 -20 -23 -29 -32 -30 -24 -18 -18 -11 -4 6 19 32 40 33 13 -7 -12 -8 -8 -11 -13 -12 -14 -16 -17 -17 -15 -14 -11 -8 -4 -4 -13 4 25 42 40 -9 -9 -10 -10 -10 -9 -9 -9 -10 -11 -12 -13 -14 -17 -17 -16 -14 -15 -14 -10 -6 -5 -6 -5 -3 -3 -3 -4 -3 -2 -2 -2 -2 -1 -1 -2 -4 -6 -7 -8 -10 -11 -11 -10 -9 -8 -7 -7 -6 -7 -8 -9 -9 -7 -7 -7 -7 -8 -9 -11 -10 -9 -9 -8 -6 -6 -6 -8 -5 -4 -4 -6 -8 -8 -7 -7 -8 -9 -9 -6 -4 -2 -1 -1 -0 -2 -4 -7 -9 -10 -10 -10 -10 -9 -10 -12 -13 -12 -14 -11 -9 -8 -8 -8 -7 -5 -3 -2 -4 -6 -6 -5 -5 -6 -7 -7 -6 -6 -6 -7 -8 -10 -11 -12 -11 -8 -7 -9 -12 -10 -0 8 14 14 15 15 11 4 -4 -11 -14 -15 -13 -9 -6 -6 -9 -12 -13 -13 -6 2 5 0 -2 -8 -14 -16 -15 -15 -13 -9 -7 -10 -12 -6 2 6 3 -4 -8 -9 -7 -4 -2 -4 -6 -8 -10 -11 -6 10 25 33 33 31 26 20 14 10 8 8 9 10 11 7 3 1 4 12 23 33 44 54 61 61 62 68 74 74 66 59 54 50 47 46 48 53 57 57 50 40 40 44 47 44 41 35 27 15 1 -6 -1 11 24 29 25 20 17 18 21 24 28 32 35 36 34 30 26 20 13 7 3 1 1 4 6 3 -3 -10 -16 -16 -13 -9 -6 -6 -6 -2 4 7 6 -0 -6 -10 -11 -11 -10 -11 -11 -11 -11 -6 -3 -3 -5 -7 -8 -7 -6 -5 -6 -7 -9 -11 -12 -11 -9 -9 -9 -8 -5 -5 -5 -5 -6 -6 -7 -8 -9 -8 -7 -6 -8 -9 -8 -5 -5 -9 -14 -17 -17 -15 -12 -10 -9 -10 -12 -12 -11 -11 -11 -12 -12 -6 -1 -1 -9 -17 -21 -23 -22 -20 -19 -23 -27 -27 -23 -20 -18 -18 -18 -19 -20 -21 -22 -22 -21 -22 -24 -26 -26 -22 -20 -20 -18 -13 -9 -1 -5 -14 -24 -30 -28 -24 -22 -22 -27 -30 -28 -24 -19 -19 -13 -6 4 17 29 37 30 11 -10 -15 -11 -10 -12 -13 -14 -15 -17 -18 -18 -17 -15 -12 -7 -0 6 2 -8 7 36 43 -9 -9 -7 -7 -6 -5 -4 -7 -8 -9 -11 -13 -15 -16 -15 -13 -12 -12 -10 -8 -7 -7 -7 -7 -6 -7 -9 -8 -7 -6 -6 -6 -5 -3 -1 -1 -3 -5 -7 -9 -10 -11 -11 -10 -10 -8 -7 -7 -6 -6 -6 -8 -8 -7 -5 -6 -6 -6 -7 -8 -9 -9 -9 -9 -7 -6 -6 -8 -9 -6 -5 -6 -8 -9 -8 -8 -8 -9 -9 -8 -5 -2 0 0 1 -0 -3 -7 -8 -10 -10 -9 -9 -11 -10 -11 -12 -12 -13 -12 -9 -7 -8 -9 -8 -8 -6 -4 -3 -4 -5 -6 -5 -5 -7 -7 -7 -6 -6 -7 -8 -10 -11 -12 -12 -10 -8 -7 -10 -10 -7 1 11 17 17 17 15 11 4 -4 -10 -14 -14 -12 -8 -7 -9 -12 -15 -17 -17 -12 -8 -8 -5 -7 -11 -15 -17 -16 -15 -9 -5 -8 -12 -9 -1 5 6 -0 -6 -8 -8 -6 -3 -3 -5 -6 -9 -11 -11 0 16 30 34 32 27 21 16 14 16 18 19 19 17 12 6 0 -3 -1 5 13 20 28 35 39 44 55 68 74 69 63 59 57 53 48 50 57 64 65 51 33 31 39 46 46 43 39 32 22 9 -4 -11 -11 -3 5 6 4 2 1 2 4 9 16 25 33 34 31 26 21 14 8 4 2 3 7 9 6 1 -7 -14 -16 -14 -10 -6 -5 -6 -3 1 6 8 2 -4 -9 -11 -11 -10 -10 -11 -11 -10 -8 -5 -3 -5 -8 -9 -8 -7 -6 -5 -7 -9 -12 -14 -13 -12 -12 -12 -11 -10 -9 -7 -6 -6 -5 -6 -8 -9 -9 -8 -7 -9 -12 -14 -11 -7 -8 -12 -16 -19 -19 -15 -10 -6 -6 -10 -11 -11 -10 -10 -14 -16 -14 -11 -9 -14 -22 -26 -25 -23 -21 -21 -23 -26 -28 -26 -22 -19 -18 -17 -18 -19 -21 -22 -23 -22 -22 -23 -25 -27 -25 -22 -19 -17 -13 -9 -2 -3 -11 -22 -29 -29 -26 -22 -20 -23 -26 -26 -23 -20 -18 -13 -7 2 13 22 31 26 10 -12 -15 -13 -11 -12 -13 -14 -15 -16 -18 -18 -19 -16 -13 -7 1 11 16 9 6 16 41 -10 -9 -8 -7 -5 -5 -5 -8 -9 -9 -10 -12 -12 -12 -12 -11 -11 -12 -10 -9 -9 -8 -6 -6 -8 -10 -11 -11 -10 -9 -9 -9 -8 -7 -7 -6 -6 -5 -6 -8 -9 -10 -9 -9 -9 -9 -8 -8 -6 -4 -4 -5 -6 -6 -6 -6 -5 -5 -5 -7 -9 -10 -10 -9 -8 -8 -8 -10 -11 -11 -9 -7 -7 -8 -9 -10 -9 -9 -9 -9 -8 -4 0 1 1 0 -1 -4 -7 -9 -10 -10 -9 -8 -11 -10 -11 -13 -12 -13 -10 -7 -7 -9 -10 -10 -10 -6 0 0 -4 -7 -8 -6 -6 -7 -7 -6 -6 -6 -8 -10 -11 -12 -12 -11 -10 -8 -8 -10 -10 -6 3 14 18 19 18 16 11 4 -4 -10 -13 -13 -9 -8 -9 -12 -14 -17 -17 -17 -16 -15 -9 -5 -6 -12 -18 -19 -16 -11 -6 -5 -10 -11 -6 1 5 2 -4 -8 -9 -7 -4 -4 -4 -5 -7 -10 -12 -6 8 25 33 32 28 22 16 15 18 21 22 22 20 16 11 4 -3 -7 -5 -2 1 3 6 11 18 30 44 53 53 51 53 57 59 54 56 59 60 55 32 12 10 20 35 43 45 42 36 28 17 5 -6 -13 -15 -9 -3 -1 -2 -5 -6 -7 -6 -3 5 18 27 29 27 22 16 10 5 2 3 8 11 10 4 -3 -11 -15 -15 -12 -7 -4 -4 -4 -0 5 8 4 -2 -7 -10 -11 -10 -10 -10 -10 -10 -9 -6 -4 -5 -8 -10 -10 -10 -8 -7 -8 -11 -14 -16 -17 -16 -16 -16 -16 -15 -15 -12 -10 -9 -6 -6 -8 -10 -11 -9 -10 -12 -15 -18 -16 -10 -8 -10 -15 -18 -19 -17 -12 -5 -3 -7 -10 -10 -10 -10 -16 -19 -19 -17 -13 -17 -24 -28 -28 -24 -22 -23 -23 -22 -23 -24 -22 -19 -18 -16 -16 -17 -20 -22 -24 -23 -23 -24 -27 -30 -30 -26 -21 -18 -14 -10 -3 -2 -9 -20 -28 -29 -27 -23 -19 -21 -24 -25 -24 -22 -18 -13 -8 -1 8 16 24 23 9 -12 -16 -15 -12 -11 -13 -13 -14 -15 -17 -17 -19 -17 -14 -9 1 13 22 21 13 -1 30 -11 -11 -9 -7 -6 -5 -5 -7 -8 -9 -9 -10 -10 -10 -10 -10 -12 -13 -12 -11 -10 -8 -6 -5 -7 -8 -8 -8 -9 -9 -10 -10 -10 -10 -10 -10 -9 -9 -8 -8 -8 -8 -9 -9 -8 -7 -7 -8 -8 -7 -6 -5 -3 -1 -1 -2 -3 -4 -4 -6 -7 -9 -10 -9 -9 -9 -9 -10 -11 -12 -10 -6 -4 -6 -8 -9 -9 -9 -9 -10 -10 -7 -3 0 0 -0 -1 -2 -4 -7 -9 -11 -11 -9 -9 -10 -11 -12 -12 -12 -11 -9 -7 -7 -9 -10 -10 -8 -2 1 -1 -5 -8 -7 -5 -5 -6 -6 -5 -6 -8 -10 -11 -13 -12 -11 -10 -10 -9 -9 -9 -9 -5 5 15 19 19 17 15 9 2 -5 -10 -13 -11 -9 -10 -11 -13 -15 -17 -16 -16 -17 -13 -5 -3 -9 -17 -20 -18 -13 -7 -4 -8 -12 -10 -3 4 4 -2 -7 -10 -9 -6 -5 -4 -4 -5 -8 -12 -11 -1 16 30 32 29 24 18 17 21 24 25 25 24 20 16 10 3 -4 -5 -4 -4 -6 -9 -8 -4 2 10 17 19 20 26 37 47 47 49 48 42 32 13 1 -2 3 14 29 39 43 40 32 21 11 1 -7 -13 -12 -7 -3 -2 -3 -4 -6 -9 -12 -11 -1 12 21 25 24 19 12 6 2 1 6 10 11 8 0 -8 -13 -15 -13 -9 -4 -4 -3 -2 3 7 6 1 -5 -9 -11 -11 -10 -9 -9 -9 -10 -8 -7 -8 -11 -13 -14 -14 -13 -12 -13 -14 -16 -17 -19 -19 -19 -19 -18 -17 -17 -16 -15 -13 -10 -10 -11 -12 -13 -11 -13 -15 -17 -18 -18 -13 -9 -8 -12 -15 -15 -15 -12 -7 -3 -4 -8 -10 -10 -10 -15 -19 -21 -20 -15 -17 -22 -27 -28 -25 -23 -23 -22 -21 -21 -21 -21 -20 -18 -16 -15 -15 -18 -21 -25 -26 -26 -27 -28 -33 -33 -29 -25 -21 -16 -12 -5 -2 -6 -18 -26 -28 -26 -23 -20 -21 -23 -24 -25 -24 -20 -14 -8 -3 2 11 20 22 11 -10 -15 -15 -13 -12 -13 -13 -13 -14 -15 -16 -18 -18 -15 -10 1 12 22 27 25 11 5 -9 -8 -6 -4 -3 -2 -3 -6 -8 -9 -9 -11 -11 -10 -10 -10 -11 -11 -11 -12 -11 -10 -9 -7 -6 -5 -4 -5 -6 -8 -8 -9 -10 -10 -10 -11 -11 -11 -10 -9 -8 -8 -9 -10 -9 -8 -6 -6 -7 -7 -5 -4 -2 0 1 1 -0 -1 -2 -3 -5 -7 -9 -10 -10 -10 -10 -10 -10 -11 -11 -7 -2 -3 -6 -8 -9 -9 -9 -10 -10 -9 -6 -3 -2 -1 0 -0 -2 -5 -9 -12 -13 -11 -9 -11 -11 -10 -11 -11 -11 -10 -6 -4 -7 -9 -11 -10 -6 -1 -0 -4 -7 -8 -7 -6 -6 -5 -5 -6 -7 -9 -11 -13 -14 -12 -11 -10 -10 -9 -9 -9 -9 -5 7 15 19 18 16 13 7 1 -6 -11 -11 -9 -8 -9 -11 -15 -18 -18 -17 -17 -16 -8 -4 -5 -12 -17 -17 -15 -10 -4 -6 -11 -12 -7 1 5 1 -5 -10 -10 -8 -6 -5 -5 -5 -6 -11 -14 -10 3 22 30 30 26 21 21 25 27 28 28 26 23 19 14 8 1 -3 -3 -3 -3 -6 -8 -9 -9 -9 -9 -9 -9 -5 3 16 22 25 25 20 12 1 -4 -6 -5 -2 9 24 36 40 36 26 16 6 -3 -10 -12 -9 -6 -4 -4 -3 -4 -6 -10 -14 -14 -4 7 16 21 20 15 8 2 -2 1 7 11 10 4 -4 -10 -14 -13 -10 -5 -3 -3 -3 -0 5 6 3 -2 -8 -10 -11 -10 -9 -8 -9 -11 -12 -12 -13 -16 -18 -19 -19 -19 -18 -18 -17 -17 -17 -19 -19 -20 -21 -19 -18 -17 -17 -17 -16 -13 -13 -11 -10 -12 -11 -12 -12 -13 -16 -18 -16 -10 -5 -5 -9 -11 -12 -12 -9 -5 -3 -6 -9 -10 -12 -15 -18 -21 -22 -17 -17 -21 -25 -27 -26 -25 -23 -21 -20 -19 -21 -21 -21 -20 -17 -15 -14 -16 -20 -26 -29 -30 -30 -30 -33 -33 -32 -29 -25 -20 -15 -8 -3 -5 -15 -24 -26 -26 -23 -22 -23 -23 -23 -25 -26 -24 -18 -10 -4 -1 9 18 21 13 -6 -14 -14 -13 -13 -13 -14 -14 -13 -14 -16 -18 -18 -16 -11 -1 8 19 29 32 23 6 -6 -5 -3 -1 -0 -1 -4 -8 -11 -11 -11 -11 -11 -10 -9 -10 -12 -11 -11 -10 -10 -9 -9 -8 -6 -5 -4 -5 -7 -7 -8 -9 -10 -11 -11 -11 -11 -10 -10 -10 -10 -10 -9 -9 -9 -9 -7 -4 -3 -4 -4 -4 -3 -1 -0 0 1 1 0 -1 -3 -5 -8 -9 -10 -10 -9 -9 -9 -10 -12 -10 -4 -1 -4 -7 -8 -9 -9 -11 -11 -10 -8 -6 -4 -2 1 1 -1 -4 -7 -11 -14 -14 -10 -11 -11 -8 -9 -10 -11 -10 -7 -3 -5 -8 -10 -11 -8 -2 0 -2 -6 -8 -8 -7 -6 -5 -4 -5 -7 -8 -11 -14 -15 -14 -12 -10 -10 -10 -10 -10 -10 -9 -2 8 16 18 16 14 10 5 -3 -10 -11 -9 -8 -8 -10 -10 -12 -15 -18 -20 -20 -12 -5 -2 -6 -13 -17 -17 -12 -5 -5 -9 -12 -10 -2 4 3 -3 -8 -11 -9 -7 -6 -6 -6 -6 -9 -14 -16 -10 9 24 29 28 24 24 28 30 31 30 29 27 23 18 12 5 -1 -4 -4 -3 -3 -4 -5 -7 -8 -8 -8 -11 -15 -17 -14 -7 -1 4 6 3 -1 -6 -8 -9 -9 -4 7 21 34 38 30 20 10 2 -6 -10 -9 -7 -5 -5 -6 -5 -4 -7 -12 -13 -12 -6 2 11 16 15 10 4 -3 -3 3 8 11 7 -0 -7 -12 -13 -11 -6 -3 -2 -3 -3 2 5 4 -0 -6 -10 -11 -11 -10 -9 -11 -15 -17 -17 -16 -17 -19 -21 -21 -21 -19 -18 -18 -18 -17 -19 -19 -21 -21 -19 -18 -18 -18 -18 -17 -15 -11 -7 -4 -7 -10 -9 -6 -5 -9 -15 -15 -10 -2 3 -3 -8 -12 -13 -11 -7 -4 -5 -9 -12 -15 -16 -17 -19 -23 -21 -19 -21 -24 -26 -27 -26 -24 -21 -20 -18 -21 -24 -24 -21 -19 -16 -14 -14 -18 -26 -30 -32 -32 -31 -32 -34 -35 -34 -28 -22 -17 -10 -4 -4 -14 -22 -26 -26 -25 -24 -24 -23 -23 -26 -30 -30 -24 -15 -7 -2 6 13 16 13 -1 -12 -14 -13 -15 -14 -15 -14 -14 -14 -16 -18 -19 -18 -14 -7 2 14 27 35 29 11 -6 -6 -5 -4 -5 -6 -8 -12 -14 -14 -14 -14 -14 -11 -8 -8 -11 -14 -11 -8 -7 -7 -7 -7 -7 -7 -7 -7 -8 -8 -9 -10 -10 -10 -10 -10 -10 -9 -9 -10 -11 -11 -11 -9 -8 -8 -7 -6 -4 -3 -3 -3 -3 -3 -3 -2 -1 -0 -0 0 -1 -3 -6 -8 -9 -10 -9 -8 -9 -10 -12 -12 -8 -2 -2 -5 -7 -8 -9 -11 -11 -10 -9 -8 -6 -3 1 3 1 -2 -5 -9 -13 -15 -11 -11 -11 -8 -6 -10 -10 -9 -8 -4 -4 -6 -9 -10 -9 -4 -1 -1 -4 -7 -9 -9 -7 -5 -4 -4 -5 -7 -9 -13 -15 -15 -13 -10 -9 -10 -11 -11 -10 -10 -7 -1 8 15 16 14 12 9 3 -4 -10 -10 -9 -7 -7 -7 -8 -12 -17 -23 -23 -15 -6 -1 -3 -10 -16 -18 -14 -7 -4 -7 -11 -12 -6 2 4 1 -5 -10 -11 -9 -8 -7 -7 -7 -8 -11 -16 -18 -7 9 21 26 26 28 31 32 31 30 30 29 26 21 15 9 3 -2 -4 -5 -4 -3 -2 -3 -4 -5 -4 -6 -10 -15 -19 -17 -11 -3 3 4 -0 -6 -10 -12 -11 -10 -6 5 21 33 31 23 14 5 -2 -8 -9 -7 -5 -5 -7 -7 -6 -6 -8 -9 -10 -9 -7 -3 6 10 9 5 -1 -4 -1 4 10 9 3 -4 -9 -12 -11 -8 -4 -2 -3 -4 -1 3 4 2 -4 -9 -12 -13 -13 -12 -14 -17 -19 -19 -18 -18 -20 -22 -22 -22 -20 -18 -18 -18 -17 -18 -19 -19 -19 -18 -18 -18 -18 -19 -18 -15 -8 -2 0 -3 -9 -9 -7 -3 -5 -9 -10 -7 -2 2 -2 -8 -12 -14 -13 -9 -6 -7 -11 -14 -17 -17 -17 -17 -21 -24 -23 -23 -25 -27 -28 -28 -26 -23 -20 -19 -23 -27 -28 -23 -22 -18 -15 -14 -15 -22 -29 -32 -33 -31 -31 -34 -36 -36 -31 -24 -19 -13 -7 -5 -13 -20 -26 -29 -29 -26 -24 -23 -22 -27 -32 -34 -30 -22 -12 -5 2 8 12 14 3 -9 -15 -15 -16 -15 -15 -15 -15 -14 -15 -18 -21 -21 -19 -13 -5 8 24 35 30 13 -8 -8 -8 -6 -6 -6 -7 -10 -11 -12 -12 -13 -15 -15 -12 -8 -6 -8 -7 -6 -5 -5 -5 -5 -5 -6 -6 -8 -9 -9 -10 -10 -10 -10 -10 -10 -10 -10 -9 -10 -10 -11 -11 -11 -9 -8 -7 -7 -7 -5 -4 -4 -4 -4 -3 -3 -3 -3 -2 -0 0 -1 -4 -7 -9 -9 -8 -8 -8 -10 -11 -12 -11 -6 -2 -2 -5 -8 -9 -11 -12 -12 -9 -7 -6 -4 -1 3 4 0 -3 -7 -11 -14 -12 -11 -11 -11 -4 -8 -10 -10 -9 -6 -4 -5 -7 -9 -9 -7 -5 -2 -2 -5 -8 -9 -8 -6 -4 -4 -4 -6 -8 -11 -14 -16 -14 -11 -8 -9 -11 -12 -11 -10 -9 -6 0 9 16 16 16 14 9 1 -6 -8 -7 -5 -5 -5 -7 -10 -15 -20 -21 -15 -6 -0 -0 -7 -13 -16 -14 -8 -5 -6 -10 -12 -10 -1 4 3 -2 -8 -11 -10 -9 -8 -8 -9 -8 -9 -14 -20 -20 -9 4 16 22 26 31 30 25 19 22 27 28 24 17 12 6 1 -4 -6 -6 -3 -1 0 -1 -2 -2 -3 -6 -10 -14 -14 -10 -4 2 5 2 -3 -9 -13 -13 -13 -11 -6 6 23 29 25 17 8 1 -5 -8 -8 -6 -5 -7 -8 -8 -7 -8 -8 -7 -7 -7 -7 -4 1 4 3 -1 -4 -3 1 7 9 5 -1 -6 -10 -11 -9 -5 -2 -2 -4 -3 -0 2 2 -3 -10 -14 -16 -17 -16 -17 -18 -20 -20 -18 -18 -21 -23 -22 -22 -20 -19 -18 -19 -17 -18 -18 -18 -18 -18 -19 -19 -19 -20 -20 -16 -7 0 1 -0 -6 -9 -8 -4 -4 -7 -9 -9 -7 -2 -3 -8 -12 -14 -14 -12 -9 -10 -13 -14 -16 -18 -18 -18 -20 -24 -25 -25 -27 -28 -28 -28 -27 -25 -20 -21 -24 -27 -27 -25 -26 -22 -18 -14 -14 -19 -27 -31 -32 -29 -30 -33 -35 -37 -33 -26 -21 -15 -9 -7 -12 -17 -23 -30 -31 -28 -24 -21 -21 -26 -31 -33 -32 -27 -18 -9 -2 3 7 13 6 -6 -16 -18 -17 -17 -17 -16 -15 -14 -15 -17 -20 -23 -22 -19 -11 2 18 31 28 13 -9 -10 -9 -7 -6 -6 -7 -9 -9 -9 -9 -8 -9 -11 -12 -10 -8 -7 -6 -5 -4 -4 -3 -2 -2 -2 -3 -5 -7 -9 -10 -10 -10 -10 -10 -11 -11 -11 -10 -10 -10 -11 -11 -11 -10 -10 -8 -7 -7 -7 -7 -6 -5 -3 -2 -2 -4 -4 -4 -2 -1 -1 -3 -6 -7 -8 -7 -7 -8 -10 -11 -11 -12 -10 -2 1 -2 -7 -10 -10 -11 -12 -11 -6 -5 -5 -5 -1 4 3 -0 -4 -9 -13 -13 -11 -11 -14 -7 -6 -9 -11 -11 -8 -4 -4 -5 -7 -8 -9 -8 -5 -2 -2 -6 -8 -8 -6 -4 -3 -3 -5 -7 -10 -13 -14 -15 -13 -8 -9 -10 -12 -12 -11 -9 -9 -6 -0 12 18 20 18 14 5 -2 -5 -5 -5 -3 -4 -6 -9 -14 -19 -21 -15 -7 0 2 -4 -10 -14 -14 -10 -6 -6 -8 -12 -12 -5 2 5 2 -5 -10 -11 -10 -9 -9 -10 -10 -9 -11 -16 -22 -21 -13 -1 9 15 21 22 17 9 11 20 26 26 19 13 8 2 -3 -6 -8 -6 -3 0 2 0 -0 -1 -4 -8 -12 -13 -11 -7 -1 4 3 -1 -7 -12 -13 -13 -13 -12 -6 12 23 25 20 11 4 -3 -7 -8 -7 -7 -7 -8 -8 -8 -8 -10 -9 -7 -5 -5 -4 -2 -1 -1 -3 -5 -5 -3 3 8 6 1 -4 -8 -9 -9 -6 -4 -2 -3 -4 -4 -3 -2 -6 -12 -16 -18 -18 -16 -17 -18 -19 -20 -18 -18 -20 -22 -22 -22 -20 -19 -18 -18 -17 -18 -19 -19 -19 -19 -19 -19 -20 -21 -20 -15 -7 -1 1 1 -4 -8 -9 -5 -4 -6 -8 -10 -10 -6 -5 -8 -12 -15 -15 -13 -12 -13 -15 -13 -15 -18 -20 -21 -20 -23 -25 -26 -27 -28 -28 -28 -27 -25 -21 -20 -21 -22 -24 -26 -29 -26 -20 -15 -12 -16 -22 -28 -29 -27 -29 -31 -33 -36 -34 -29 -23 -17 -12 -9 -12 -16 -22 -28 -29 -27 -24 -20 -19 -22 -25 -28 -31 -30 -22 -15 -9 -4 2 10 6 -4 -14 -19 -19 -18 -18 -17 -16 -15 -15 -16 -18 -22 -22 -21 -16 -6 11 26 26 13 -11 -11 -10 -7 -4 -4 -5 -7 -8 -9 -9 -8 -8 -9 -10 -9 -8 -7 -7 -7 -6 -4 -1 0 1 1 1 -1 -3 -6 -7 -8 -9 -10 -11 -11 -12 -12 -11 -10 -10 -10 -11 -12 -11 -11 -11 -11 -7 -5 -6 -7 -8 -5 -2 -1 -1 -2 -3 -3 -3 -2 -1 -3 -4 -5 -6 -7 -8 -10 -11 -11 -11 -11 -6 0 1 -5 -11 -11 -10 -10 -11 -8 -3 -3 -5 -6 -2 2 3 0 -4 -11 -14 -13 -13 -16 -13 -6 -7 -11 -12 -11 -6 -3 -4 -6 -8 -10 -10 -7 -3 0 -3 -6 -7 -7 -6 -5 -4 -5 -6 -9 -11 -13 -14 -13 -10 -8 -10 -12 -12 -11 -10 -9 -8 -7 2 14 19 19 16 10 4 -1 -4 -4 -3 -3 -5 -9 -13 -18 -20 -16 -9 -0 2 -3 -8 -12 -13 -11 -7 -5 -7 -11 -14 -8 -1 4 4 -1 -7 -10 -11 -10 -9 -10 -12 -11 -10 -11 -17 -20 -19 -13 -4 -0 5 11 15 12 8 13 21 27 23 15 9 3 -2 -6 -9 -9 -6 -3 1 1 1 0 -1 -5 -9 -9 -7 -5 -2 2 4 1 -4 -9 -11 -12 -13 -13 -11 5 18 24 22 15 8 0 -5 -9 -10 -10 -10 -10 -10 -9 -9 -10 -10 -9 -6 -4 -2 -0 1 0 -3 -5 -6 -5 -2 4 5 3 -2 -6 -8 -8 -8 -6 -4 -5 -6 -8 -10 -9 -10 -14 -17 -18 -18 -16 -16 -17 -19 -19 -18 -17 -18 -19 -21 -21 -20 -18 -18 -18 -17 -17 -19 -20 -19 -20 -20 -20 -21 -21 -19 -13 -7 -4 -2 1 -2 -6 -9 -6 -3 -5 -8 -12 -15 -10 -7 -8 -12 -16 -16 -15 -16 -17 -18 -15 -14 -17 -22 -23 -21 -21 -23 -26 -28 -28 -28 -28 -27 -24 -20 -17 -16 -18 -22 -28 -31 -28 -22 -17 -12 -13 -17 -23 -26 -24 -26 -29 -32 -35 -35 -30 -24 -19 -14 -12 -13 -17 -21 -25 -27 -27 -25 -22 -19 -19 -20 -23 -28 -29 -25 -20 -15 -10 -2 7 7 -0 -12 -19 -21 -20 -19 -18 -18 -16 -15 -15 -17 -20 -20 -21 -19 -12 8 24 24 12 -10 -8 -6 -3 -1 -2 -4 -6 -8 -9 -9 -8 -7 -6 -6 -6 -5 -4 -5 -7 -6 -4 -2 -1 0 0 0 -0 -1 -2 -4 -5 -6 -7 -8 -10 -11 -12 -12 -11 -9 -8 -10 -13 -12 -11 -10 -10 -8 -6 -5 -5 -7 -8 -6 -2 0 0 -2 -2 -2 -1 0 0 -1 -3 -5 -6 -7 -8 -10 -11 -11 -11 -10 -4 1 -1 -7 -10 -10 -10 -10 -11 -6 -3 -4 -8 -9 -5 -1 1 -1 -6 -12 -14 -14 -15 -17 -8 -5 -7 -11 -11 -8 -5 -2 -3 -6 -9 -10 -9 -5 0 0 -2 -5 -6 -7 -7 -6 -5 -6 -8 -11 -12 -12 -12 -13 -9 -9 -10 -12 -11 -11 -9 -8 -8 -10 6 16 19 17 14 9 3 -1 -3 -2 -2 -4 -8 -11 -16 -19 -17 -10 -1 3 -2 -6 -10 -12 -12 -8 -6 -7 -10 -13 -11 -5 2 5 2 -4 -9 -11 -12 -10 -10 -12 -13 -12 -11 -14 -17 -17 -13 -3 -1 -2 -1 6 12 9 13 21 29 26 18 11 4 -2 -6 -8 -10 -10 -7 -2 -1 0 0 -0 -3 -5 -4 -2 -1 -2 1 3 2 -2 -7 -9 -10 -12 -13 -13 -1 15 25 26 20 13 5 -1 -7 -11 -12 -13 -13 -14 -12 -10 -11 -11 -10 -8 -6 -4 -1 2 2 -2 -6 -8 -8 -7 -0 4 3 -1 -5 -7 -8 -9 -9 -8 -8 -10 -12 -13 -13 -13 -15 -17 -19 -19 -17 -16 -17 -18 -19 -18 -17 -17 -18 -20 -21 -20 -18 -17 -18 -16 -17 -18 -19 -19 -20 -20 -20 -21 -21 -19 -14 -11 -10 -7 -2 -1 -5 -9 -7 -3 -4 -7 -12 -19 -15 -11 -11 -15 -20 -19 -19 -21 -23 -24 -20 -16 -17 -21 -23 -21 -20 -21 -25 -28 -28 -28 -28 -26 -23 -19 -17 -17 -19 -25 -29 -30 -28 -24 -19 -14 -12 -15 -20 -24 -23 -24 -26 -29 -33 -35 -31 -25 -20 -17 -15 -15 -18 -22 -23 -26 -28 -27 -25 -22 -19 -19 -21 -24 -27 -26 -23 -19 -16 -7 4 7 2 -10 -18 -22 -22 -21 -20 -19 -17 -15 -14 -15 -16 -18 -20 -21 -18 -1 13 15 6 -7 -6 -4 -3 -3 -5 -7 -9 -11 -11 -11 -9 -7 -7 -6 -6 -5 -3 -2 -2 -2 -2 -2 -3 -3 -4 -5 -6 -6 -6 -6 -5 -4 -4 -5 -6 -7 -10 -11 -11 -10 -8 -7 -7 -8 -10 -11 -11 -10 -9 -8 -7 -8 -8 -7 -5 -2 -0 -0 -1 -2 -2 -2 -1 -0 -1 -3 -5 -6 -7 -9 -10 -11 -11 -11 -8 -3 1 -3 -8 -10 -11 -10 -10 -8 -5 -4 -6 -9 -9 -6 -3 -2 -4 -8 -12 -15 -16 -18 -11 -5 -4 -9 -12 -11 -6 -2 -1 -4 -8 -10 -10 -7 -2 2 1 -2 -5 -8 -8 -7 -6 -6 -8 -10 -12 -12 -12 -14 -12 -9 -8 -11 -12 -13 -11 -8 -5 -10 -4 8 16 17 17 13 8 4 1 -1 -2 -4 -7 -10 -14 -18 -18 -12 -3 3 0 -4 -9 -11 -12 -10 -8 -6 -8 -12 -13 -9 -2 3 3 -1 -7 -11 -14 -11 -11 -13 -15 -14 -13 -15 -17 -18 -15 -4 1 0 -2 -1 4 6 11 18 27 27 21 12 4 -3 -5 -7 -10 -12 -11 -7 -4 -2 -1 -1 -1 -2 1 3 4 -0 0 1 1 -1 -4 -7 -8 -10 -11 -13 -7 9 23 29 23 16 10 3 -4 -10 -12 -14 -16 -17 -16 -13 -12 -12 -11 -10 -10 -9 -6 -2 2 -3 -9 -11 -11 -11 -6 -0 1 -2 -7 -8 -10 -11 -13 -13 -12 -13 -14 -14 -13 -14 -15 -17 -18 -19 -18 -17 -16 -17 -18 -19 -18 -17 -18 -19 -20 -19 -18 -17 -18 -16 -17 -18 -19 -20 -20 -21 -21 -21 -21 -21 -18 -16 -16 -13 -7 -3 -4 -8 -7 -4 -3 -5 -10 -19 -19 -17 -16 -19 -25 -25 -24 -25 -27 -28 -25 -21 -18 -18 -21 -21 -20 -20 -23 -25 -25 -25 -25 -24 -23 -20 -19 -20 -21 -25 -28 -29 -28 -25 -21 -17 -14 -14 -18 -22 -23 -24 -26 -28 -32 -36 -34 -28 -23 -19 -18 -18 -20 -23 -23 -26 -29 -30 -30 -26 -22 -20 -20 -22 -25 -26 -24 -22 -21 -12 -0 6 4 -7 -17 -23 -24 -24 -22 -21 -18 -15 -13 -13 -13 -14 -17 -20 -21 -9 3 8 2 -6 -6 -6 -6 -8 -9 -10 -11 -13 -13 -13 -12 -12 -13 -13 -11 -9 -7 -4 -2 -2 -1 -2 -2 -3 -4 -6 -8 -9 -9 -9 -7 -5 -3 -1 -1 -2 -5 -8 -9 -10 -10 -9 -6 -6 -7 -9 -11 -11 -11 -10 -9 -9 -8 -8 -7 -5 -3 -2 -1 -1 -2 -2 -1 0 -0 -2 -4 -5 -6 -8 -9 -11 -12 -12 -11 -7 -1 0 -5 -9 -11 -10 -9 -9 -7 -5 -5 -7 -8 -8 -6 -4 -3 -6 -10 -14 -16 -17 -13 -7 -3 -6 -12 -12 -8 -3 1 -2 -6 -8 -10 -9 -4 1 3 0 -5 -9 -9 -8 -7 -6 -8 -11 -13 -14 -14 -14 -13 -9 -7 -9 -14 -16 -16 -12 -7 -4 -9 -1 10 15 15 14 11 7 3 -0 -3 -4 -5 -8 -12 -17 -18 -13 -4 4 2 -3 -7 -11 -13 -12 -9 -7 -7 -11 -14 -12 -7 -1 2 0 -4 -10 -13 -12 -11 -13 -15 -16 -16 -17 -18 -19 -17 -8 -0 1 -0 -2 2 6 8 11 15 18 16 11 5 -0 -4 -6 -9 -12 -13 -10 -6 -4 -3 -3 -2 -1 2 4 5 1 1 1 0 -1 -3 -5 -7 -8 -9 -12 -10 2 18 30 27 20 14 8 1 -7 -11 -14 -16 -17 -17 -15 -14 -13 -12 -11 -12 -12 -11 -6 -2 -5 -11 -14 -15 -15 -12 -6 -2 -4 -9 -11 -12 -13 -13 -13 -13 -13 -14 -14 -13 -13 -14 -16 -18 -20 -19 -17 -16 -17 -18 -19 -18 -18 -18 -18 -19 -19 -18 -18 -18 -17 -17 -18 -20 -20 -20 -21 -22 -21 -21 -21 -21 -20 -19 -16 -13 -8 -7 -10 -9 -5 -4 -5 -9 -17 -20 -21 -21 -22 -27 -28 -28 -27 -29 -29 -26 -22 -17 -15 -17 -21 -22 -22 -21 -21 -21 -21 -22 -22 -21 -20 -20 -21 -22 -24 -27 -29 -28 -26 -22 -19 -16 -15 -17 -20 -22 -25 -28 -29 -34 -38 -37 -32 -25 -21 -20 -20 -21 -23 -23 -26 -30 -34 -35 -31 -25 -21 -19 -22 -25 -27 -26 -24 -23 -17 -5 4 4 -5 -14 -21 -24 -25 -24 -23 -19 -16 -13 -12 -12 -12 -13 -17 -21 -14 -4 3 -1 -7 -8 -9 -10 -10 -10 -9 -9 -10 -11 -11 -11 -13 -15 -12 -8 -4 -3 -4 -3 -3 -4 -6 -9 -8 -7 -7 -9 -10 -10 -10 -9 -8 -5 -3 -1 0 -0 -4 -8 -9 -8 -7 -7 -5 -6 -8 -10 -12 -11 -11 -10 -9 -8 -9 -9 -8 -8 -6 -4 -2 -2 -2 0 1 1 -1 -3 -5 -6 -7 -8 -10 -12 -12 -11 -9 -5 -0 -3 -6 -9 -10 -9 -9 -8 -7 -5 -5 -7 -8 -7 -5 -4 -6 -9 -12 -15 -15 -14 -10 -5 -3 -9 -12 -11 -6 -0 0 -3 -6 -9 -10 -7 -1 2 1 -4 -8 -10 -9 -8 -7 -8 -11 -13 -15 -16 -16 -15 -11 -7 -7 -12 -17 -19 -17 -12 -4 -8 -5 4 14 14 14 14 11 7 1 -4 -5 -6 -6 -10 -15 -18 -14 -5 4 5 0 -6 -9 -11 -12 -10 -8 -7 -10 -13 -14 -11 -6 -1 1 -2 -5 -9 -10 -11 -12 -14 -16 -17 -18 -19 -19 -17 -13 -5 0 0 -1 1 7 10 11 13 17 17 13 8 2 -3 -6 -9 -12 -14 -12 -9 -7 -6 -6 -6 -5 -3 -1 2 1 2 2 1 -1 -2 -4 -5 -6 -7 -9 -11 -4 9 27 31 25 19 14 7 -3 -8 -12 -14 -16 -17 -16 -14 -12 -11 -10 -12 -13 -13 -10 -6 -6 -11 -15 -18 -18 -17 -10 -3 -3 -7 -9 -11 -12 -12 -12 -12 -13 -13 -13 -13 -13 -14 -15 -18 -21 -20 -18 -16 -16 -17 -18 -18 -19 -19 -19 -19 -19 -19 -19 -19 -19 -19 -20 -21 -20 -20 -21 -22 -22 -21 -21 -22 -22 -21 -19 -16 -13 -11 -12 -12 -10 -8 -7 -11 -15 -20 -22 -22 -23 -27 -30 -29 -28 -29 -28 -25 -21 -16 -13 -14 -18 -22 -26 -25 -22 -20 -19 -20 -20 -21 -20 -20 -21 -22 -23 -27 -29 -29 -27 -22 -19 -17 -15 -15 -18 -21 -25 -28 -31 -35 -38 -37 -34 -27 -22 -21 -21 -21 -22 -23 -26 -31 -37 -40 -35 -29 -24 -20 -21 -23 -26 -28 -27 -23 -20 -10 0 4 -4 -12 -18 -22 -24 -26 -25 -21 -17 -16 -14 -12 -11 -11 -14 -19 -16 -8 -2 -3 -9 -10 -10 -10 -10 -9 -8 -8 -9 -8 -9 -10 -11 -12 -11 -9 -7 -5 -5 -5 -3 -2 -2 -3 -4 -5 -6 -7 -9 -11 -13 -13 -11 -8 -6 -3 -1 -1 -1 -4 -6 -7 -8 -8 -6 -6 -7 -9 -11 -11 -10 -10 -9 -8 -8 -8 -9 -10 -9 -7 -6 -4 -3 -0 1 1 -0 -3 -4 -6 -6 -7 -9 -11 -12 -12 -10 -8 -4 -2 -4 -6 -8 -9 -9 -9 -8 -6 -4 -5 -7 -8 -7 -6 -6 -8 -11 -13 -13 -13 -12 -7 -2 -4 -10 -13 -10 -3 2 1 -3 -7 -10 -9 -6 -1 0 -2 -7 -10 -10 -9 -8 -8 -11 -14 -16 -18 -18 -17 -13 -9 -8 -11 -14 -16 -16 -14 -6 -5 -6 -2 13 17 16 15 13 9 2 -3 -6 -6 -5 -8 -13 -17 -16 -7 4 6 3 -3 -8 -10 -11 -11 -10 -9 -10 -12 -13 -13 -10 -5 -1 -1 -2 -4 -6 -9 -12 -14 -16 -18 -19 -20 -18 -15 -16 -9 -3 -0 -2 -1 6 11 14 14 15 15 13 8 4 -1 -4 -7 -10 -12 -12 -10 -8 -8 -8 -9 -10 -11 -10 -6 -1 3 4 3 -1 -2 -3 -4 -5 -5 -6 -9 -8 -0 17 30 28 23 17 11 2 -5 -10 -12 -15 -17 -16 -15 -13 -11 -10 -12 -13 -14 -11 -7 -6 -8 -14 -19 -21 -23 -15 -4 -0 -4 -7 -9 -9 -10 -11 -11 -11 -12 -12 -12 -13 -13 -15 -18 -21 -21 -19 -16 -14 -15 -16 -18 -19 -19 -19 -20 -20 -19 -19 -20 -20 -20 -20 -21 -20 -19 -20 -23 -23 -22 -22 -23 -23 -23 -21 -19 -17 -15 -14 -15 -15 -14 -12 -16 -18 -21 -22 -22 -24 -28 -30 -29 -26 -26 -26 -24 -20 -17 -14 -14 -16 -21 -28 -30 -26 -22 -19 -20 -21 -21 -21 -20 -19 -21 -22 -25 -29 -30 -28 -23 -21 -19 -17 -15 -17 -20 -24 -28 -31 -34 -37 -37 -35 -29 -24 -22 -22 -22 -21 -22 -26 -33 -40 -44 -40 -34 -27 -22 -21 -22 -24 -27 -27 -25 -22 -14 -3 3 -2 -10 -16 -19 -22 -25 -26 -24 -20 -18 -15 -13 -11 -10 -12 -16 -16 -11 -5 -5 -10 -10 -7 -4 -3 -2 -3 -4 -4 -4 -5 -7 -8 -9 -9 -8 -8 -7 -7 -8 -7 -6 -3 -1 -1 -2 -2 -2 -4 -8 -11 -13 -12 -10 -7 -5 -4 -3 -2 -3 -4 -6 -8 -8 -7 -6 -6 -8 -9 -10 -10 -9 -9 -8 -7 -7 -8 -9 -9 -8 -8 -7 -6 -3 -0 1 -0 -2 -4 -6 -6 -7 -8 -10 -12 -11 -10 -9 -6 -3 -3 -4 -6 -8 -9 -10 -10 -8 -3 -3 -6 -9 -9 -7 -7 -8 -10 -12 -13 -12 -13 -11 -3 0 -6 -11 -12 -7 1 3 -0 -5 -9 -12 -10 -6 -2 -1 -6 -9 -10 -9 -8 -8 -10 -13 -16 -19 -20 -18 -14 -12 -11 -11 -10 -10 -10 -11 -10 -6 -9 -7 10 18 17 15 12 10 5 -1 -5 -6 -5 -6 -11 -16 -17 -10 2 6 5 -1 -6 -8 -10 -11 -11 -11 -9 -10 -11 -12 -11 -9 -5 -2 -1 -1 -3 -6 -10 -13 -16 -18 -20 -20 -18 -15 -17 -12 -6 -2 -2 -3 3 10 15 15 13 13 12 11 7 2 -2 -5 -8 -9 -11 -9 -8 -8 -10 -11 -13 -14 -15 -14 -6 3 8 7 2 -2 -3 -4 -4 -3 -4 -6 -9 -7 3 20 26 26 21 15 6 -2 -7 -10 -14 -16 -17 -16 -13 -11 -10 -11 -13 -14 -13 -9 -6 -7 -11 -19 -23 -27 -20 -7 1 -2 -4 -6 -7 -8 -9 -9 -10 -11 -11 -12 -12 -13 -14 -17 -20 -22 -21 -17 -13 -13 -15 -17 -19 -20 -20 -20 -20 -19 -19 -20 -21 -21 -21 -20 -19 -19 -20 -23 -24 -24 -24 -24 -24 -25 -24 -22 -20 -18 -15 -16 -17 -17 -16 -17 -19 -20 -21 -21 -26 -30 -30 -27 -23 -22 -23 -23 -22 -19 -18 -16 -17 -21 -27 -30 -27 -22 -19 -20 -21 -22 -22 -19 -15 -20 -22 -25 -27 -29 -29 -25 -22 -20 -19 -16 -17 -20 -23 -27 -29 -32 -34 -36 -36 -31 -26 -23 -21 -21 -21 -23 -27 -33 -41 -45 -43 -38 -31 -24 -22 -21 -23 -27 -27 -26 -24 -17 -6 2 -1 -9 -15 -18 -20 -24 -25 -25 -23 -20 -18 -15 -12 -8 -9 -13 -14 -12 -8 -8 -4 -2 -0 0 -1 -2 -3 -4 -6 -7 -7 -8 -9 -10 -10 -10 -9 -8 -7 -9 -9 -9 -7 -4 -3 -3 -2 -2 -2 -5 -8 -10 -10 -8 -6 -5 -5 -4 -3 -3 -3 -3 -4 -5 -5 -6 -6 -7 -7 -8 -8 -8 -9 -8 -8 -7 -7 -8 -8 -8 -8 -9 -8 -5 -3 -1 -0 -1 -3 -6 -8 -8 -9 -10 -11 -11 -10 -9 -8 -6 -3 -3 -5 -6 -7 -10 -11 -10 -5 -3 -4 -7 -9 -8 -8 -8 -10 -12 -14 -12 -13 -13 -9 1 -1 -7 -11 -10 -3 3 3 -1 -7 -13 -13 -9 -4 -0 -4 -8 -9 -9 -9 -8 -9 -12 -15 -18 -20 -19 -16 -13 -13 -14 -11 -8 -7 -8 -13 -11 -14 -11 5 15 17 14 11 10 8 2 -3 -6 -5 -5 -9 -14 -17 -14 -2 5 5 0 -5 -8 -9 -10 -11 -12 -11 -10 -10 -11 -11 -10 -8 -6 -3 -1 -1 -4 -8 -12 -16 -18 -19 -20 -19 -17 -15 -14 -10 -5 -2 -5 -1 7 15 18 14 12 11 12 10 5 1 -2 -5 -6 -8 -8 -7 -8 -10 -11 -14 -16 -17 -17 -11 1 10 11 6 1 -2 -3 -3 -2 -2 -4 -7 -9 -10 3 17 25 25 18 9 1 -5 -8 -12 -16 -17 -16 -13 -10 -8 -8 -11 -14 -13 -10 -7 -7 -10 -18 -24 -28 -23 -10 -0 -0 -2 -4 -5 -6 -7 -7 -7 -9 -10 -11 -11 -12 -13 -17 -21 -23 -23 -19 -14 -14 -15 -17 -19 -20 -20 -20 -20 -20 -20 -21 -22 -22 -21 -19 -19 -20 -21 -22 -25 -25 -25 -25 -25 -25 -24 -23 -21 -18 -16 -16 -17 -18 -17 -17 -19 -20 -20 -20 -24 -27 -26 -23 -21 -20 -23 -24 -24 -22 -22 -20 -20 -23 -26 -26 -23 -20 -19 -19 -21 -23 -21 -16 -11 -18 -24 -26 -25 -28 -30 -27 -24 -22 -21 -17 -16 -18 -21 -25 -27 -29 -31 -35 -36 -32 -27 -22 -20 -21 -21 -22 -26 -34 -42 -43 -43 -39 -33 -26 -23 -22 -24 -28 -27 -27 -26 -20 -9 0 -1 -7 -14 -18 -20 -23 -25 -26 -26 -23 -20 -16 -12 -6 -6 -9 -11 -11 -11 -10 -2 -1 -1 -1 -2 -3 -4 -5 -7 -9 -10 -10 -11 -11 -11 -11 -10 -8 -7 -8 -9 -8 -6 -3 -2 -2 -2 -3 -4 -4 -5 -4 -4 -3 -4 -5 -5 -3 -1 -2 -3 -2 -1 -1 -3 -4 -5 -6 -6 -6 -6 -7 -8 -9 -9 -9 -9 -8 -6 -6 -7 -8 -7 -6 -5 -5 -4 -3 -3 -5 -8 -9 -9 -9 -10 -10 -9 -9 -9 -8 -5 -3 -2 -4 -6 -8 -10 -11 -8 -3 -3 -6 -9 -9 -8 -8 -9 -12 -15 -15 -14 -15 -14 -4 0 -3 -9 -11 -8 -1 5 5 -2 -11 -15 -13 -7 -1 -1 -6 -9 -11 -10 -9 -9 -10 -13 -17 -20 -19 -16 -14 -14 -15 -14 -12 -11 -12 -14 -16 -17 -15 -3 8 13 13 11 11 10 5 -1 -5 -6 -5 -7 -12 -17 -17 -7 3 5 2 -4 -7 -7 -9 -11 -12 -11 -10 -9 -9 -10 -11 -10 -8 -6 -4 -2 -3 -6 -10 -14 -15 -16 -17 -19 -20 -15 -15 -13 -8 -2 -4 -5 2 12 20 16 11 9 9 11 9 6 2 -1 -3 -6 -7 -7 -8 -10 -12 -14 -16 -17 -19 -15 -3 7 12 11 4 -0 -3 -2 -0 -1 -3 -6 -8 -11 -11 2 17 26 22 14 5 -2 -6 -10 -14 -16 -17 -14 -9 -5 -5 -7 -10 -11 -10 -8 -8 -10 -16 -23 -26 -22 -12 -3 0 0 -1 -3 -5 -4 -3 -4 -5 -8 -9 -10 -10 -12 -16 -20 -23 -23 -20 -14 -13 -15 -18 -19 -19 -19 -20 -20 -20 -20 -21 -22 -22 -20 -19 -19 -21 -22 -22 -23 -25 -25 -25 -24 -23 -23 -22 -20 -18 -16 -16 -17 -17 -17 -17 -19 -20 -20 -19 -20 -22 -23 -22 -22 -22 -25 -27 -28 -25 -25 -24 -23 -25 -25 -22 -19 -18 -19 -19 -20 -22 -20 -13 -10 -15 -22 -24 -23 -27 -30 -29 -26 -23 -21 -17 -16 -17 -20 -24 -26 -27 -29 -32 -35 -32 -27 -21 -20 -21 -21 -22 -26 -35 -41 -42 -41 -38 -34 -28 -23 -23 -26 -29 -28 -28 -26 -21 -11 -1 -1 -6 -13 -18 -21 -23 -26 -28 -27 -24 -21 -16 -10 -5 -6 -8 -9 -10 -13 -13 -3 -4 -4 -4 -4 -5 -6 -7 -8 -10 -11 -10 -10 -9 -9 -8 -8 -8 -7 -6 -6 -4 -1 2 3 4 3 2 0 -1 -1 0 1 -0 -2 -4 -6 -7 -3 -2 -1 2 4 4 1 -2 -4 -4 -4 -5 -5 -6 -7 -9 -10 -10 -9 -8 -6 -4 -5 -5 -5 -4 -5 -5 -5 -5 -5 -6 -7 -9 -9 -9 -7 -7 -7 -8 -9 -9 -7 -4 -1 -2 -4 -6 -8 -10 -9 -5 -2 -1 -5 -8 -8 -8 -8 -9 -13 -16 -17 -17 -17 -11 -4 -3 -5 -9 -9 -4 3 7 3 -7 -13 -15 -11 -4 0 -3 -8 -11 -12 -10 -9 -9 -11 -15 -18 -18 -17 -15 -14 -14 -14 -15 -16 -16 -16 -16 -17 -16 -10 -3 6 11 13 14 14 10 3 -3 -6 -6 -6 -10 -15 -19 -12 -2 4 3 -2 -5 -6 -7 -9 -11 -11 -10 -10 -9 -9 -10 -10 -10 -8 -6 -5 -4 -7 -10 -13 -13 -13 -14 -18 -20 -16 -14 -14 -12 -4 -4 -6 -4 6 18 17 12 9 8 10 11 9 6 3 0 -3 -5 -5 -6 -8 -11 -13 -15 -17 -17 -15 -8 0 8 11 7 2 -1 -2 0 -0 -3 -5 -8 -11 -13 -8 5 21 23 17 9 1 -4 -7 -12 -15 -17 -17 -11 -4 -2 -2 -6 -9 -9 -8 -7 -9 -14 -21 -23 -20 -13 -7 -2 1 1 -2 -4 -2 0 1 -1 -4 -6 -8 -9 -10 -14 -19 -22 -23 -20 -14 -12 -14 -17 -19 -19 -19 -20 -20 -21 -21 -21 -22 -23 -20 -19 -19 -21 -23 -23 -22 -23 -24 -24 -24 -23 -23 -22 -20 -18 -16 -16 -17 -17 -17 -17 -18 -20 -20 -20 -19 -19 -20 -21 -22 -24 -25 -27 -29 -29 -29 -27 -26 -26 -24 -20 -17 -17 -18 -19 -20 -22 -21 -15 -12 -14 -18 -21 -21 -27 -30 -31 -29 -24 -21 -17 -15 -15 -18 -23 -26 -28 -29 -31 -34 -33 -27 -22 -20 -21 -21 -22 -26 -34 -38 -40 -40 -38 -34 -30 -26 -24 -27 -30 -29 -28 -26 -21 -12 -4 -2 -6 -13 -17 -20 -23 -27 -30 -27 -23 -20 -15 -8 -6 -7 -8 -9 -10 -14 -15 -6 -6 -6 -5 -5 -6 -7 -8 -9 -9 -9 -7 -6 -5 -5 -5 -5 -5 -5 -4 -2 -0 1 2 1 1 1 2 2 0 -2 -3 -3 -5 -6 -6 -6 -7 -8 -8 -4 -0 4 6 3 -1 -3 -4 -3 -3 -4 -5 -6 -8 -8 -9 -9 -9 -7 -6 -5 -4 -3 -4 -4 -5 -5 -6 -8 -8 -8 -9 -9 -9 -6 -4 -4 -6 -9 -10 -9 -6 -2 -1 -3 -4 -6 -9 -10 -8 -3 0 1 -3 -6 -8 -8 -8 -11 -15 -18 -19 -18 -16 -9 -5 -4 -6 -8 -6 -0 4 4 -3 -10 -14 -13 -8 -1 -1 -5 -10 -13 -12 -9 -8 -9 -13 -17 -18 -18 -17 -15 -13 -14 -16 -17 -18 -16 -15 -17 -18 -14 -10 -4 5 13 16 15 13 7 0 -5 -6 -6 -8 -12 -18 -16 -8 -0 3 1 -3 -5 -6 -8 -11 -12 -11 -10 -10 -9 -10 -10 -10 -9 -8 -7 -7 -9 -12 -14 -12 -11 -13 -16 -19 -16 -14 -14 -13 -9 -3 -4 -6 -2 10 17 17 15 13 12 13 13 11 8 4 1 -1 -2 -4 -6 -9 -12 -15 -17 -15 -14 -11 -6 2 8 7 4 0 -1 0 0 -2 -5 -8 -11 -13 -13 -7 7 18 18 12 5 -2 -5 -10 -14 -17 -18 -14 -7 -1 1 -2 -7 -8 -7 -7 -8 -12 -18 -20 -17 -10 -9 -5 -0 3 -0 -3 -2 2 5 3 -0 -3 -5 -6 -8 -12 -17 -21 -22 -20 -15 -13 -14 -17 -19 -20 -19 -19 -20 -21 -21 -22 -23 -24 -22 -21 -21 -22 -24 -23 -21 -22 -23 -24 -25 -24 -24 -23 -22 -19 -17 -16 -17 -17 -16 -16 -17 -19 -20 -20 -19 -18 -19 -21 -23 -24 -23 -24 -28 -31 -32 -31 -27 -25 -22 -18 -17 -17 -18 -19 -21 -24 -24 -19 -16 -14 -15 -18 -22 -26 -31 -33 -31 -24 -21 -17 -14 -12 -14 -20 -25 -27 -27 -29 -33 -33 -29 -24 -22 -22 -22 -23 -26 -32 -36 -38 -39 -38 -34 -31 -28 -27 -28 -31 -30 -28 -24 -21 -14 -6 -4 -6 -12 -17 -20 -23 -26 -27 -23 -20 -18 -14 -8 -7 -8 -9 -9 -9 -15 -17 -7 -7 -6 -6 -7 -7 -8 -7 -7 -6 -3 -2 -1 -1 -2 -2 -3 -4 -4 -3 -3 -4 -5 -6 -6 -6 -5 -4 -5 -7 -9 -11 -11 -10 -10 -10 -10 -7 -5 -5 -5 -4 -2 2 1 -2 -4 -3 -2 -2 -3 -4 -5 -6 -6 -7 -7 -8 -8 -7 -5 -3 -2 -3 -4 -4 -5 -7 -9 -8 -7 -7 -8 -8 -6 -4 -3 -4 -7 -9 -9 -7 -4 -0 -1 -3 -5 -7 -9 -9 -6 -2 3 2 -3 -6 -8 -8 -10 -13 -17 -19 -19 -17 -11 -7 -5 -6 -8 -7 -4 0 4 2 -5 -11 -13 -11 -4 -0 -1 -6 -12 -13 -10 -7 -7 -11 -16 -18 -19 -19 -15 -10 -11 -14 -17 -19 -17 -15 -16 -18 -16 -11 -8 -3 5 14 15 14 10 4 -3 -5 -6 -7 -10 -16 -18 -13 -5 2 2 -1 -3 -5 -7 -10 -12 -11 -11 -10 -9 -9 -10 -10 -10 -9 -8 -9 -11 -13 -15 -12 -11 -12 -15 -17 -16 -14 -13 -13 -13 -4 -2 -4 -7 -1 11 19 22 20 16 16 15 14 11 8 4 1 -1 -2 -4 -7 -11 -15 -17 -16 -13 -11 -8 -2 4 6 5 2 -1 0 0 -2 -5 -8 -11 -13 -15 -13 -6 6 12 11 6 -0 -4 -9 -13 -16 -17 -16 -11 -5 1 1 -4 -6 -7 -7 -8 -11 -17 -18 -15 -9 -9 -9 -5 0 -0 -4 -4 0 6 7 4 1 -1 -4 -6 -9 -14 -19 -21 -20 -16 -14 -14 -17 -20 -20 -18 -18 -19 -20 -20 -22 -25 -25 -25 -24 -24 -24 -25 -23 -22 -21 -22 -24 -25 -25 -24 -24 -23 -21 -18 -17 -17 -17 -16 -16 -16 -18 -19 -19 -19 -19 -20 -21 -22 -24 -25 -25 -27 -31 -33 -33 -29 -23 -19 -17 -16 -17 -18 -20 -22 -25 -27 -23 -19 -15 -13 -14 -20 -27 -34 -37 -32 -25 -22 -17 -12 -10 -10 -16 -22 -25 -25 -29 -32 -34 -32 -27 -23 -23 -23 -24 -24 -29 -34 -37 -38 -37 -34 -31 -28 -27 -26 -29 -30 -28 -24 -20 -14 -7 -5 -6 -12 -16 -19 -23 -26 -23 -21 -19 -16 -13 -10 -8 -8 -9 -9 -9 -14 -17 -6 -6 -7 -7 -7 -7 -5 -3 -1 -1 -2 -3 -4 -4 -4 -5 -7 -9 -10 -10 -10 -11 -11 -11 -10 -9 -7 -7 -8 -11 -13 -15 -16 -15 -13 -10 -8 -6 -5 -3 -3 -4 -6 -7 -5 -4 -4 -4 -2 -2 -2 -2 -3 -4 -5 -5 -5 -6 -7 -7 -6 -4 -3 -3 -3 -4 -5 -6 -7 -7 -6 -5 -5 -6 -7 -6 -4 -2 -4 -7 -9 -8 -6 -1 -0 -2 -4 -5 -7 -9 -9 -6 -0 4 2 -2 -6 -8 -9 -11 -15 -18 -19 -17 -12 -8 -6 -7 -8 -9 -7 -3 2 4 0 -6 -12 -13 -8 -2 0 -2 -9 -13 -11 -8 -7 -10 -15 -18 -19 -19 -15 -9 -9 -12 -16 -19 -18 -15 -15 -17 -18 -11 -9 -7 -1 9 14 14 11 7 0 -4 -6 -7 -8 -13 -17 -16 -10 -2 2 -0 -3 -5 -6 -8 -10 -11 -11 -10 -9 -9 -9 -9 -9 -9 -9 -10 -12 -14 -15 -12 -11 -12 -14 -16 -15 -14 -13 -13 -17 -6 -0 -0 -6 -7 2 13 22 25 22 19 17 16 13 11 7 4 2 1 -0 -4 -9 -14 -17 -18 -15 -12 -8 -3 1 5 5 3 -0 -0 0 -1 -4 -7 -10 -14 -16 -15 -11 -2 4 5 3 -0 -4 -9 -13 -15 -16 -16 -15 -10 -2 3 -0 -4 -6 -7 -8 -11 -15 -16 -13 -7 -8 -10 -10 -6 -2 -5 -6 -3 4 8 7 5 2 -0 -3 -7 -12 -18 -21 -20 -17 -15 -15 -17 -20 -20 -18 -17 -18 -19 -19 -22 -25 -28 -28 -28 -28 -27 -26 -24 -23 -22 -22 -23 -25 -25 -24 -24 -24 -22 -20 -20 -19 -18 -17 -16 -16 -17 -18 -18 -19 -20 -21 -20 -20 -24 -28 -31 -30 -30 -32 -33 -29 -22 -18 -17 -17 -17 -18 -20 -23 -26 -28 -23 -20 -15 -11 -9 -15 -24 -33 -38 -35 -27 -24 -18 -12 -8 -8 -13 -19 -22 -24 -27 -31 -33 -34 -31 -27 -24 -24 -24 -22 -26 -32 -36 -36 -37 -35 -32 -28 -26 -24 -25 -27 -27 -24 -19 -14 -9 -5 -6 -10 -15 -18 -23 -27 -23 -22 -20 -18 -14 -11 -9 -9 -9 -10 -9 -11 -15 -6 -7 -9 -9 -7 -5 -4 -3 -3 -4 -5 -5 -5 -6 -6 -7 -8 -9 -9 -9 -9 -11 -12 -12 -12 -11 -9 -8 -9 -11 -12 -14 -14 -13 -12 -9 -7 -6 -6 -5 -5 -6 -9 -13 -10 -8 -6 -5 -3 -2 -1 -1 -1 -3 -4 -4 -4 -4 -6 -7 -7 -6 -5 -4 -4 -4 -5 -5 -5 -5 -5 -5 -4 -5 -7 -8 -7 -3 -1 -4 -7 -9 -7 -3 -0 -1 -2 -4 -6 -8 -10 -9 -6 1 5 3 -2 -6 -8 -10 -13 -17 -19 -18 -13 -8 -6 -7 -8 -10 -9 -6 -1 4 4 -1 -8 -12 -11 -5 -1 -0 -5 -10 -12 -10 -8 -9 -13 -16 -18 -18 -16 -10 -8 -10 -14 -18 -18 -16 -15 -16 -19 -11 -8 -7 -6 2 10 12 11 8 3 -2 -5 -7 -8 -11 -15 -16 -13 -7 -1 -0 -1 -3 -5 -7 -9 -10 -11 -10 -9 -9 -9 -9 -9 -9 -10 -11 -12 -14 -15 -14 -12 -12 -13 -15 -15 -15 -14 -13 -19 -10 -1 3 -2 -8 -5 4 15 25 27 24 21 17 14 13 11 8 5 3 2 -1 -6 -12 -17 -19 -18 -14 -10 -5 0 3 5 3 0 -0 0 -0 -2 -6 -10 -14 -17 -16 -11 -5 -0 1 0 -1 -4 -9 -12 -14 -16 -16 -16 -13 -6 2 2 -1 -5 -7 -8 -11 -14 -15 -12 -6 -6 -10 -12 -10 -2 -1 -2 -3 1 7 8 8 7 4 1 -4 -11 -18 -22 -22 -19 -16 -15 -18 -21 -21 -19 -17 -18 -19 -20 -22 -26 -29 -30 -30 -29 -28 -27 -24 -23 -22 -21 -22 -23 -24 -25 -24 -24 -24 -23 -22 -21 -19 -18 -17 -16 -16 -15 -17 -18 -20 -21 -20 -17 -22 -29 -34 -31 -29 -30 -31 -28 -21 -19 -18 -18 -18 -18 -19 -22 -24 -25 -21 -19 -16 -11 -6 -10 -19 -28 -34 -36 -28 -24 -19 -13 -8 -8 -12 -17 -21 -23 -26 -29 -32 -34 -33 -29 -26 -24 -25 -22 -23 -29 -33 -34 -37 -37 -34 -31 -27 -24 -23 -24 -24 -22 -18 -14 -9 -5 -5 -8 -12 -16 -22 -29 -27 -24 -21 -19 -18 -13 -11 -10 -9 -10 -9 -9 -11 -9 -10 -9 -8 -5 -4 -4 -5 -6 -7 -7 -7 -7 -8 -9 -9 -9 -8 -8 -8 -8 -9 -11 -13 -14 -13 -10 -8 -8 -9 -11 -12 -12 -11 -10 -9 -8 -7 -8 -8 -10 -13 -16 -17 -15 -12 -9 -6 -4 -3 -2 -1 -1 -2 -3 -4 -4 -4 -5 -6 -6 -6 -6 -6 -5 -4 -4 -3 -2 -2 -3 -3 -3 -4 -8 -10 -10 -7 -1 -1 -4 -8 -9 -5 -1 0 -1 -3 -5 -7 -9 -10 -10 -6 3 7 4 -2 -5 -8 -12 -16 -20 -20 -15 -9 -4 -4 -6 -8 -9 -8 -4 2 6 4 -2 -9 -11 -9 -5 -1 -2 -7 -11 -11 -10 -8 -11 -14 -17 -18 -17 -12 -9 -9 -12 -17 -19 -17 -16 -16 -18 -12 -6 -5 -7 -6 4 10 11 9 5 1 -4 -7 -9 -10 -13 -15 -14 -10 -4 -1 -1 -2 -3 -4 -7 -9 -11 -11 -9 -9 -9 -10 -11 -12 -12 -12 -12 -14 -16 -16 -14 -12 -11 -13 -15 -16 -15 -13 -18 -15 -6 3 2 -4 -6 -3 4 16 24 26 24 19 14 13 12 9 6 3 2 1 -4 -9 -16 -18 -18 -15 -12 -8 -3 1 4 4 1 -0 -0 -0 -2 -5 -10 -15 -17 -17 -12 -5 -1 0 -1 -2 -4 -8 -11 -12 -14 -16 -16 -15 -11 -2 -0 -2 -5 -7 -8 -10 -13 -15 -13 -7 -5 -8 -12 -12 -4 1 2 -1 -3 1 8 11 11 8 4 -1 -9 -17 -21 -22 -20 -17 -15 -18 -21 -22 -21 -19 -18 -20 -21 -23 -26 -29 -31 -31 -29 -28 -26 -24 -23 -23 -22 -21 -23 -24 -25 -24 -24 -24 -24 -23 -21 -20 -19 -18 -17 -15 -14 -16 -18 -19 -20 -20 -18 -21 -27 -31 -29 -28 -30 -31 -28 -22 -20 -19 -19 -19 -19 -19 -20 -20 -21 -20 -19 -17 -12 -5 -7 -14 -22 -29 -33 -26 -21 -17 -13 -9 -9 -12 -16 -20 -22 -24 -28 -31 -32 -31 -29 -26 -24 -24 -23 -24 -26 -29 -31 -37 -38 -37 -35 -30 -26 -23 -22 -22 -20 -16 -13 -10 -6 -4 -5 -7 -12 -20 -30 -31 -29 -25 -22 -22 -16 -12 -10 -10 -9 -9 -9 -9 -10 -7 -5 -3 -3 -4 -6 -9 -10 -9 -9 -8 -6 -6 -6 -6 -6 -6 -7 -7 -8 -8 -9 -11 -14 -12 -10 -8 -9 -10 -10 -11 -11 -11 -12 -11 -10 -9 -9 -10 -13 -18 -23 -23 -18 -14 -11 -8 -4 -2 -2 -2 -2 -2 -3 -5 -6 -6 -4 -3 -3 -4 -6 -7 -5 -4 -4 -3 -2 -2 -2 -2 -3 -4 -7 -10 -12 -10 -4 0 -1 -5 -8 -8 -3 0 2 -0 -4 -5 -7 -10 -12 -11 -3 6 9 5 -2 -5 -10 -16 -21 -22 -18 -10 -3 -2 -4 -6 -7 -9 -8 -2 5 8 6 -1 -9 -11 -9 -4 -0 -3 -8 -11 -10 -8 -9 -12 -15 -17 -17 -13 -10 -9 -12 -16 -19 -19 -18 -18 -18 -14 -7 -3 -5 -10 -4 5 11 11 8 4 -1 -6 -8 -9 -12 -14 -14 -11 -6 -4 -2 -2 -2 -3 -5 -8 -11 -11 -10 -9 -9 -10 -13 -14 -13 -12 -12 -14 -17 -18 -16 -12 -9 -11 -14 -17 -17 -16 -18 -18 -11 -1 1 -2 -5 -6 -4 2 14 22 23 19 13 12 12 9 6 2 2 1 -2 -6 -12 -15 -16 -16 -14 -12 -8 -3 3 5 3 1 0 -0 -1 -5 -9 -14 -17 -18 -13 -5 1 2 0 -2 -4 -7 -9 -10 -12 -15 -16 -16 -14 -6 -2 -3 -6 -8 -8 -10 -13 -15 -15 -10 -6 -7 -11 -14 -8 -0 4 1 -4 -3 4 11 13 10 6 1 -6 -13 -19 -22 -20 -17 -14 -17 -21 -23 -23 -21 -20 -21 -22 -22 -24 -26 -29 -30 -29 -27 -24 -23 -23 -23 -22 -21 -23 -24 -24 -24 -24 -25 -24 -23 -21 -20 -19 -18 -17 -15 -14 -15 -17 -19 -20 -22 -21 -23 -26 -27 -26 -28 -30 -32 -29 -24 -22 -20 -20 -20 -20 -20 -21 -21 -21 -22 -21 -19 -13 -5 -5 -10 -18 -24 -28 -24 -18 -15 -13 -11 -12 -14 -17 -20 -23 -25 -28 -31 -31 -29 -28 -26 -23 -23 -25 -26 -27 -29 -32 -37 -39 -39 -38 -34 -29 -25 -22 -21 -20 -16 -14 -12 -9 -1 5 5 -1 -15 -30 -34 -33 -29 -25 -25 -19 -14 -11 -10 -9 -9 -9 -9 -4 -1 0 -0 -3 -6 -8 -9 -8 -6 -4 -2 -1 -1 -2 -2 -3 -4 -5 -5 -6 -6 -7 -8 -9 -10 -9 -10 -11 -11 -10 -9 -9 -10 -12 -13 -13 -12 -11 -12 -14 -17 -20 -21 -17 -14 -12 -10 -6 -2 -1 -2 -3 -3 -3 -5 -7 -7 -6 -3 -1 -1 -3 -5 -5 -5 -4 -3 -2 -2 -2 -2 -3 -3 -6 -9 -12 -12 -9 -2 0 -1 -6 -8 -5 -1 2 2 -1 -5 -7 -10 -12 -13 -9 -1 6 8 3 -2 -8 -14 -20 -23 -20 -13 -6 -1 -2 -4 -6 -8 -10 -7 1 7 9 5 -4 -10 -11 -8 -3 -2 -6 -9 -11 -10 -9 -11 -14 -17 -18 -15 -12 -10 -11 -16 -20 -21 -20 -19 -18 -17 -9 -2 -1 -11 -11 -2 8 14 12 8 2 -3 -7 -9 -12 -14 -14 -12 -8 -5 -4 -3 -3 -3 -5 -7 -10 -11 -10 -9 -9 -10 -12 -13 -13 -13 -13 -15 -18 -19 -17 -12 -8 -8 -12 -16 -19 -21 -21 -19 -13 -5 -2 -3 -4 -6 -7 -9 -1 10 17 17 12 11 11 9 6 3 0 -1 -2 -4 -7 -11 -13 -15 -15 -15 -13 -8 -2 4 5 3 1 -0 -2 -4 -8 -13 -18 -20 -16 -7 1 4 3 -0 -3 -5 -7 -8 -10 -13 -16 -18 -16 -8 -3 -3 -5 -8 -9 -11 -13 -14 -16 -12 -7 -6 -9 -15 -12 -3 3 4 -3 -5 -1 6 12 12 8 3 -3 -9 -15 -20 -22 -20 -17 -17 -20 -23 -24 -24 -22 -22 -22 -22 -22 -24 -27 -28 -29 -27 -24 -22 -23 -23 -22 -21 -22 -23 -24 -24 -24 -24 -24 -23 -22 -21 -19 -18 -17 -16 -14 -15 -17 -19 -22 -22 -22 -23 -25 -27 -26 -27 -30 -32 -30 -26 -23 -21 -21 -21 -21 -22 -22 -23 -23 -23 -22 -19 -13 -6 -4 -8 -15 -21 -25 -23 -18 -14 -12 -13 -15 -16 -18 -18 -22 -25 -28 -32 -31 -29 -29 -27 -25 -24 -27 -27 -28 -32 -34 -37 -37 -38 -38 -36 -32 -28 -25 -23 -21 -18 -15 -14 -12 -1 13 19 13 -5 -29 -36 -34 -31 -27 -25 -22 -18 -14 -10 -9 -9 -8 -8 2 3 1 -3 -6 -7 -6 -5 -3 0 2 3 3 2 -1 -2 -4 -5 -6 -5 -5 -5 -5 -6 -6 -7 -8 -9 -10 -10 -10 -9 -9 -9 -11 -13 -15 -15 -14 -12 -14 -17 -19 -18 -15 -13 -12 -11 -10 -6 -2 -1 -2 -3 -3 -4 -6 -8 -9 -6 -2 1 1 -1 -3 -3 -2 -2 -2 -1 -2 -3 -4 -5 -6 -8 -11 -13 -13 -6 0 2 -2 -6 -6 -3 2 4 2 -2 -7 -10 -13 -15 -13 -7 1 8 8 3 -3 -9 -17 -22 -21 -15 -8 -3 -3 -3 -4 -6 -8 -9 -6 0 7 9 3 -5 -10 -10 -7 -3 -3 -6 -10 -11 -9 -8 -11 -15 -17 -17 -15 -12 -12 -15 -19 -21 -21 -20 -19 -19 -13 -3 2 -7 -14 -9 2 14 15 11 6 -0 -5 -9 -11 -14 -15 -13 -8 -5 -4 -4 -4 -4 -5 -7 -9 -11 -11 -9 -9 -9 -11 -13 -14 -14 -15 -17 -19 -19 -17 -14 -9 -7 -10 -14 -19 -22 -23 -20 -13 -6 -3 -5 -6 -7 -8 -11 -11 -4 6 13 13 11 10 9 7 3 -0 -3 -4 -4 -5 -7 -10 -14 -16 -17 -16 -13 -8 0 5 4 2 0 -2 -4 -7 -10 -15 -19 -18 -10 -2 4 6 2 -1 -4 -5 -6 -7 -12 -16 -18 -18 -10 -3 -2 -4 -7 -9 -12 -13 -14 -15 -13 -9 -6 -8 -14 -15 -7 1 6 1 -4 -4 0 8 12 10 5 0 -5 -10 -16 -21 -23 -20 -18 -21 -24 -26 -25 -23 -21 -21 -21 -21 -22 -25 -27 -28 -27 -24 -23 -23 -23 -22 -22 -22 -23 -24 -23 -23 -23 -22 -22 -22 -21 -19 -18 -17 -16 -15 -15 -16 -19 -23 -23 -22 -22 -23 -27 -29 -31 -31 -31 -29 -27 -25 -23 -22 -21 -21 -22 -24 -25 -23 -22 -21 -18 -12 -6 -4 -7 -13 -19 -24 -24 -20 -15 -13 -14 -16 -18 -18 -16 -18 -21 -26 -30 -30 -30 -30 -30 -28 -25 -27 -28 -29 -34 -36 -36 -36 -35 -35 -33 -32 -30 -28 -26 -23 -19 -16 -15 -15 -4 16 30 27 8 -26 -36 -34 -31 -27 -25 -23 -21 -18 -13 -10 -9 -8 -8 2 0 -3 -6 -7 -5 -2 -0 2 3 3 1 -1 -3 -5 -7 -8 -9 -8 -7 -7 -7 -7 -7 -7 -7 -8 -9 -9 -10 -11 -12 -12 -11 -11 -12 -14 -14 -13 -12 -13 -14 -15 -15 -14 -14 -13 -12 -11 -9 -6 -3 -1 -2 -3 -4 -6 -8 -10 -9 -6 -2 1 1 -0 -1 -1 -1 -1 -1 -2 -4 -5 -6 -5 -7 -10 -13 -15 -10 -2 3 3 -2 -5 -4 -0 5 6 2 -4 -9 -13 -15 -15 -12 -5 4 10 9 3 -5 -13 -20 -21 -16 -10 -4 -4 -4 -4 -4 -5 -8 -9 -6 0 8 7 0 -7 -11 -11 -6 -3 -4 -8 -14 -12 -9 -9 -11 -16 -18 -17 -14 -12 -14 -18 -21 -21 -20 -18 -20 -15 -6 3 -2 -11 -13 -5 9 16 14 10 4 -1 -6 -10 -13 -15 -14 -10 -6 -4 -4 -4 -4 -5 -7 -9 -10 -10 -9 -9 -10 -11 -13 -14 -16 -17 -19 -21 -20 -18 -15 -11 -8 -9 -13 -18 -22 -23 -20 -13 -5 -3 -6 -8 -10 -10 -11 -13 -12 -5 7 12 10 9 9 8 5 1 -2 -4 -4 -4 -5 -8 -12 -16 -17 -18 -17 -14 -6 3 4 4 1 -2 -5 -6 -7 -9 -14 -16 -13 -6 2 6 5 2 -1 -3 -4 -5 -9 -14 -18 -19 -11 -4 -1 -3 -7 -9 -12 -13 -13 -14 -14 -11 -8 -7 -13 -16 -12 -3 7 8 2 -3 -4 1 8 9 7 3 -2 -7 -14 -20 -23 -20 -17 -20 -23 -23 -21 -19 -18 -19 -22 -22 -22 -23 -25 -26 -26 -24 -23 -23 -23 -23 -22 -22 -23 -24 -24 -22 -22 -21 -21 -21 -21 -20 -19 -18 -17 -16 -15 -16 -19 -23 -23 -24 -25 -23 -27 -31 -33 -33 -30 -28 -26 -26 -25 -24 -23 -22 -23 -26 -27 -23 -21 -20 -17 -13 -8 -5 -6 -11 -17 -22 -24 -22 -16 -14 -13 -15 -18 -20 -16 -16 -18 -23 -27 -29 -30 -31 -31 -30 -27 -27 -28 -30 -35 -36 -36 -34 -34 -33 -32 -31 -31 -31 -30 -27 -21 -17 -15 -17 -11 13 37 41 26 -19 -38 -34 -30 -25 -23 -23 -22 -21 -17 -13 -10 -10 -9 -2 -5 -6 -6 -4 -2 -0 0 0 -1 -3 -5 -6 -7 -8 -9 -9 -9 -8 -7 -7 -7 -7 -7 -7 -8 -9 -10 -11 -12 -14 -15 -15 -14 -12 -11 -12 -12 -12 -11 -11 -11 -11 -11 -11 -11 -12 -13 -13 -12 -9 -6 -3 -1 -2 -4 -5 -6 -7 -8 -8 -5 -2 1 1 -0 -1 -1 -1 -1 -3 -5 -6 -6 -5 -6 -9 -13 -16 -14 -6 2 6 2 -3 -6 -3 2 8 7 2 -5 -11 -14 -15 -14 -10 -3 8 11 7 -1 -9 -17 -20 -17 -11 -4 -4 -5 -5 -4 -3 -5 -8 -9 -6 1 6 3 -3 -11 -14 -11 -5 -3 -5 -11 -12 -9 -7 -8 -14 -18 -18 -16 -14 -14 -18 -20 -21 -20 -18 -18 -16 -10 -0 1 -8 -13 -10 2 15 15 12 8 4 -3 -9 -13 -15 -14 -11 -7 -4 -3 -4 -5 -6 -7 -8 -10 -10 -9 -9 -10 -11 -12 -14 -16 -19 -21 -23 -22 -20 -17 -12 -9 -9 -13 -17 -21 -23 -21 -14 -5 -2 -6 -10 -11 -11 -11 -14 -15 -12 -3 8 10 10 11 14 13 7 0 -4 -4 -3 -3 -5 -9 -14 -17 -19 -20 -18 -12 -2 3 4 3 -1 -5 -7 -7 -6 -8 -11 -12 -9 -3 3 5 4 2 -1 -2 -2 -6 -12 -17 -19 -13 -5 -1 -3 -7 -9 -12 -13 -13 -14 -16 -13 -9 -6 -11 -15 -15 -9 3 9 6 -1 -6 -7 2 7 8 5 -1 -7 -13 -18 -21 -19 -15 -18 -21 -22 -20 -18 -18 -19 -21 -22 -23 -24 -24 -24 -24 -24 -23 -23 -22 -22 -22 -21 -22 -24 -24 -23 -22 -22 -22 -21 -22 -21 -19 -17 -16 -16 -15 -16 -19 -23 -24 -26 -28 -26 -27 -31 -33 -32 -29 -27 -25 -25 -26 -26 -24 -23 -24 -26 -26 -22 -21 -19 -18 -14 -10 -6 -5 -10 -17 -21 -23 -21 -18 -14 -13 -14 -18 -21 -18 -16 -17 -21 -25 -27 -28 -30 -32 -32 -28 -28 -28 -30 -33 -35 -34 -33 -32 -32 -32 -31 -31 -31 -31 -29 -24 -18 -15 -17 -17 2 31 52 40 -11 -39 -33 -29 -24 -22 -22 -21 -22 -20 -17 -14 -13 -11 -7 -7 -6 -4 -2 -2 -2 -2 -3 -4 -6 -7 -7 -7 -6 -6 -6 -7 -7 -7 -7 -7 -7 -6 -6 -6 -7 -9 -11 -13 -16 -17 -17 -16 -13 -12 -12 -12 -13 -12 -11 -10 -9 -8 -7 -7 -9 -11 -12 -12 -12 -9 -6 -2 -1 -3 -4 -5 -5 -6 -7 -7 -6 -2 0 1 -0 -1 -1 -2 -3 -4 -6 -7 -7 -7 -9 -13 -17 -16 -11 -2 6 7 0 -5 -6 -2 6 11 9 3 -5 -11 -14 -15 -13 -9 1 8 9 4 -5 -13 -18 -18 -12 -4 -2 -4 -6 -6 -3 -2 -5 -8 -9 -7 -0 2 -0 -7 -15 -15 -10 -5 -2 -6 -10 -10 -8 -7 -10 -15 -17 -17 -16 -15 -16 -19 -21 -20 -18 -17 -16 -13 -6 -0 -5 -11 -12 -5 10 14 12 8 6 1 -6 -11 -14 -15 -14 -9 -5 -1 -2 -4 -6 -7 -8 -9 -9 -9 -10 -11 -12 -11 -12 -16 -20 -23 -25 -24 -22 -19 -14 -9 -9 -11 -15 -19 -23 -22 -16 -7 -2 -6 -10 -11 -11 -11 -14 -16 -16 -13 -3 4 9 12 16 16 9 1 -4 -5 -5 -4 -6 -8 -11 -15 -18 -21 -21 -17 -7 1 5 5 1 -6 -9 -9 -7 -5 -6 -9 -9 -6 -1 2 3 3 2 0 0 -3 -9 -15 -18 -14 -7 -2 -5 -8 -10 -12 -14 -13 -15 -16 -15 -11 -6 -9 -13 -16 -14 -6 5 6 1 -6 -12 -6 5 11 8 -2 -8 -13 -17 -20 -18 -14 -16 -20 -22 -21 -21 -21 -21 -21 -21 -23 -24 -24 -24 -23 -23 -24 -24 -22 -22 -21 -21 -21 -23 -25 -24 -23 -22 -23 -23 -23 -21 -18 -16 -16 -15 -15 -16 -19 -24 -26 -29 -32 -30 -29 -31 -32 -30 -29 -29 -26 -24 -22 -22 -22 -23 -24 -25 -24 -22 -20 -20 -18 -16 -11 -7 -5 -9 -18 -23 -25 -23 -20 -15 -13 -15 -19 -22 -19 -16 -16 -20 -24 -26 -28 -31 -34 -33 -30 -28 -28 -29 -31 -32 -32 -30 -29 -31 -32 -32 -31 -30 -30 -29 -26 -21 -16 -17 -21 -14 9 51 27 -13 -35 -31 -29 -24 -22 -21 -20 -20 -20 -20 -19 -18 -15 -8 -5 -3 -3 -3 -4 -4 -4 -4 -5 -5 -6 -5 -4 -4 -4 -5 -5 -6 -7 -7 -7 -7 -7 -7 -6 -6 -7 -9 -12 -15 -16 -16 -15 -13 -12 -13 -14 -15 -14 -13 -11 -10 -8 -6 -4 -5 -7 -9 -11 -12 -11 -9 -4 -1 -1 -3 -4 -4 -4 -6 -7 -7 -6 -3 0 1 1 -1 -3 -4 -4 -5 -7 -9 -10 -11 -13 -17 -17 -15 -8 2 9 4 -2 -6 -6 -1 8 13 11 3 -6 -11 -13 -14 -14 -8 2 8 8 1 -9 -16 -19 -15 -5 1 -1 -5 -7 -6 -2 -2 -4 -8 -10 -7 -1 1 -3 -12 -17 -15 -8 -1 -1 -6 -9 -9 -6 -6 -10 -15 -17 -18 -15 -15 -18 -20 -20 -18 -17 -16 -14 -11 -4 -4 -9 -13 -11 3 10 10 6 3 2 -3 -8 -13 -16 -14 -11 -7 -3 -1 -2 -4 -6 -7 -8 -8 -9 -10 -11 -10 -9 -11 -15 -20 -23 -26 -27 -25 -22 -16 -10 -9 -10 -13 -17 -22 -23 -18 -9 -3 -6 -9 -11 -11 -11 -13 -15 -17 -17 -11 -2 5 10 15 15 10 4 -2 -3 -3 -4 -6 -7 -9 -12 -17 -20 -22 -21 -12 -2 5 7 2 -5 -10 -12 -10 -7 -5 -6 -7 -7 -3 -0 2 3 3 2 3 -0 -6 -13 -18 -16 -10 -5 -9 -12 -12 -13 -14 -13 -15 -17 -17 -13 -7 -7 -12 -16 -17 -13 -2 3 1 -6 -12 -9 1 9 10 1 -5 -11 -16 -20 -20 -16 -16 -19 -22 -24 -25 -25 -24 -21 -21 -23 -24 -24 -23 -22 -23 -25 -25 -22 -22 -21 -20 -20 -22 -25 -25 -24 -23 -22 -23 -23 -21 -17 -16 -15 -16 -17 -17 -18 -25 -29 -32 -35 -33 -32 -32 -32 -30 -30 -30 -28 -24 -21 -21 -21 -22 -22 -23 -22 -21 -20 -20 -18 -17 -13 -9 -6 -9 -17 -24 -27 -27 -23 -17 -14 -16 -22 -24 -21 -18 -16 -19 -23 -25 -28 -31 -34 -33 -31 -28 -26 -25 -27 -28 -29 -28 -26 -28 -31 -32 -32 -29 -28 -28 -26 -22 -17 -17 -20 -24 -23 24 -3 -23 -29 -29 -28 -24 -21 -19 -18 -18 -20 -22 -22 -21 -20 -5 -3 -3 -4 -5 -5 -5 -4 -4 -5 -5 -4 -4 -4 -4 -5 -5 -6 -6 -7 -7 -7 -7 -8 -9 -9 -9 -8 -9 -10 -12 -13 -13 -12 -10 -11 -12 -14 -15 -16 -15 -14 -13 -12 -8 -5 -3 -4 -6 -8 -10 -11 -10 -8 -3 -1 -1 -2 -4 -4 -5 -6 -7 -7 -6 -3 0 1 -1 -3 -4 -4 -5 -7 -9 -10 -11 -13 -16 -18 -17 -14 -7 6 7 2 -4 -8 -8 -2 7 14 13 4 -4 -10 -13 -15 -14 -5 5 11 6 -4 -14 -19 -18 -9 2 4 0 -5 -7 -5 -3 -2 -5 -9 -9 -6 -2 -0 -5 -12 -15 -12 -4 1 -2 -7 -9 -8 -5 -6 -11 -15 -18 -16 -14 -16 -19 -21 -19 -18 -16 -15 -14 -9 -5 -7 -13 -15 -5 5 8 5 1 2 -1 -7 -13 -15 -14 -13 -10 -6 -2 -2 -3 -5 -7 -7 -8 -9 -10 -11 -9 -9 -11 -15 -20 -24 -27 -28 -27 -25 -18 -12 -9 -9 -11 -15 -20 -22 -19 -11 -4 -5 -8 -11 -11 -11 -12 -14 -16 -17 -14 -8 -2 3 7 10 9 6 3 0 -1 -3 -5 -7 -8 -11 -14 -18 -21 -23 -16 -6 4 9 5 -3 -9 -13 -14 -11 -7 -5 -4 -5 -4 -2 -0 1 3 3 3 1 -4 -12 -18 -18 -13 -8 -11 -14 -14 -14 -15 -13 -14 -17 -18 -16 -10 -7 -10 -14 -17 -17 -10 -3 -1 -6 -12 -12 -6 3 10 5 -2 -8 -14 -19 -21 -18 -17 -18 -21 -25 -26 -26 -24 -21 -21 -23 -24 -24 -23 -22 -23 -24 -24 -22 -21 -20 -20 -20 -21 -24 -25 -24 -22 -21 -23 -22 -20 -17 -16 -15 -17 -20 -20 -19 -25 -30 -34 -36 -35 -35 -35 -34 -31 -31 -30 -27 -25 -23 -22 -21 -20 -20 -21 -21 -21 -20 -20 -18 -17 -14 -11 -8 -9 -16 -23 -28 -31 -26 -19 -16 -18 -25 -26 -24 -21 -18 -19 -22 -24 -27 -30 -32 -32 -30 -27 -24 -22 -23 -25 -25 -25 -23 -25 -29 -32 -32 -29 -27 -26 -25 -22 -19 -18 -20 -23 -25 -31 -27 -25 -26 -29 -29 -26 -22 -19 -17 -18 -21 -23 -25 -23 -23 -3 -5 -6 -7 -7 -5 -4 -4 -5 -5 -4 -4 -4 -5 -5 -6 -6 -7 -7 -7 -7 -7 -7 -8 -10 -12 -14 -14 -13 -11 -9 -9 -8 -7 -6 -7 -8 -11 -13 -15 -15 -16 -17 -18 -13 -7 -3 -2 -3 -5 -7 -9 -10 -10 -7 -3 -1 -1 -3 -4 -5 -5 -5 -6 -7 -5 -3 -0 0 -2 -4 -5 -6 -6 -7 -9 -10 -12 -14 -17 -18 -17 -13 -2 7 7 3 -3 -9 -10 -4 5 14 11 3 -5 -11 -15 -15 -10 -1 8 9 -0 -11 -19 -20 -15 -2 6 5 -0 -6 -6 -4 -2 -2 -5 -9 -9 -6 -1 0 -4 -9 -12 -10 -3 -0 -3 -8 -10 -6 -4 -7 -13 -18 -17 -14 -15 -18 -22 -21 -20 -19 -17 -15 -13 -7 -6 -10 -16 -12 -0 7 7 2 2 0 -4 -9 -12 -13 -13 -12 -9 -5 -3 -3 -4 -5 -6 -8 -10 -10 -9 -9 -9 -11 -15 -19 -23 -27 -29 -29 -27 -21 -13 -9 -8 -9 -12 -17 -21 -19 -12 -6 -4 -6 -10 -11 -11 -11 -12 -13 -15 -14 -11 -7 -5 -2 2 4 5 5 4 2 -1 -4 -7 -8 -10 -12 -16 -20 -22 -19 -9 2 8 6 -1 -8 -13 -16 -16 -11 -6 -3 -3 -3 -3 -3 -1 1 2 2 1 -3 -11 -19 -20 -16 -10 -10 -13 -13 -14 -15 -14 -14 -17 -18 -18 -13 -9 -9 -12 -17 -18 -15 -10 -5 -6 -11 -14 -11 -3 8 8 1 -7 -14 -20 -21 -18 -16 -17 -19 -25 -24 -22 -21 -20 -21 -22 -23 -25 -24 -23 -23 -23 -23 -21 -20 -20 -20 -20 -21 -22 -23 -23 -21 -20 -21 -21 -19 -17 -16 -14 -16 -20 -22 -23 -25 -27 -29 -33 -35 -37 -36 -34 -30 -29 -28 -26 -25 -24 -23 -21 -19 -18 -19 -19 -19 -19 -20 -19 -16 -15 -14 -11 -9 -14 -21 -28 -32 -28 -22 -18 -19 -25 -28 -28 -24 -19 -18 -21 -23 -25 -28 -29 -30 -29 -27 -24 -21 -21 -22 -23 -22 -21 -22 -26 -30 -32 -29 -26 -24 -24 -22 -19 -19 -21 -24 -25 -27 -26 -26 -27 -30 -30 -27 -24 -20 -17 -17 -21 -25 -28 -28 -27 -6 -8 -9 -8 -6 -5 -4 -5 -5 -4 -4 -4 -4 -5 -6 -6 -6 -6 -6 -7 -7 -6 -7 -8 -10 -15 -20 -23 -23 -17 -11 -8 -7 -7 -6 -4 -4 -5 -8 -11 -13 -16 -19 -21 -17 -9 -3 -0 -1 -3 -5 -7 -9 -10 -9 -6 -3 -2 -2 -3 -4 -4 -5 -5 -6 -6 -5 -3 -0 -0 -2 -4 -6 -7 -7 -8 -9 -10 -13 -16 -17 -17 -15 -11 -1 6 6 1 -6 -11 -11 -5 4 12 9 3 -5 -10 -14 -14 -8 0 8 4 -5 -15 -20 -18 -8 2 7 5 -1 -5 -6 -4 -2 -2 -6 -9 -9 -6 -1 -1 -5 -10 -13 -10 -4 -2 -5 -9 -9 -5 -5 -8 -14 -15 -15 -16 -18 -23 -24 -23 -21 -19 -16 -15 -9 -5 -7 -14 -16 -6 4 10 7 4 2 0 -3 -8 -11 -12 -12 -11 -8 -5 -4 -4 -4 -5 -8 -10 -10 -8 -7 -8 -11 -14 -18 -23 -27 -30 -30 -29 -22 -14 -9 -8 -8 -10 -16 -20 -21 -15 -7 -4 -5 -8 -11 -10 -10 -11 -13 -15 -14 -12 -9 -7 -7 -5 -2 2 5 7 5 1 -2 -5 -6 -8 -10 -14 -18 -22 -20 -12 -1 7 6 0 -7 -14 -18 -19 -16 -9 -4 -2 -2 -3 -4 -4 -2 -1 1 1 -2 -9 -17 -20 -18 -13 -11 -12 -12 -14 -16 -15 -14 -16 -18 -19 -17 -11 -10 -12 -17 -18 -18 -14 -9 -6 -10 -13 -13 -8 4 10 5 -3 -12 -18 -19 -18 -17 -17 -20 -27 -25 -20 -18 -20 -20 -21 -23 -25 -24 -24 -23 -23 -22 -21 -20 -20 -20 -20 -21 -21 -22 -22 -21 -20 -20 -20 -19 -17 -16 -14 -15 -19 -22 -25 -26 -25 -23 -28 -33 -34 -33 -32 -29 -27 -26 -25 -25 -25 -24 -22 -19 -17 -18 -19 -19 -20 -20 -19 -17 -16 -15 -12 -10 -13 -19 -27 -30 -27 -23 -20 -19 -24 -29 -30 -26 -20 -17 -21 -24 -25 -27 -27 -27 -26 -25 -23 -21 -20 -20 -21 -20 -19 -20 -24 -28 -30 -28 -25 -23 -23 -22 -20 -20 -22 -25 -26 -29 -30 -29 -29 -31 -31 -29 -26 -22 -17 -17 -20 -26 -31 -31 -31 -10 -11 -10 -7 -5 -4 -5 -5 -4 -4 -4 -4 -4 -5 -5 -6 -6 -6 -6 -6 -6 -6 -6 -7 -11 -18 -25 -30 -30 -24 -15 -10 -9 -9 -9 -8 -6 -4 -2 -3 -8 -12 -16 -19 -18 -9 -1 2 1 -2 -3 -4 -5 -7 -8 -8 -6 -5 -4 -4 -4 -4 -5 -5 -4 -5 -6 -6 -4 -1 -0 -2 -4 -7 -7 -7 -8 -10 -12 -14 -16 -16 -15 -14 -9 -1 5 4 -2 -7 -11 -11 -7 3 9 8 4 -3 -9 -13 -13 -8 2 6 1 -8 -15 -18 -14 -5 3 6 4 -2 -6 -7 -5 -3 -4 -7 -10 -10 -7 -2 -2 -6 -11 -13 -9 -5 -5 -8 -11 -9 -7 -7 -11 -14 -15 -16 -18 -22 -25 -25 -24 -21 -17 -15 -12 -7 -5 -11 -16 -12 -2 8 10 6 5 4 1 -4 -8 -10 -10 -10 -8 -6 -5 -4 -3 -4 -6 -8 -9 -8 -7 -7 -9 -13 -17 -21 -26 -29 -31 -30 -24 -15 -9 -8 -7 -9 -14 -19 -21 -17 -9 -5 -4 -6 -10 -11 -10 -10 -12 -15 -16 -13 -9 -6 -6 -7 -7 -4 1 6 7 4 1 -2 -4 -6 -9 -12 -17 -21 -22 -16 -6 3 4 0 -6 -13 -18 -21 -20 -16 -8 -4 -2 -2 -4 -5 -5 -3 -1 -1 -2 -8 -15 -20 -20 -16 -12 -10 -11 -13 -15 -15 -15 -15 -17 -18 -18 -14 -12 -13 -18 -19 -18 -14 -9 -6 -8 -12 -13 -11 -1 8 7 -1 -9 -15 -17 -18 -18 -17 -20 -29 -28 -22 -17 -18 -19 -21 -22 -24 -25 -25 -24 -23 -23 -21 -20 -20 -20 -20 -21 -21 -22 -21 -21 -20 -20 -19 -19 -18 -16 -14 -14 -16 -21 -26 -27 -25 -20 -23 -28 -30 -30 -31 -28 -26 -26 -25 -26 -26 -25 -23 -20 -16 -18 -20 -21 -22 -21 -20 -19 -19 -17 -13 -11 -13 -18 -25 -27 -26 -24 -22 -19 -23 -27 -29 -27 -20 -18 -20 -24 -27 -27 -24 -23 -24 -24 -22 -21 -20 -19 -19 -19 -18 -19 -21 -25 -27 -26 -24 -23 -23 -22 -21 -21 -23 -26 -27 -29 -31 -31 -30 -32 -32 -30 -27 -23 -18 -16 -18 -24 -30 -32 -32 -11 -10 -7 -4 -3 -5 -5 -5 -4 -3 -4 -4 -4 -5 -5 -5 -6 -6 -7 -6 -6 -6 -6 -7 -11 -17 -23 -28 -30 -27 -19 -13 -10 -10 -11 -12 -11 -8 -4 -0 -2 -7 -12 -16 -16 -8 -1 3 3 -0 -1 -1 -2 -4 -6 -7 -7 -6 -5 -4 -3 -3 -4 -4 -3 -4 -6 -7 -7 -4 -2 -1 -2 -4 -6 -7 -8 -9 -12 -13 -15 -15 -14 -13 -13 -7 0 6 5 -1 -8 -12 -12 -7 1 7 9 5 -3 -11 -15 -13 -6 4 4 -1 -9 -15 -15 -11 -4 3 6 2 -3 -6 -7 -5 -4 -6 -9 -11 -11 -6 -3 -2 -6 -12 -11 -9 -8 -11 -15 -13 -9 -6 -7 -12 -15 -17 -18 -21 -24 -24 -23 -21 -16 -15 -14 -9 -5 -9 -16 -15 -6 7 13 10 8 7 5 -0 -4 -6 -8 -9 -9 -6 -5 -3 -3 -2 -3 -5 -7 -8 -7 -6 -7 -10 -14 -19 -25 -29 -32 -32 -25 -15 -8 -6 -6 -7 -12 -16 -19 -18 -13 -8 -4 -4 -8 -10 -10 -10 -11 -13 -16 -16 -13 -6 -2 -4 -7 -8 -6 2 7 7 5 1 -1 -4 -7 -11 -15 -20 -22 -20 -12 -1 2 1 -3 -9 -17 -21 -23 -21 -16 -7 -2 -2 -3 -5 -5 -5 -4 -3 -3 -7 -13 -18 -20 -17 -11 -8 -9 -11 -14 -15 -14 -15 -17 -19 -19 -16 -14 -14 -18 -19 -17 -14 -9 -7 -8 -10 -13 -13 -6 4 7 3 -4 -11 -15 -18 -19 -17 -19 -27 -28 -22 -18 -18 -19 -21 -22 -23 -26 -26 -24 -22 -23 -21 -20 -19 -20 -20 -21 -22 -22 -22 -21 -20 -20 -19 -18 -18 -16 -14 -13 -15 -21 -26 -28 -27 -20 -21 -24 -26 -27 -30 -28 -27 -25 -25 -25 -26 -25 -24 -21 -17 -18 -21 -24 -25 -22 -21 -21 -21 -19 -15 -12 -13 -17 -23 -24 -25 -24 -22 -18 -20 -24 -26 -25 -22 -19 -20 -23 -27 -27 -22 -21 -21 -22 -21 -20 -20 -19 -19 -18 -18 -18 -18 -22 -25 -25 -24 -23 -22 -22 -22 -23 -24 -26 -27 -28 -29 -31 -31 -32 -32 -31 -27 -23 -19 -16 -17 -21 -27 -31 -31 -7 -4 -3 -3 -4 -5 -5 -4 -4 -3 -4 -5 -5 -5 -5 -6 -6 -7 -7 -6 -5 -5 -5 -7 -9 -12 -16 -20 -22 -20 -16 -12 -10 -9 -11 -12 -13 -12 -8 -2 -2 -5 -10 -13 -13 -8 -3 1 1 -0 -1 -0 -1 -3 -6 -5 -5 -5 -5 -3 -3 -3 -2 -2 -2 -3 -5 -7 -9 -8 -6 -4 -2 -2 -4 -6 -8 -10 -11 -12 -13 -14 -14 -12 -12 -11 -6 3 9 4 -3 -9 -12 -13 -8 0 7 9 3 -6 -13 -16 -13 -3 4 4 -2 -9 -13 -13 -10 -3 5 5 1 -3 -6 -7 -6 -6 -7 -10 -12 -9 -5 -2 -3 -8 -11 -12 -12 -13 -15 -15 -11 -6 -4 -9 -13 -15 -17 -20 -21 -22 -22 -20 -15 -15 -16 -13 -7 -6 -14 -15 -8 5 16 14 12 10 7 4 0 -3 -6 -8 -9 -8 -6 -5 -4 -2 -1 -2 -4 -6 -6 -6 -6 -8 -12 -18 -24 -29 -33 -33 -27 -16 -9 -5 -5 -6 -9 -13 -16 -17 -15 -11 -7 -4 -6 -8 -9 -10 -10 -10 -14 -16 -16 -12 -3 -0 -2 -7 -10 -4 4 7 7 4 1 -2 -5 -9 -13 -18 -21 -21 -16 -5 0 3 1 -4 -13 -19 -23 -24 -21 -9 -4 -3 -3 -5 -5 -6 -6 -4 -2 -4 -9 -14 -17 -16 -10 -6 -7 -11 -15 -15 -15 -16 -18 -19 -20 -18 -15 -13 -16 -17 -17 -14 -10 -7 -7 -9 -12 -14 -11 -1 6 7 1 -7 -13 -18 -20 -17 -19 -26 -28 -23 -19 -19 -20 -22 -23 -23 -25 -25 -23 -20 -21 -20 -20 -19 -20 -20 -21 -23 -24 -23 -21 -21 -20 -19 -18 -18 -16 -14 -12 -15 -23 -29 -32 -29 -22 -21 -22 -23 -26 -28 -28 -27 -25 -24 -24 -25 -25 -24 -22 -17 -17 -20 -23 -24 -23 -23 -22 -21 -20 -15 -12 -12 -17 -23 -24 -25 -24 -21 -17 -18 -21 -24 -24 -22 -19 -20 -23 -26 -26 -21 -19 -20 -21 -21 -20 -21 -21 -19 -18 -18 -17 -17 -19 -22 -24 -24 -24 -23 -22 -22 -24 -25 -26 -26 -27 -28 -30 -30 -32 -32 -30 -27 -25 -21 -18 -16 -18 -24 -30 -32 -1 -1 -2 -4 -5 -5 -5 -4 -4 -4 -4 -5 -5 -6 -6 -6 -6 -5 -5 -4 -4 -4 -4 -5 -7 -8 -11 -13 -14 -13 -12 -12 -12 -13 -14 -14 -15 -14 -11 -7 -4 -5 -7 -9 -10 -8 -6 -4 -3 -4 -4 -2 -2 -3 -5 -4 -3 -3 -3 -3 -3 -2 -2 -1 -1 -2 -4 -7 -10 -11 -10 -8 -5 -2 -3 -5 -7 -9 -10 -11 -12 -12 -12 -12 -11 -11 -10 -5 5 7 3 -4 -10 -13 -13 -9 -2 6 7 1 -8 -14 -16 -11 -1 4 3 -3 -8 -12 -12 -9 -1 5 4 0 -4 -7 -7 -6 -6 -7 -9 -10 -7 -4 -2 -4 -9 -13 -14 -14 -15 -14 -11 -6 -3 -7 -12 -15 -17 -19 -20 -21 -21 -20 -14 -15 -17 -15 -10 -5 -11 -15 -12 -0 14 16 14 11 9 7 4 0 -3 -5 -6 -7 -7 -6 -5 -3 -0 -0 -2 -4 -6 -6 -6 -7 -10 -16 -24 -30 -34 -34 -30 -20 -10 -6 -5 -5 -7 -9 -11 -14 -15 -14 -11 -7 -6 -7 -8 -9 -10 -9 -11 -15 -17 -16 -9 -2 0 -3 -9 -8 -2 4 7 6 4 0 -3 -7 -11 -15 -19 -21 -18 -10 -3 2 3 1 -8 -16 -22 -24 -23 -11 -7 -5 -4 -5 -5 -5 -6 -6 -4 -5 -9 -13 -17 -16 -10 -6 -6 -11 -15 -16 -15 -16 -18 -19 -20 -18 -15 -14 -15 -17 -18 -16 -11 -7 -7 -8 -12 -15 -14 -6 3 7 2 -6 -12 -18 -21 -20 -19 -24 -28 -25 -21 -21 -22 -23 -24 -25 -24 -24 -22 -20 -20 -20 -19 -19 -20 -21 -22 -23 -24 -25 -22 -21 -20 -19 -19 -18 -17 -15 -13 -15 -24 -32 -35 -32 -25 -23 -22 -22 -23 -25 -27 -26 -25 -23 -22 -23 -24 -23 -22 -17 -17 -18 -20 -21 -23 -25 -25 -22 -19 -15 -12 -12 -17 -23 -25 -24 -23 -20 -17 -18 -21 -24 -24 -21 -19 -20 -25 -28 -24 -20 -18 -19 -20 -20 -20 -21 -22 -21 -20 -19 -18 -16 -18 -21 -23 -24 -24 -23 -22 -22 -23 -26 -26 -26 -26 -27 -29 -30 -31 -32 -30 -28 -26 -23 -19 -16 -17 -23 -30 -33 -3 -4 -5 -5 -4 -4 -5 -5 -5 -4 -3 -4 -5 -5 -6 -6 -6 -6 -5 -5 -4 -4 -4 -5 -6 -7 -8 -9 -9 -8 -9 -12 -16 -19 -20 -18 -16 -14 -12 -9 -5 -4 -5 -8 -10 -8 -7 -7 -8 -8 -8 -6 -6 -6 -4 -2 -1 -2 -2 -2 -2 -1 -1 -1 -2 -2 -3 -6 -9 -10 -10 -11 -10 -7 -3 -3 -5 -7 -9 -10 -10 -10 -10 -11 -11 -10 -11 -11 -4 4 6 3 -4 -11 -13 -13 -11 -4 6 7 0 -9 -16 -16 -10 -1 4 2 -3 -8 -11 -11 -7 1 4 3 -2 -7 -8 -7 -5 -4 -6 -8 -8 -4 0 -0 -6 -11 -14 -14 -14 -13 -10 -6 -4 -7 -12 -14 -16 -18 -20 -21 -21 -21 -14 -14 -16 -16 -12 -6 -9 -14 -15 -7 9 15 15 12 11 11 8 4 0 -2 -3 -5 -6 -7 -6 -5 -2 -0 0 -1 -4 -5 -6 -8 -9 -15 -23 -30 -34 -35 -31 -23 -13 -7 -4 -4 -5 -5 -7 -10 -14 -15 -15 -11 -8 -7 -7 -8 -9 -9 -10 -13 -16 -18 -14 -6 -1 -0 -5 -9 -7 -0 6 7 6 3 -1 -6 -9 -13 -16 -19 -18 -12 -6 -1 3 3 -4 -12 -19 -23 -22 -14 -10 -7 -6 -5 -5 -5 -6 -7 -7 -7 -9 -12 -16 -17 -12 -7 -6 -8 -13 -15 -15 -16 -18 -19 -19 -18 -16 -15 -16 -17 -18 -17 -14 -9 -7 -9 -12 -17 -17 -12 -3 5 2 -7 -13 -18 -24 -24 -21 -24 -28 -27 -23 -23 -24 -24 -24 -25 -24 -23 -22 -21 -20 -20 -19 -19 -20 -21 -22 -23 -24 -25 -23 -21 -20 -19 -19 -19 -19 -17 -14 -15 -25 -32 -36 -34 -28 -26 -23 -21 -21 -22 -24 -25 -23 -21 -21 -23 -23 -23 -21 -18 -16 -17 -19 -21 -25 -28 -27 -23 -19 -15 -12 -11 -16 -21 -23 -23 -22 -22 -20 -20 -22 -25 -25 -21 -19 -21 -26 -29 -23 -20 -19 -20 -20 -20 -21 -22 -23 -23 -22 -21 -20 -16 -18 -20 -22 -24 -24 -23 -22 -22 -23 -26 -26 -26 -25 -26 -28 -29 -31 -31 -30 -28 -26 -22 -18 -15 -16 -23 -30 -34 -6 -6 -6 -5 -4 -5 -6 -7 -7 -6 -5 -4 -5 -6 -6 -6 -6 -6 -5 -5 -5 -5 -5 -5 -6 -7 -8 -8 -6 -5 -6 -11 -18 -23 -24 -18 -14 -11 -8 -6 -4 -4 -7 -11 -13 -7 -4 -4 -7 -9 -10 -12 -14 -16 -12 -6 -2 -1 -0 0 -0 -0 -0 -1 -2 -2 -3 -4 -6 -7 -9 -11 -13 -12 -8 -5 -4 -5 -7 -8 -8 -7 -7 -9 -11 -11 -11 -11 -10 -3 3 4 2 -4 -9 -13 -14 -13 -3 5 6 -1 -11 -16 -14 -7 1 5 1 -4 -8 -11 -10 -4 1 3 -0 -5 -7 -7 -5 -3 -4 -7 -8 -6 -2 1 -2 -7 -11 -13 -12 -11 -10 -9 -8 -8 -11 -13 -15 -17 -19 -21 -22 -22 -16 -14 -15 -16 -15 -8 -8 -13 -17 -13 1 12 15 13 12 13 11 7 3 -0 -2 -3 -4 -6 -6 -6 -4 -2 -0 2 -0 -4 -7 -9 -10 -14 -21 -28 -33 -34 -32 -26 -17 -10 -6 -5 -4 -5 -5 -7 -11 -14 -16 -14 -11 -8 -6 -7 -9 -10 -10 -12 -15 -18 -18 -11 -4 0 -2 -8 -9 -5 3 6 6 3 -0 -4 -7 -10 -14 -18 -19 -15 -8 -2 2 4 -1 -8 -15 -20 -20 -15 -12 -10 -8 -7 -6 -5 -6 -8 -9 -10 -10 -12 -15 -16 -11 -6 -3 -5 -9 -13 -15 -16 -16 -18 -18 -17 -16 -15 -16 -17 -18 -17 -16 -12 -8 -8 -11 -16 -18 -16 -9 2 1 -7 -11 -16 -24 -28 -22 -23 -27 -29 -26 -25 -25 -24 -24 -25 -24 -22 -20 -20 -20 -20 -19 -19 -21 -22 -22 -22 -23 -24 -22 -20 -20 -20 -20 -20 -20 -19 -16 -16 -25 -32 -35 -34 -29 -26 -24 -20 -19 -19 -20 -22 -21 -20 -22 -23 -23 -23 -22 -19 -17 -17 -19 -22 -28 -30 -28 -24 -20 -16 -11 -10 -13 -19 -22 -24 -24 -24 -22 -21 -22 -25 -26 -23 -21 -21 -25 -26 -22 -20 -20 -21 -21 -21 -21 -22 -24 -26 -26 -25 -24 -19 -19 -20 -22 -25 -25 -23 -23 -23 -22 -24 -24 -24 -24 -24 -27 -28 -29 -30 -29 -28 -26 -22 -17 -14 -16 -22 -29 -32 -8 -7 -6 -7 -8 -8 -8 -7 -7 -6 -5 -5 -5 -5 -5 -6 -5 -5 -5 -5 -5 -6 -6 -6 -6 -8 -9 -9 -7 -4 -3 -8 -15 -21 -21 -14 -9 -5 -3 -2 -6 -10 -12 -12 -12 -6 -3 -3 -7 -10 -11 -12 -14 -15 -14 -11 -5 0 3 3 3 2 1 -0 -2 -4 -5 -5 -5 -6 -8 -11 -13 -13 -12 -10 -6 -4 -2 -4 -6 -6 -6 -8 -12 -13 -12 -12 -11 -8 -3 1 1 -1 -5 -10 -14 -16 -12 -3 4 5 -2 -10 -13 -11 -4 3 4 -0 -5 -9 -10 -7 -2 1 1 -2 -5 -6 -6 -4 -4 -6 -9 -10 -6 1 2 -1 -6 -9 -10 -11 -12 -12 -11 -9 -9 -11 -14 -17 -20 -21 -22 -22 -18 -14 -14 -16 -16 -11 -8 -11 -16 -17 -8 6 14 15 13 14 12 9 6 3 1 -1 -2 -3 -5 -6 -6 -4 -2 2 2 -1 -4 -7 -9 -12 -18 -25 -30 -32 -30 -26 -21 -13 -8 -7 -7 -6 -3 -3 -7 -12 -15 -16 -14 -10 -7 -5 -7 -10 -11 -12 -14 -18 -19 -16 -9 -2 -1 -6 -10 -9 -3 3 4 3 0 -4 -6 -9 -13 -16 -18 -15 -10 -5 -0 2 -0 -6 -12 -17 -18 -15 -12 -10 -9 -9 -8 -6 -6 -8 -11 -12 -11 -12 -13 -14 -11 -7 -3 -3 -7 -12 -15 -16 -15 -17 -17 -17 -16 -15 -15 -17 -18 -18 -18 -14 -10 -8 -10 -14 -17 -18 -14 -4 -1 -7 -12 -16 -23 -26 -21 -21 -26 -32 -27 -26 -25 -24 -24 -25 -24 -22 -19 -19 -20 -20 -19 -18 -20 -22 -22 -21 -21 -22 -21 -20 -19 -20 -21 -22 -22 -20 -16 -16 -24 -31 -33 -31 -27 -25 -23 -19 -17 -16 -17 -19 -20 -22 -24 -24 -23 -22 -22 -19 -17 -17 -20 -24 -29 -30 -28 -24 -20 -16 -11 -9 -11 -17 -22 -25 -26 -26 -23 -22 -22 -26 -27 -26 -24 -21 -22 -21 -19 -19 -21 -22 -22 -21 -21 -22 -24 -28 -28 -27 -26 -21 -20 -20 -22 -27 -26 -24 -23 -23 -21 -23 -22 -21 -21 -21 -24 -26 -27 -28 -28 -28 -26 -21 -15 -13 -15 -21 -28 -31 -7 -7 -9 -11 -12 -11 -8 -5 -4 -4 -5 -5 -5 -4 -4 -4 -4 -4 -4 -4 -5 -6 -7 -7 -7 -8 -9 -8 -7 -6 -2 -3 -8 -15 -19 -13 -5 -1 -2 -7 -13 -14 -12 -9 -8 -7 -6 -5 -5 -8 -10 -11 -10 -9 -8 -7 -5 -2 1 3 4 3 2 0 -2 -4 -5 -6 -7 -6 -7 -9 -12 -14 -14 -13 -11 -6 0 1 -1 -4 -5 -6 -9 -12 -13 -13 -13 -11 -6 -2 -1 -2 -4 -8 -12 -16 -15 -10 -2 6 6 -2 -9 -11 -8 -2 3 3 -1 -6 -10 -10 -5 1 4 1 -3 -5 -6 -5 -3 -4 -7 -9 -9 -2 3 3 -1 -6 -10 -12 -13 -14 -13 -9 -8 -9 -13 -17 -20 -22 -23 -22 -19 -14 -13 -14 -17 -14 -9 -10 -14 -18 -14 -0 10 15 14 13 11 9 8 6 3 2 1 0 -2 -4 -5 -5 -4 -1 2 2 -1 -4 -7 -11 -16 -21 -27 -29 -29 -27 -23 -17 -10 -7 -6 -5 -4 -3 -6 -9 -13 -15 -16 -12 -7 -4 -6 -9 -11 -12 -14 -17 -20 -19 -14 -6 -1 -6 -10 -11 -7 -1 2 3 1 -3 -6 -8 -11 -15 -18 -16 -12 -7 -3 -1 -2 -5 -10 -15 -18 -14 -12 -10 -10 -11 -11 -9 -8 -8 -11 -12 -12 -11 -11 -13 -12 -8 -3 -1 -6 -11 -15 -16 -16 -17 -17 -17 -17 -15 -14 -16 -19 -20 -19 -16 -12 -9 -9 -12 -16 -18 -17 -11 -6 -7 -11 -16 -25 -22 -19 -19 -25 -33 -27 -24 -24 -25 -26 -27 -26 -23 -19 -19 -20 -20 -18 -18 -19 -21 -21 -20 -19 -20 -20 -20 -19 -20 -22 -23 -23 -21 -16 -16 -23 -30 -30 -28 -26 -24 -22 -18 -16 -14 -15 -18 -20 -24 -25 -24 -22 -20 -20 -19 -17 -16 -21 -26 -30 -30 -28 -23 -19 -15 -12 -10 -11 -17 -24 -28 -28 -28 -24 -22 -23 -27 -29 -28 -25 -20 -20 -18 -18 -19 -21 -22 -22 -22 -21 -22 -23 -26 -27 -27 -25 -21 -19 -19 -21 -25 -26 -24 -23 -23 -22 -22 -21 -20 -19 -18 -22 -24 -26 -27 -28 -29 -27 -22 -15 -13 -14 -19 -26 -29 -7 -10 -13 -15 -14 -10 -5 -3 -2 -3 -4 -5 -5 -5 -5 -4 -4 -3 -3 -3 -4 -5 -5 -5 -4 -5 -5 -5 -4 -3 -1 1 -2 -8 -14 -11 -4 -2 -4 -10 -14 -11 -7 -3 -4 -7 -9 -9 -7 -8 -8 -8 -7 -6 -5 -6 -6 -5 -3 0 2 3 1 -1 -2 -3 -4 -6 -8 -8 -7 -8 -11 -14 -14 -13 -12 -8 -2 1 -0 -2 -3 -4 -7 -10 -13 -14 -14 -12 -9 -5 -3 -3 -5 -7 -11 -15 -16 -14 -8 1 8 5 -2 -8 -10 -6 1 4 2 -3 -9 -11 -8 -2 3 4 -0 -4 -6 -5 -3 -2 -4 -7 -9 -5 1 5 4 -2 -9 -12 -14 -14 -14 -11 -9 -8 -11 -15 -20 -23 -24 -23 -20 -15 -13 -14 -16 -16 -11 -9 -11 -16 -16 -8 3 11 11 8 7 7 6 5 4 4 3 3 1 -1 -3 -5 -5 -4 -1 2 2 -1 -5 -9 -13 -18 -23 -26 -27 -26 -25 -21 -13 -8 -5 -4 -5 -4 -5 -7 -10 -14 -16 -13 -9 -5 -5 -8 -10 -11 -13 -16 -20 -20 -17 -10 -4 -6 -10 -13 -11 -4 1 3 2 -3 -6 -8 -11 -14 -18 -17 -13 -9 -6 -3 -2 -5 -9 -14 -18 -14 -11 -9 -9 -12 -13 -12 -10 -8 -10 -12 -12 -10 -9 -12 -13 -10 -5 -1 -4 -9 -14 -16 -17 -17 -18 -18 -18 -16 -15 -16 -18 -20 -21 -19 -15 -11 -9 -12 -15 -18 -19 -18 -10 -7 -8 -15 -24 -20 -17 -18 -23 -30 -27 -24 -23 -25 -27 -27 -27 -25 -21 -20 -20 -20 -18 -18 -19 -21 -21 -20 -18 -19 -21 -20 -19 -20 -22 -23 -24 -22 -17 -16 -22 -28 -27 -27 -26 -24 -21 -17 -15 -14 -14 -17 -22 -24 -24 -23 -21 -18 -18 -18 -17 -17 -21 -26 -29 -30 -28 -24 -19 -15 -13 -11 -12 -18 -25 -29 -29 -28 -25 -22 -23 -26 -30 -29 -24 -18 -18 -18 -18 -19 -21 -22 -22 -22 -21 -22 -23 -25 -25 -26 -25 -22 -19 -18 -19 -22 -23 -23 -23 -22 -22 -21 -21 -20 -18 -17 -20 -23 -25 -26 -28 -29 -27 -22 -16 -12 -12 -16 -24 -27 -10 -13 -15 -14 -12 -7 -4 -3 -4 -5 -5 -5 -6 -6 -6 -5 -5 -5 -5 -5 -5 -5 -4 -4 -5 -7 -7 -7 -6 -5 -4 -2 -4 -7 -9 -6 -3 -4 -8 -11 -12 -8 -4 -1 -3 -7 -8 -8 -7 -8 -8 -8 -7 -6 -5 -5 -6 -6 -6 -5 -2 -1 -1 -2 -1 -2 -3 -6 -8 -8 -8 -8 -9 -12 -12 -11 -10 -10 -7 -4 -3 -2 -1 -2 -6 -10 -13 -14 -14 -14 -11 -7 -4 -4 -6 -8 -11 -13 -15 -15 -12 -5 4 7 3 -3 -8 -9 -2 3 5 1 -5 -11 -11 -7 1 6 4 -0 -4 -5 -4 -2 -1 -3 -7 -8 -4 2 5 2 -5 -10 -13 -13 -14 -12 -9 -8 -9 -14 -19 -23 -24 -23 -21 -17 -14 -13 -15 -16 -13 -11 -11 -13 -15 -14 -7 2 9 7 6 6 8 8 5 4 5 7 6 3 1 -2 -3 -4 -2 2 5 4 -1 -6 -11 -15 -19 -22 -24 -25 -25 -23 -17 -10 -5 -3 -4 -5 -6 -7 -8 -11 -15 -14 -11 -5 -4 -7 -9 -10 -12 -15 -19 -21 -20 -14 -8 -8 -11 -15 -15 -8 -2 2 2 -2 -6 -8 -11 -14 -17 -17 -14 -11 -8 -5 -3 -4 -7 -12 -18 -16 -13 -10 -9 -11 -14 -14 -12 -9 -9 -11 -12 -11 -9 -11 -13 -13 -8 -2 -4 -8 -13 -16 -18 -19 -19 -19 -19 -16 -16 -16 -18 -20 -21 -20 -17 -13 -10 -11 -15 -18 -21 -21 -13 -7 -7 -13 -22 -19 -16 -17 -21 -27 -27 -25 -23 -25 -26 -26 -26 -25 -23 -21 -20 -19 -19 -18 -19 -20 -21 -20 -17 -19 -20 -21 -21 -21 -21 -23 -24 -22 -18 -17 -21 -26 -25 -26 -26 -24 -20 -17 -15 -14 -14 -17 -22 -22 -22 -21 -20 -18 -19 -19 -19 -18 -21 -25 -28 -28 -28 -25 -21 -17 -14 -12 -13 -18 -24 -28 -29 -28 -25 -23 -23 -26 -29 -28 -23 -17 -17 -17 -18 -19 -22 -24 -24 -23 -22 -23 -24 -24 -24 -26 -26 -24 -21 -19 -18 -20 -22 -23 -24 -22 -22 -21 -20 -20 -18 -17 -19 -21 -24 -26 -27 -28 -27 -23 -17 -12 -11 -14 -23 -26 -12 -13 -12 -9 -5 -2 -3 -5 -6 -7 -7 -6 -5 -4 -3 -3 -3 -4 -4 -3 -2 -1 -2 -5 -8 -8 -7 -5 -5 -5 -5 -5 -5 -5 -4 -1 -2 -4 -7 -8 -9 -8 -5 -4 -4 -5 -6 -6 -6 -8 -8 -9 -8 -8 -7 -6 -6 -6 -7 -8 -6 -5 -3 -2 -0 -1 -4 -6 -7 -7 -8 -8 -7 -7 -8 -8 -9 -9 -9 -9 -7 -4 -0 -1 -5 -9 -12 -13 -14 -14 -12 -9 -5 -5 -6 -8 -10 -12 -14 -14 -13 -9 -3 4 5 2 -4 -8 -4 2 5 5 -1 -8 -11 -10 -4 4 7 5 0 -3 -4 -1 0 -0 -4 -8 -8 -4 2 4 -2 -8 -11 -13 -13 -13 -11 -9 -8 -11 -18 -23 -25 -24 -22 -19 -15 -13 -14 -16 -14 -12 -11 -12 -14 -15 -13 -6 3 6 5 6 9 11 7 6 7 9 10 8 5 3 1 -0 -0 2 6 8 4 -2 -8 -12 -15 -18 -21 -23 -24 -23 -18 -12 -6 -2 -4 -6 -7 -8 -8 -10 -13 -14 -12 -7 -5 -6 -7 -9 -11 -13 -17 -20 -21 -17 -10 -8 -11 -15 -17 -12 -6 -1 1 -1 -5 -8 -11 -14 -17 -17 -15 -12 -10 -8 -5 -4 -6 -10 -16 -17 -15 -12 -9 -10 -14 -15 -14 -10 -9 -10 -12 -11 -9 -10 -13 -15 -12 -6 -4 -7 -12 -16 -19 -21 -21 -20 -19 -16 -16 -16 -18 -19 -20 -19 -18 -17 -14 -12 -14 -18 -23 -22 -14 -8 -7 -12 -19 -19 -18 -18 -19 -22 -23 -23 -24 -26 -26 -26 -25 -25 -23 -21 -21 -20 -19 -19 -19 -20 -21 -21 -18 -18 -19 -21 -22 -22 -21 -23 -24 -23 -18 -16 -19 -25 -25 -25 -24 -22 -19 -17 -16 -15 -14 -16 -19 -20 -20 -19 -19 -19 -20 -21 -21 -20 -21 -23 -25 -26 -27 -25 -22 -17 -14 -12 -13 -18 -24 -27 -30 -29 -27 -24 -23 -25 -28 -27 -23 -19 -17 -17 -17 -18 -21 -24 -25 -24 -22 -23 -24 -24 -25 -27 -27 -25 -23 -20 -18 -20 -22 -24 -25 -23 -22 -21 -20 -20 -19 -19 -19 -20 -23 -25 -26 -27 -26 -24 -18 -13 -10 -12 -22 -25 -9 -5 -2 0 -0 -2 -4 -5 -6 -5 -3 -0 1 1 1 1 1 1 1 1 0 -2 -6 -10 -11 -10 -7 -7 -6 -6 -6 -6 -5 -3 -1 0 -0 -2 -3 -4 -6 -8 -8 -8 -6 -5 -4 -4 -5 -7 -7 -8 -9 -9 -9 -8 -7 -6 -6 -8 -8 -7 -5 -4 -2 -2 -5 -6 -5 -4 -6 -6 -6 -6 -6 -6 -6 -7 -7 -7 -7 -5 -0 2 -2 -6 -9 -12 -13 -13 -13 -11 -8 -6 -7 -8 -10 -12 -13 -13 -13 -11 -9 -1 4 4 1 -4 -4 -1 4 7 4 -4 -9 -12 -10 -1 6 9 6 1 -1 -0 1 1 -2 -7 -10 -9 -3 2 0 -5 -10 -12 -11 -12 -12 -10 -8 -10 -17 -22 -24 -24 -23 -20 -16 -13 -14 -16 -15 -13 -12 -12 -13 -15 -15 -12 -5 1 3 5 7 9 9 10 11 14 15 13 11 9 8 6 3 2 4 7 7 3 -2 -8 -12 -16 -19 -22 -23 -22 -18 -13 -7 -3 -4 -7 -9 -9 -9 -10 -12 -13 -13 -10 -6 -6 -7 -9 -11 -12 -16 -19 -21 -19 -14 -11 -11 -14 -18 -16 -10 -3 3 2 -4 -8 -12 -14 -17 -17 -15 -13 -12 -11 -9 -6 -6 -8 -14 -17 -16 -13 -9 -10 -13 -15 -15 -13 -11 -10 -11 -12 -10 -10 -13 -15 -14 -9 -6 -7 -10 -15 -20 -23 -23 -21 -19 -17 -16 -16 -17 -19 -20 -20 -20 -19 -16 -13 -13 -18 -25 -23 -17 -11 -8 -10 -16 -19 -21 -21 -19 -19 -20 -20 -22 -25 -26 -25 -24 -25 -22 -22 -22 -21 -19 -19 -19 -19 -20 -21 -19 -18 -19 -20 -22 -22 -22 -23 -24 -23 -18 -15 -17 -24 -25 -24 -22 -19 -17 -17 -16 -15 -14 -14 -17 -17 -18 -19 -19 -18 -19 -20 -21 -20 -19 -20 -23 -25 -26 -25 -22 -17 -14 -11 -12 -18 -25 -27 -30 -30 -28 -26 -24 -26 -28 -27 -24 -21 -18 -17 -17 -19 -21 -24 -26 -26 -24 -23 -23 -24 -26 -28 -27 -26 -24 -21 -18 -20 -22 -24 -25 -23 -21 -21 -21 -20 -20 -20 -19 -20 -23 -23 -24 -24 -25 -24 -20 -14 -10 -12 -21 -25 2 4 2 -1 -4 -5 -5 -5 -3 -1 1 1 1 1 0 0 1 1 0 -1 -3 -9 -13 -15 -13 -10 -10 -11 -12 -11 -9 -7 -5 -3 -1 -1 -0 -1 -1 -2 -4 -6 -8 -9 -9 -7 -5 -3 -4 -6 -8 -9 -10 -9 -8 -8 -8 -7 -5 -5 -7 -7 -8 -7 -5 -4 -5 -6 -4 -2 -2 -3 -5 -8 -6 -5 -5 -6 -5 -5 -5 -4 -1 2 0 -4 -8 -11 -11 -12 -13 -13 -10 -7 -7 -8 -10 -11 -13 -13 -13 -12 -12 -7 -1 4 5 1 -2 -1 2 6 6 1 -6 -11 -13 -10 -0 8 12 9 4 1 1 0 -1 -6 -10 -11 -8 -2 1 -2 -7 -10 -10 -11 -12 -11 -9 -9 -14 -20 -23 -24 -23 -21 -17 -13 -13 -16 -16 -15 -13 -13 -14 -15 -15 -14 -12 -6 -1 2 4 4 8 12 16 18 18 16 15 14 13 11 7 4 3 5 9 9 5 -1 -7 -13 -18 -21 -22 -21 -18 -14 -9 -5 -5 -7 -9 -11 -11 -11 -11 -13 -13 -12 -8 -7 -8 -9 -11 -12 -14 -18 -20 -20 -16 -13 -11 -13 -17 -18 -13 -6 2 3 -2 -8 -12 -14 -17 -17 -16 -13 -12 -13 -12 -9 -7 -6 -10 -14 -16 -13 -10 -10 -12 -14 -16 -15 -13 -11 -11 -12 -10 -9 -10 -13 -15 -13 -10 -8 -9 -14 -20 -23 -24 -22 -20 -18 -17 -16 -16 -18 -19 -21 -21 -21 -18 -15 -15 -17 -23 -23 -19 -12 -4 -3 -11 -20 -24 -23 -20 -19 -19 -19 -19 -23 -25 -25 -24 -25 -23 -22 -22 -22 -20 -19 -19 -19 -20 -20 -19 -19 -19 -20 -21 -21 -22 -23 -24 -24 -19 -15 -16 -25 -25 -23 -21 -19 -18 -18 -17 -15 -15 -14 -15 -16 -17 -18 -18 -18 -18 -18 -19 -18 -16 -17 -20 -23 -25 -25 -22 -18 -13 -11 -12 -18 -25 -28 -31 -32 -30 -27 -26 -27 -27 -26 -25 -22 -19 -18 -18 -19 -21 -25 -28 -27 -24 -23 -23 -24 -26 -29 -28 -26 -24 -22 -20 -20 -21 -24 -25 -24 -22 -22 -22 -22 -22 -21 -19 -19 -21 -21 -21 -23 -25 -25 -22 -16 -11 -11 -20 -25 3 1 -2 -6 -7 -7 -5 -2 -1 0 -0 -1 -2 -3 -3 -4 -3 -3 -4 -7 -10 -15 -16 -15 -12 -10 -13 -17 -19 -17 -14 -8 -4 -1 -1 -2 -2 -2 -3 -4 -6 -7 -7 -8 -9 -9 -8 -6 -4 -4 -6 -8 -8 -7 -6 -6 -6 -6 -5 -5 -5 -6 -8 -10 -9 -7 -6 -4 -2 -1 -1 -1 -1 -3 -3 -4 -5 -5 -4 -4 -5 -5 -3 -0 -0 -4 -8 -11 -11 -13 -14 -14 -12 -8 -7 -8 -10 -11 -13 -14 -14 -13 -13 -11 -6 -1 3 3 -0 -1 1 5 8 6 -0 -8 -14 -15 -10 0 10 14 11 7 3 1 -1 -3 -6 -9 -11 -8 -1 0 -3 -8 -10 -11 -12 -12 -11 -9 -13 -18 -22 -23 -23 -22 -18 -13 -12 -15 -17 -16 -14 -13 -15 -15 -14 -13 -12 -9 -4 0 3 1 3 8 13 16 16 15 15 16 15 14 11 7 6 7 10 12 10 6 -1 -8 -12 -15 -18 -20 -19 -17 -13 -8 -7 -7 -9 -11 -13 -12 -12 -12 -13 -14 -11 -9 -8 -10 -12 -12 -14 -16 -19 -20 -18 -15 -13 -12 -16 -18 -16 -10 -1 3 -1 -6 -10 -13 -16 -16 -15 -14 -13 -13 -14 -13 -10 -6 -7 -10 -13 -13 -11 -10 -10 -13 -15 -16 -15 -13 -12 -13 -11 -9 -10 -12 -15 -14 -12 -10 -10 -14 -20 -23 -24 -22 -20 -18 -17 -17 -16 -17 -19 -21 -22 -22 -19 -17 -16 -17 -20 -21 -19 -13 -6 -4 -11 -18 -23 -23 -20 -20 -19 -19 -18 -21 -24 -25 -25 -25 -24 -23 -24 -25 -21 -20 -20 -20 -21 -20 -19 -19 -19 -20 -20 -21 -22 -23 -25 -26 -21 -15 -15 -25 -25 -23 -21 -21 -22 -21 -19 -17 -15 -15 -15 -16 -17 -17 -18 -19 -19 -19 -19 -17 -16 -16 -19 -22 -23 -24 -24 -20 -14 -11 -13 -18 -25 -28 -32 -33 -31 -29 -28 -28 -27 -25 -26 -24 -21 -20 -19 -20 -22 -26 -29 -27 -24 -22 -23 -24 -27 -29 -28 -27 -25 -23 -22 -21 -22 -24 -26 -25 -24 -22 -22 -24 -23 -22 -21 -19 -20 -20 -21 -23 -26 -27 -24 -18 -13 -12 -19 -24 -3 -5 -7 -8 -7 -5 -2 -1 -1 -2 -3 -4 -5 -5 -5 -6 -5 -5 -7 -10 -13 -15 -14 -12 -10 -11 -17 -22 -24 -22 -15 -6 0 2 -1 -5 -5 -3 -3 -3 -4 -4 -5 -7 -9 -9 -9 -8 -7 -5 -6 -6 -6 -6 -6 -5 -5 -5 -6 -7 -6 -6 -7 -8 -9 -8 -6 -3 -1 -1 -0 -0 -0 -2 -3 -3 -4 -4 -4 -5 -6 -6 -4 -2 -1 -3 -6 -11 -13 -14 -16 -16 -14 -9 -7 -7 -9 -11 -13 -14 -14 -14 -13 -12 -9 -5 -1 2 1 -0 0 4 8 10 7 0 -8 -14 -15 -10 -0 11 15 12 6 2 -1 -2 -3 -6 -8 -10 -6 -3 -3 -6 -9 -10 -11 -11 -11 -10 -12 -16 -21 -23 -23 -24 -20 -14 -10 -14 -17 -17 -15 -13 -14 -15 -15 -12 -8 -8 -6 -2 2 2 -0 1 4 8 12 15 16 17 16 15 13 12 11 12 13 14 14 12 6 -1 -7 -13 -18 -20 -19 -17 -14 -10 -8 -8 -10 -12 -14 -14 -14 -14 -14 -15 -13 -10 -9 -10 -12 -12 -13 -15 -17 -19 -19 -17 -14 -12 -14 -18 -18 -14 -5 1 -0 -4 -9 -12 -14 -14 -14 -14 -15 -15 -15 -15 -14 -9 -5 -7 -10 -13 -11 -10 -9 -11 -14 -16 -16 -15 -14 -14 -13 -10 -9 -11 -15 -16 -14 -11 -11 -15 -20 -23 -23 -22 -20 -18 -17 -17 -16 -18 -20 -21 -22 -21 -19 -17 -17 -17 -19 -19 -18 -15 -10 -8 -9 -13 -18 -21 -19 -19 -19 -19 -19 -20 -23 -25 -26 -26 -25 -24 -25 -27 -22 -21 -21 -22 -21 -20 -20 -21 -21 -21 -20 -21 -23 -23 -25 -28 -23 -17 -14 -24 -26 -24 -22 -22 -26 -26 -23 -19 -16 -16 -16 -16 -16 -17 -17 -19 -20 -22 -20 -18 -16 -16 -17 -20 -22 -24 -25 -22 -15 -12 -14 -19 -24 -28 -32 -33 -32 -30 -30 -30 -29 -27 -27 -26 -23 -22 -21 -21 -22 -26 -28 -27 -24 -22 -23 -25 -28 -29 -29 -27 -25 -23 -23 -22 -22 -24 -26 -26 -25 -23 -22 -25 -24 -23 -22 -20 -20 -21 -22 -24 -26 -28 -25 -20 -15 -13 -17 -23 -8 -7 -7 -6 -4 -2 -1 -2 -3 -4 -5 -5 -5 -6 -6 -5 -5 -6 -8 -11 -14 -14 -12 -11 -11 -15 -22 -27 -28 -22 -13 -2 3 2 -4 -8 -6 -3 -2 -2 -3 -3 -4 -6 -8 -9 -10 -10 -9 -7 -7 -7 -6 -6 -6 -6 -5 -5 -6 -7 -7 -6 -6 -6 -8 -8 -7 -4 -1 0 0 0 1 1 0 -1 -2 -3 -3 -4 -6 -6 -5 -3 -3 -3 -5 -8 -11 -13 -16 -18 -16 -10 -7 -7 -8 -11 -13 -15 -15 -14 -13 -13 -11 -9 -5 -1 1 -0 -1 1 7 12 13 9 1 -7 -14 -15 -10 1 12 14 11 4 -0 -0 -0 -2 -5 -9 -8 -5 -4 -5 -8 -9 -10 -10 -11 -12 -12 -15 -19 -23 -24 -24 -22 -17 -9 -13 -16 -18 -16 -13 -13 -15 -16 -14 -9 -6 -6 -5 -1 4 2 -2 -4 -1 7 13 16 16 16 16 16 16 16 16 15 15 14 15 14 10 3 -6 -15 -19 -19 -16 -14 -11 -9 -8 -9 -10 -12 -13 -14 -14 -14 -14 -13 -10 -9 -10 -12 -12 -12 -13 -16 -18 -19 -18 -15 -12 -13 -17 -20 -17 -9 -2 -0 -2 -6 -10 -11 -12 -13 -14 -14 -14 -15 -16 -16 -12 -7 -6 -8 -12 -11 -9 -9 -10 -12 -15 -17 -16 -14 -14 -13 -11 -9 -10 -14 -17 -16 -14 -13 -15 -19 -23 -24 -22 -20 -19 -17 -17 -17 -19 -21 -22 -22 -21 -19 -17 -17 -18 -19 -18 -18 -17 -14 -9 -8 -11 -16 -19 -19 -19 -19 -19 -20 -20 -21 -24 -27 -26 -25 -24 -25 -29 -24 -22 -23 -23 -22 -20 -22 -24 -24 -23 -20 -21 -23 -24 -26 -29 -25 -19 -13 -22 -25 -23 -21 -24 -27 -26 -23 -20 -17 -17 -17 -17 -16 -16 -17 -19 -22 -24 -21 -19 -17 -16 -17 -19 -20 -23 -25 -24 -17 -14 -15 -20 -23 -28 -31 -34 -34 -32 -31 -31 -30 -28 -27 -26 -25 -23 -21 -21 -23 -25 -26 -26 -23 -22 -23 -25 -28 -29 -29 -28 -24 -24 -24 -23 -22 -23 -26 -26 -26 -24 -24 -25 -24 -22 -21 -20 -20 -21 -22 -24 -24 -26 -26 -22 -16 -13 -16 -21 -8 -5 -2 -0 0 -1 -3 -4 -5 -5 -5 -5 -5 -6 -6 -5 -5 -7 -9 -12 -15 -15 -13 -12 -13 -17 -22 -24 -23 -18 -9 1 3 -0 -6 -9 -6 -2 -1 -2 -3 -3 -4 -5 -7 -9 -10 -10 -10 -9 -8 -7 -7 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -6 -7 -7 -6 -3 -1 -0 0 1 2 3 2 -0 -2 -2 -4 -5 -5 -4 -3 -4 -4 -4 -5 -8 -11 -15 -17 -16 -11 -8 -7 -8 -10 -13 -15 -15 -15 -14 -13 -12 -11 -10 -6 -1 -1 -3 -3 2 9 13 13 10 1 -8 -14 -16 -10 3 12 13 7 2 2 3 1 -2 -6 -8 -7 -6 -4 -4 -6 -7 -9 -11 -12 -12 -13 -17 -23 -24 -25 -24 -20 -11 -10 -14 -17 -17 -14 -13 -13 -15 -16 -14 -7 -4 -4 -4 1 4 3 -1 -5 -2 3 8 12 14 17 19 20 20 19 17 16 15 18 22 20 14 4 -8 -15 -17 -16 -14 -11 -9 -9 -9 -10 -11 -13 -15 -16 -15 -14 -13 -11 -10 -10 -10 -10 -10 -12 -14 -17 -19 -19 -17 -13 -12 -16 -20 -20 -13 -5 -1 -2 -5 -8 -8 -9 -11 -13 -14 -14 -15 -16 -18 -16 -11 -8 -8 -11 -11 -10 -9 -10 -11 -14 -16 -15 -14 -13 -13 -12 -9 -8 -13 -17 -18 -17 -14 -14 -18 -21 -23 -22 -19 -18 -17 -17 -17 -19 -21 -22 -23 -22 -19 -18 -17 -18 -20 -19 -19 -18 -17 -11 -8 -11 -16 -20 -21 -20 -19 -19 -20 -20 -20 -23 -27 -26 -24 -23 -25 -30 -25 -23 -23 -24 -23 -21 -23 -25 -25 -22 -20 -20 -23 -26 -27 -29 -26 -20 -13 -18 -21 -21 -20 -25 -27 -25 -21 -19 -17 -18 -18 -17 -17 -17 -18 -21 -24 -25 -22 -20 -18 -18 -17 -18 -20 -22 -24 -24 -19 -15 -16 -20 -22 -26 -30 -34 -34 -33 -32 -31 -30 -28 -26 -25 -25 -24 -21 -22 -24 -25 -25 -26 -24 -22 -22 -24 -26 -28 -29 -29 -24 -24 -25 -24 -23 -23 -25 -26 -26 -25 -25 -24 -23 -21 -20 -20 -19 -19 -19 -19 -20 -24 -25 -23 -18 -14 -17 -21 -2 1 3 2 -1 -4 -5 -4 -4 -4 -5 -5 -6 -6 -6 -6 -6 -7 -10 -13 -15 -15 -12 -11 -12 -14 -15 -16 -15 -11 -3 4 3 -2 -7 -8 -5 -3 -2 -2 -3 -3 -3 -4 -6 -8 -10 -11 -11 -10 -8 -7 -7 -7 -7 -7 -7 -6 -5 -5 -5 -6 -6 -6 -6 -6 -7 -6 -5 -2 -1 -0 -0 0 2 2 1 -0 -1 -2 -4 -4 -3 -3 -4 -4 -4 -4 -7 -10 -13 -14 -14 -11 -9 -8 -8 -10 -13 -15 -16 -16 -15 -14 -13 -12 -12 -11 -4 -1 -3 -7 -5 2 8 13 13 9 0 -8 -15 -15 -7 4 10 10 6 6 7 6 2 -2 -5 -6 -6 -3 -2 -3 -6 -9 -11 -12 -12 -12 -15 -21 -25 -26 -26 -24 -15 -10 -12 -15 -17 -16 -14 -13 -14 -15 -15 -11 -5 -1 -3 -3 2 6 7 3 -2 -4 -1 3 9 15 20 23 25 24 21 19 19 22 27 26 21 12 1 -9 -13 -14 -13 -11 -9 -9 -9 -10 -10 -12 -15 -17 -17 -14 -11 -10 -10 -9 -9 -9 -10 -12 -14 -17 -19 -19 -18 -15 -13 -15 -19 -20 -16 -8 -3 -4 -7 -7 -5 -5 -8 -13 -14 -14 -15 -16 -18 -18 -15 -11 -8 -9 -9 -9 -10 -9 -10 -12 -14 -14 -12 -12 -13 -12 -10 -8 -11 -16 -18 -18 -15 -14 -16 -19 -22 -22 -19 -17 -17 -17 -17 -19 -20 -21 -23 -23 -21 -19 -18 -19 -20 -20 -21 -21 -19 -13 -10 -11 -15 -20 -22 -22 -21 -21 -20 -20 -20 -22 -25 -25 -24 -23 -25 -31 -27 -24 -23 -23 -23 -22 -23 -24 -24 -22 -21 -21 -23 -27 -29 -30 -27 -22 -14 -15 -17 -19 -19 -24 -25 -23 -20 -19 -17 -17 -18 -18 -18 -18 -20 -24 -26 -26 -23 -21 -19 -19 -19 -19 -21 -23 -24 -24 -20 -16 -16 -18 -21 -25 -29 -33 -35 -33 -32 -31 -30 -28 -26 -25 -25 -24 -21 -22 -23 -25 -26 -28 -25 -21 -20 -21 -25 -27 -29 -29 -24 -24 -25 -25 -25 -24 -24 -25 -25 -26 -27 -26 -24 -22 -20 -19 -19 -19 -17 -17 -18 -21 -25 -23 -19 -16 -18 -22 0 1 1 -1 -4 -5 -4 -3 -4 -4 -5 -5 -6 -6 -5 -5 -6 -8 -11 -14 -14 -13 -10 -9 -9 -10 -10 -11 -9 -5 3 5 2 -2 -5 -5 -4 -4 -4 -4 -4 -3 -2 -3 -4 -6 -9 -11 -12 -12 -10 -8 -7 -8 -7 -6 -6 -7 -6 -4 -4 -5 -6 -6 -6 -5 -5 -5 -5 -4 -2 -1 -1 -1 -0 1 2 3 3 1 -1 -2 -2 -2 -3 -4 -4 -5 -7 -10 -12 -13 -13 -11 -10 -9 -8 -9 -12 -15 -16 -16 -16 -15 -14 -13 -13 -14 -9 -3 -2 -7 -11 -6 -0 6 11 11 6 -1 -9 -15 -13 -5 4 10 9 9 10 10 8 4 0 -3 -4 -3 -2 -3 -5 -8 -11 -12 -12 -12 -13 -18 -23 -26 -28 -26 -19 -11 -10 -12 -16 -17 -15 -14 -14 -14 -15 -15 -10 -4 1 -1 0 4 7 6 1 -3 -5 -4 -0 8 18 26 30 28 24 22 22 24 24 23 21 16 8 -1 -7 -11 -11 -11 -9 -9 -10 -10 -9 -11 -15 -19 -20 -16 -11 -9 -8 -9 -7 -7 -8 -9 -12 -15 -18 -19 -19 -16 -13 -14 -18 -21 -19 -12 -7 -6 -8 -7 -3 -2 -6 -12 -14 -14 -15 -16 -18 -20 -19 -15 -10 -7 -7 -9 -10 -10 -10 -12 -14 -14 -13 -12 -13 -13 -11 -8 -10 -14 -17 -18 -15 -13 -15 -17 -20 -21 -19 -17 -16 -16 -17 -18 -19 -20 -22 -22 -22 -20 -19 -18 -19 -22 -23 -23 -20 -14 -11 -10 -14 -20 -23 -25 -25 -24 -22 -21 -21 -21 -23 -25 -26 -26 -27 -31 -28 -25 -23 -23 -23 -22 -23 -24 -23 -23 -24 -25 -26 -29 -32 -32 -29 -24 -16 -14 -16 -18 -17 -20 -23 -24 -22 -20 -19 -18 -19 -19 -19 -19 -22 -26 -28 -26 -24 -21 -20 -19 -20 -21 -22 -23 -24 -24 -21 -18 -15 -16 -20 -26 -30 -32 -34 -33 -32 -31 -30 -29 -27 -26 -25 -24 -22 -22 -23 -24 -26 -29 -26 -22 -19 -20 -23 -27 -29 -29 -24 -23 -24 -25 -26 -25 -25 -25 -26 -27 -30 -29 -27 -24 -21 -19 -20 -20 -19 -16 -18 -20 -23 -23 -21 -18 -19 -24 -2 -1 -2 -4 -4 -4 -3 -3 -4 -4 -5 -5 -5 -5 -5 -5 -6 -9 -12 -13 -13 -10 -7 -6 -7 -7 -8 -8 -4 -0 2 1 -0 -1 -2 -2 -2 -3 -4 -5 -5 -4 -3 -2 -2 -4 -7 -10 -13 -14 -14 -11 -9 -8 -8 -7 -6 -7 -7 -6 -5 -5 -6 -7 -7 -6 -5 -5 -5 -5 -4 -3 -2 -1 -2 -1 1 4 5 4 2 -0 -1 -1 -2 -3 -4 -6 -8 -10 -12 -12 -12 -12 -11 -9 -8 -8 -11 -13 -15 -16 -17 -16 -15 -14 -14 -14 -14 -7 -1 -2 -9 -12 -9 -4 2 6 6 3 -3 -9 -13 -12 -5 3 9 11 12 13 12 9 6 3 -1 -3 -4 -4 -5 -7 -10 -13 -13 -12 -12 -14 -20 -25 -27 -27 -22 -13 -9 -10 -14 -16 -16 -16 -15 -15 -15 -15 -14 -10 -1 2 2 2 4 6 4 0 -2 -4 -5 -2 6 16 27 31 31 31 30 28 21 15 12 11 10 4 -3 -8 -10 -10 -9 -10 -10 -10 -10 -11 -15 -19 -21 -18 -12 -8 -7 -7 -7 -6 -6 -7 -10 -14 -17 -19 -20 -18 -15 -15 -17 -21 -21 -15 -10 -7 -8 -7 -3 -2 -5 -11 -13 -14 -15 -16 -18 -20 -20 -18 -13 -8 -7 -8 -10 -10 -9 -11 -12 -13 -13 -13 -14 -14 -13 -10 -9 -12 -15 -16 -13 -12 -13 -16 -18 -19 -18 -17 -16 -16 -17 -18 -19 -20 -21 -22 -21 -20 -19 -18 -19 -20 -22 -23 -20 -14 -10 -9 -13 -19 -23 -26 -27 -27 -24 -23 -23 -23 -23 -25 -29 -30 -28 -31 -29 -26 -23 -22 -22 -23 -24 -24 -22 -25 -28 -28 -27 -30 -33 -33 -30 -25 -18 -15 -16 -20 -19 -20 -24 -26 -26 -23 -21 -21 -21 -21 -20 -22 -25 -27 -28 -26 -24 -22 -20 -20 -20 -22 -23 -24 -24 -24 -23 -19 -15 -15 -20 -25 -30 -31 -34 -34 -33 -32 -31 -29 -28 -27 -25 -25 -23 -22 -22 -24 -26 -28 -27 -22 -18 -20 -22 -26 -30 -30 -24 -22 -23 -26 -27 -26 -26 -26 -27 -29 -30 -30 -29 -27 -22 -20 -20 -21 -20 -18 -18 -20 -21 -22 -22 -20 -21 -27 -2 -2 -4 -4 -4 -3 -3 -3 -3 -4 -5 -5 -5 -5 -5 -5 -6 -9 -11 -12 -10 -7 -4 -3 -5 -7 -8 -4 -1 -1 -3 -5 -3 -1 0 1 -0 -2 -3 -5 -5 -5 -4 -3 -2 -3 -5 -9 -12 -15 -16 -14 -11 -8 -7 -7 -6 -7 -7 -8 -6 -6 -6 -6 -6 -6 -5 -4 -4 -4 -5 -4 -2 -1 -1 -2 -2 1 5 6 5 2 -0 -1 -1 -2 -4 -6 -8 -10 -12 -12 -12 -11 -11 -11 -10 -8 -9 -11 -13 -15 -16 -16 -16 -15 -14 -14 -15 -10 -3 2 -3 -9 -11 -11 -9 -5 0 3 3 -1 -7 -12 -12 -7 2 8 12 15 16 13 11 8 4 -1 -5 -5 -5 -5 -8 -12 -14 -14 -13 -12 -16 -21 -25 -26 -24 -16 -10 -8 -11 -15 -17 -17 -17 -16 -15 -15 -15 -14 -7 1 3 2 2 4 6 6 4 0 -4 -6 -4 3 15 26 31 33 33 34 30 25 20 14 10 4 -2 -5 -7 -9 -9 -9 -10 -11 -11 -12 -15 -19 -22 -20 -14 -9 -6 -6 -6 -5 -4 -5 -8 -12 -16 -19 -20 -19 -16 -15 -16 -20 -22 -17 -12 -8 -7 -6 -3 -2 -4 -10 -14 -15 -16 -16 -17 -19 -20 -19 -16 -10 -7 -7 -9 -10 -10 -10 -11 -12 -12 -12 -14 -15 -14 -12 -9 -10 -12 -13 -12 -11 -11 -14 -17 -18 -17 -17 -17 -16 -16 -17 -19 -20 -21 -21 -21 -20 -19 -19 -19 -19 -20 -22 -19 -14 -9 -7 -11 -17 -22 -26 -28 -28 -26 -24 -24 -25 -25 -28 -31 -32 -27 -28 -26 -25 -24 -23 -23 -23 -23 -23 -22 -27 -30 -29 -27 -30 -33 -33 -31 -27 -20 -15 -16 -22 -22 -22 -26 -30 -30 -27 -25 -24 -24 -24 -24 -25 -27 -29 -29 -28 -26 -24 -21 -20 -21 -22 -23 -24 -23 -24 -24 -22 -17 -16 -19 -25 -30 -31 -33 -33 -33 -31 -31 -29 -28 -27 -26 -25 -24 -22 -22 -23 -25 -28 -27 -24 -19 -20 -21 -25 -30 -30 -25 -22 -22 -26 -28 -27 -27 -27 -27 -28 -29 -29 -29 -28 -25 -22 -20 -21 -21 -19 -19 -19 -20 -22 -22 -21 -21 -29 -2 -3 -4 -4 -4 -3 -3 -3 -3 -4 -5 -6 -5 -5 -5 -5 -6 -8 -9 -9 -8 -5 -3 -3 -5 -7 -3 0 -2 -6 -10 -8 -5 -3 -1 -0 1 0 -0 -2 -3 -4 -4 -4 -4 -3 -4 -7 -11 -16 -17 -16 -13 -9 -7 -7 -6 -6 -7 -8 -8 -7 -6 -6 -5 -4 -4 -4 -4 -4 -5 -5 -4 -1 -0 -1 -2 -1 2 6 7 5 2 -0 -1 -2 -4 -6 -9 -11 -12 -12 -12 -11 -11 -11 -10 -9 -9 -10 -12 -13 -15 -16 -17 -17 -16 -15 -15 -14 -10 -2 1 -3 -7 -10 -10 -10 -7 -3 1 3 -0 -6 -11 -13 -10 -2 6 14 19 19 17 13 9 4 -2 -5 -6 -6 -8 -12 -15 -16 -15 -13 -13 -17 -21 -24 -24 -18 -12 -7 -8 -13 -16 -18 -18 -17 -15 -15 -15 -16 -14 -5 2 4 2 2 6 8 8 6 1 -3 -6 -6 -1 11 22 30 35 38 36 31 23 13 6 4 3 1 -3 -7 -7 -7 -8 -10 -11 -12 -14 -17 -21 -21 -17 -11 -7 -5 -6 -5 -4 -4 -5 -10 -14 -18 -20 -19 -16 -15 -16 -19 -22 -19 -14 -8 -7 -9 -8 -7 -8 -10 -13 -16 -17 -16 -16 -17 -19 -19 -18 -12 -8 -6 -8 -11 -10 -9 -9 -10 -11 -11 -13 -14 -15 -14 -10 -9 -9 -12 -13 -12 -12 -14 -17 -18 -17 -17 -18 -17 -17 -18 -20 -21 -22 -21 -21 -21 -20 -19 -19 -19 -20 -21 -19 -15 -10 -7 -9 -14 -20 -25 -28 -29 -27 -25 -24 -25 -26 -31 -34 -32 -26 -24 -24 -24 -25 -25 -25 -23 -22 -22 -24 -29 -30 -28 -25 -29 -31 -31 -30 -29 -22 -15 -15 -20 -22 -20 -24 -29 -31 -30 -27 -26 -27 -27 -27 -27 -28 -29 -30 -29 -28 -26 -23 -21 -21 -22 -23 -24 -23 -24 -25 -23 -20 -16 -19 -25 -31 -33 -34 -33 -30 -29 -30 -29 -28 -27 -26 -26 -25 -23 -22 -23 -25 -28 -29 -26 -20 -20 -20 -22 -28 -30 -26 -22 -21 -24 -28 -28 -27 -27 -27 -28 -29 -30 -29 -27 -26 -23 -20 -20 -20 -20 -20 -20 -20 -22 -22 -21 -22 -29 -3 -4 -5 -4 -3 -3 -2 -3 -3 -3 -4 -5 -5 -5 -5 -6 -7 -8 -9 -8 -6 -4 -5 -6 -4 -0 3 -2 -8 -11 -9 -5 -3 -3 -4 -4 -3 -1 -0 0 -0 -1 -3 -4 -5 -5 -5 -6 -9 -13 -17 -18 -16 -12 -9 -8 -7 -6 -6 -7 -8 -8 -7 -6 -4 -3 -2 -3 -4 -5 -6 -6 -5 -2 -0 -1 -2 -2 -1 3 6 6 4 2 0 -1 -3 -6 -10 -11 -11 -12 -12 -11 -10 -9 -9 -9 -10 -10 -10 -11 -12 -15 -18 -19 -19 -18 -17 -16 -14 -9 -2 0 -2 -5 -7 -8 -9 -8 -5 0 2 -0 -5 -10 -13 -11 -5 6 16 21 19 16 12 8 2 -3 -6 -8 -9 -11 -14 -16 -17 -16 -14 -15 -17 -21 -23 -20 -14 -8 -6 -10 -14 -17 -18 -18 -17 -15 -15 -16 -17 -12 -3 3 4 2 3 6 9 9 6 2 -4 -8 -9 -4 5 17 29 37 35 30 22 12 3 2 2 1 -2 -5 -6 -5 -5 -7 -10 -12 -14 -17 -21 -22 -19 -14 -8 -5 -6 -6 -5 -4 -4 -7 -12 -17 -20 -19 -16 -15 -15 -19 -21 -20 -15 -10 -8 -9 -10 -9 -8 -9 -12 -16 -17 -17 -16 -17 -18 -19 -19 -15 -9 -6 -6 -9 -10 -9 -9 -9 -10 -10 -11 -13 -14 -14 -11 -8 -7 -10 -13 -13 -12 -12 -13 -14 -15 -17 -18 -18 -18 -19 -20 -21 -22 -22 -22 -21 -21 -19 -19 -19 -20 -21 -20 -17 -12 -7 -7 -12 -19 -25 -28 -30 -28 -26 -25 -26 -28 -33 -35 -31 -26 -22 -23 -24 -26 -26 -26 -25 -22 -23 -25 -27 -28 -28 -26 -29 -30 -29 -28 -29 -24 -17 -14 -19 -21 -19 -22 -30 -33 -31 -28 -27 -29 -28 -27 -27 -27 -28 -30 -30 -29 -27 -25 -22 -22 -22 -22 -24 -22 -24 -25 -23 -22 -17 -20 -27 -34 -34 -35 -33 -29 -28 -29 -29 -28 -28 -26 -26 -27 -25 -22 -23 -24 -28 -31 -29 -23 -21 -20 -21 -26 -30 -28 -23 -19 -22 -26 -27 -27 -27 -27 -29 -30 -30 -28 -26 -25 -23 -21 -19 -19 -20 -21 -20 -20 -22 -22 -21 -22 -29 -4 -4 -4 -3 -3 -3 -3 -3 -3 -4 -4 -4 -4 -4 -5 -6 -7 -9 -9 -8 -8 -8 -6 -2 1 2 -3 -7 -9 -8 -5 -3 -3 -4 -5 -5 -4 -4 -3 -2 -1 -0 -1 -2 -4 -5 -5 -6 -7 -10 -13 -16 -16 -14 -10 -9 -8 -7 -5 -6 -7 -8 -8 -6 -4 -2 -1 -2 -4 -6 -6 -6 -5 -4 -2 -1 -1 -2 -2 -0 3 5 6 5 2 0 -3 -6 -10 -10 -11 -11 -12 -11 -9 -7 -7 -8 -9 -10 -9 -10 -11 -15 -18 -20 -21 -20 -18 -17 -16 -15 -9 -3 -1 -2 -3 -4 -8 -10 -10 -5 -0 1 -2 -6 -10 -13 -11 -5 5 16 20 19 15 11 6 -0 -6 -10 -11 -11 -13 -16 -17 -18 -16 -15 -16 -19 -21 -21 -17 -11 -6 -7 -11 -15 -18 -19 -19 -18 -16 -16 -16 -15 -10 -3 4 4 3 4 6 9 9 5 1 -4 -9 -11 -8 0 13 23 27 26 22 14 6 3 1 0 -2 -4 -4 -4 -5 -8 -12 -14 -15 -16 -19 -20 -18 -14 -10 -7 -6 -7 -7 -5 -3 -5 -10 -15 -18 -18 -16 -14 -15 -17 -20 -20 -17 -11 -8 -10 -11 -11 -9 -9 -13 -17 -19 -19 -17 -16 -17 -18 -19 -17 -12 -7 -6 -9 -10 -10 -9 -9 -9 -9 -10 -12 -13 -13 -11 -8 -7 -9 -12 -13 -12 -10 -11 -13 -15 -17 -19 -18 -18 -18 -20 -22 -23 -23 -22 -22 -21 -20 -19 -19 -20 -21 -21 -20 -15 -9 -8 -12 -18 -24 -27 -31 -29 -27 -28 -31 -31 -33 -33 -29 -24 -22 -23 -26 -27 -27 -28 -28 -25 -24 -27 -27 -28 -29 -29 -28 -29 -29 -27 -29 -25 -19 -15 -18 -22 -21 -24 -31 -36 -32 -29 -28 -31 -28 -26 -26 -26 -28 -29 -30 -30 -29 -26 -23 -22 -22 -22 -23 -23 -24 -24 -23 -22 -19 -22 -29 -35 -34 -35 -33 -30 -29 -29 -28 -28 -28 -27 -27 -28 -26 -22 -24 -24 -27 -31 -31 -25 -22 -20 -21 -25 -30 -29 -25 -20 -22 -24 -26 -28 -28 -29 -30 -31 -31 -28 -26 -25 -24 -22 -20 -20 -20 -21 -20 -21 -22 -22 -22 -23 -28 -4 -5 -4 -4 -4 -4 -4 -5 -5 -5 -4 -3 -3 -4 -5 -6 -8 -10 -10 -10 -8 -4 -3 -2 -2 -3 -6 -7 -6 -4 -2 -2 -3 -3 -3 -3 -4 -4 -4 -4 -3 -2 -1 -2 -3 -4 -5 -6 -6 -7 -10 -13 -13 -13 -11 -11 -9 -7 -5 -4 -5 -7 -7 -6 -4 -2 -1 -2 -4 -6 -6 -6 -6 -5 -3 -1 -0 -1 -2 -2 -0 2 5 7 5 2 -1 -4 -8 -9 -9 -10 -11 -11 -9 -7 -6 -6 -8 -9 -10 -10 -11 -15 -18 -20 -21 -21 -19 -17 -16 -16 -15 -8 -3 -2 -2 -2 -5 -9 -12 -10 -5 -1 -1 -3 -6 -10 -12 -11 -6 5 15 19 18 14 9 3 -5 -10 -12 -11 -12 -15 -17 -19 -18 -17 -16 -18 -20 -21 -18 -14 -8 -6 -8 -12 -16 -20 -21 -19 -17 -15 -15 -16 -15 -11 -2 5 5 3 3 6 9 9 5 1 -5 -8 -11 -10 -6 2 13 19 21 17 11 6 3 1 -1 -2 -3 -4 -5 -9 -13 -15 -16 -18 -20 -19 -18 -14 -10 -7 -7 -7 -8 -7 -3 -3 -7 -12 -17 -16 -14 -13 -13 -15 -18 -19 -18 -13 -9 -10 -11 -12 -9 -9 -12 -17 -20 -21 -19 -17 -16 -17 -18 -18 -15 -10 -7 -9 -10 -10 -9 -8 -8 -8 -9 -11 -12 -13 -12 -10 -7 -8 -11 -12 -12 -10 -10 -13 -15 -17 -19 -18 -17 -18 -20 -23 -23 -24 -23 -23 -21 -20 -19 -19 -20 -21 -23 -22 -19 -11 -9 -12 -17 -23 -27 -30 -30 -29 -32 -36 -35 -34 -31 -27 -24 -23 -25 -28 -29 -27 -29 -30 -27 -26 -29 -28 -27 -29 -31 -29 -29 -29 -29 -30 -27 -21 -17 -19 -24 -24 -26 -32 -36 -33 -31 -31 -32 -29 -27 -26 -26 -27 -29 -31 -32 -32 -29 -25 -23 -23 -23 -24 -24 -25 -25 -23 -23 -21 -23 -28 -32 -33 -34 -33 -30 -30 -29 -28 -28 -29 -28 -28 -28 -27 -23 -23 -23 -25 -30 -31 -26 -22 -21 -22 -25 -30 -30 -27 -21 -22 -24 -26 -28 -28 -30 -30 -31 -31 -29 -27 -27 -27 -25 -22 -21 -21 -21 -20 -21 -22 -23 -22 -22 -26 -4 -4 -5 -6 -6 -6 -6 -6 -5 -5 -4 -3 -4 -6 -7 -8 -8 -10 -9 -6 -3 -3 -5 -6 -5 -5 -7 -6 -4 -3 -2 -3 -2 -2 -1 -1 -1 -2 -3 -4 -4 -4 -3 -3 -4 -4 -5 -5 -6 -7 -8 -10 -11 -11 -12 -13 -11 -8 -4 -2 -3 -4 -5 -5 -4 -3 -3 -3 -4 -5 -6 -6 -6 -5 -4 -2 -1 -1 -1 -2 -1 0 3 6 6 5 2 -1 -5 -7 -8 -9 -9 -10 -10 -8 -7 -5 -7 -9 -10 -11 -11 -13 -16 -18 -19 -19 -18 -17 -16 -15 -15 -11 -6 -3 -3 -3 -5 -7 -10 -12 -8 -5 -3 -3 -4 -6 -9 -11 -11 -6 4 13 18 17 13 7 0 -7 -11 -11 -12 -13 -16 -19 -20 -19 -18 -17 -19 -20 -19 -16 -11 -6 -6 -9 -14 -19 -21 -20 -17 -14 -14 -15 -16 -15 -11 1 7 7 4 3 6 9 9 5 -1 -5 -7 -10 -11 -10 -1 9 16 17 14 10 7 4 2 1 -1 -3 -5 -9 -14 -15 -16 -17 -18 -17 -16 -13 -10 -8 -6 -7 -8 -9 -5 -2 -4 -9 -15 -16 -14 -12 -11 -13 -16 -18 -18 -14 -9 -9 -10 -11 -9 -9 -11 -16 -19 -20 -19 -17 -15 -16 -18 -18 -16 -13 -9 -10 -11 -10 -9 -8 -8 -9 -10 -11 -12 -13 -13 -11 -8 -8 -10 -11 -11 -10 -11 -12 -14 -16 -19 -19 -18 -18 -20 -23 -24 -25 -26 -25 -22 -20 -19 -19 -20 -21 -24 -25 -22 -14 -10 -11 -16 -22 -26 -30 -31 -31 -34 -38 -37 -34 -31 -28 -27 -26 -27 -31 -30 -28 -29 -31 -30 -28 -30 -29 -28 -29 -31 -29 -28 -28 -30 -32 -29 -24 -18 -19 -25 -26 -26 -29 -34 -34 -33 -32 -31 -29 -28 -27 -27 -27 -30 -32 -34 -35 -32 -28 -25 -23 -24 -26 -27 -27 -26 -24 -23 -23 -25 -28 -28 -32 -33 -32 -30 -30 -29 -29 -29 -29 -29 -29 -29 -28 -26 -25 -24 -25 -29 -31 -27 -23 -22 -22 -25 -29 -30 -28 -22 -22 -23 -26 -27 -29 -30 -31 -31 -31 -30 -29 -29 -30 -29 -24 -22 -22 -21 -21 -21 -22 -23 -23 -21 -24 -4 -6 -7 -8 -8 -7 -6 -5 -4 -4 -4 -6 -8 -8 -8 -9 -10 -10 -6 -3 -2 -4 -7 -7 -7 -6 -7 -6 -5 -4 -4 -4 -3 -2 -1 -1 -0 -0 -1 -2 -3 -4 -5 -5 -5 -4 -4 -4 -5 -6 -8 -9 -11 -12 -14 -15 -13 -9 -5 -1 -2 -3 -5 -5 -4 -4 -4 -4 -4 -5 -6 -6 -7 -6 -5 -4 -2 -1 0 0 -1 -1 -0 2 5 6 6 3 -2 -6 -8 -8 -8 -8 -9 -9 -8 -6 -6 -8 -10 -11 -11 -11 -12 -13 -14 -15 -15 -16 -16 -15 -14 -13 -9 -5 -5 -6 -6 -6 -8 -10 -10 -8 -6 -4 -4 -5 -6 -9 -11 -12 -7 2 11 16 16 12 6 -2 -8 -10 -11 -13 -15 -18 -20 -20 -19 -18 -18 -19 -19 -18 -14 -7 -4 -5 -10 -17 -20 -21 -18 -14 -12 -14 -16 -18 -17 -7 4 8 6 1 2 5 7 6 3 -1 -4 -6 -8 -11 -9 -2 7 14 16 14 11 8 5 4 2 -0 -4 -8 -12 -13 -13 -13 -15 -15 -14 -13 -10 -8 -6 -6 -7 -9 -6 -2 -1 -5 -12 -15 -14 -12 -10 -12 -15 -18 -18 -15 -10 -9 -9 -10 -10 -9 -10 -13 -16 -17 -17 -16 -15 -16 -18 -19 -18 -15 -11 -11 -11 -10 -9 -8 -8 -9 -11 -12 -13 -15 -15 -13 -10 -8 -9 -10 -11 -10 -11 -12 -14 -16 -19 -20 -19 -18 -20 -23 -25 -27 -28 -28 -25 -22 -21 -21 -20 -22 -23 -24 -23 -17 -11 -10 -14 -20 -25 -29 -31 -32 -34 -38 -38 -34 -30 -32 -31 -28 -26 -30 -31 -29 -30 -32 -33 -30 -29 -29 -28 -29 -31 -30 -28 -27 -29 -33 -31 -26 -20 -19 -22 -24 -25 -27 -32 -34 -34 -33 -31 -30 -29 -29 -28 -28 -30 -32 -35 -36 -35 -31 -27 -24 -25 -28 -29 -29 -27 -25 -24 -24 -26 -29 -27 -30 -31 -30 -28 -28 -28 -29 -30 -29 -29 -29 -29 -29 -29 -27 -25 -25 -28 -30 -28 -25 -22 -22 -23 -27 -30 -29 -22 -21 -22 -24 -27 -29 -31 -31 -31 -31 -31 -30 -30 -31 -32 -28 -25 -22 -23 -22 -21 -22 -23 -22 -21 -22 -6 -8 -8 -7 -6 -5 -5 -5 -4 -3 -4 -6 -8 -8 -9 -9 -8 -6 -6 -6 -6 -6 -6 -6 -6 -5 -5 -5 -5 -5 -6 -5 -4 -3 -3 -3 -2 -1 -0 -0 -1 -3 -4 -5 -4 -3 -3 -3 -4 -5 -7 -9 -11 -13 -15 -16 -14 -10 -5 -2 -2 -3 -4 -4 -4 -4 -5 -5 -5 -5 -5 -6 -7 -7 -5 -4 -3 -2 -1 1 1 0 -0 -1 1 4 6 6 2 -3 -6 -7 -7 -7 -9 -10 -11 -8 -6 -6 -8 -10 -11 -11 -11 -13 -15 -16 -15 -15 -15 -14 -15 -14 -12 -8 -6 -7 -7 -7 -7 -8 -9 -9 -8 -7 -6 -5 -5 -6 -9 -11 -12 -9 -2 9 15 14 9 2 -4 -8 -11 -13 -14 -16 -18 -20 -20 -19 -19 -18 -18 -17 -16 -10 -5 -3 -6 -12 -17 -20 -19 -15 -12 -12 -14 -17 -20 -16 -6 3 6 4 2 1 3 5 5 1 -3 -5 -6 -8 -9 -6 1 9 11 11 10 7 6 6 5 3 0 -3 -7 -8 -9 -9 -11 -13 -13 -13 -11 -9 -8 -7 -7 -8 -6 -3 -1 -2 -8 -13 -13 -12 -10 -11 -14 -16 -17 -16 -11 -9 -9 -10 -10 -8 -8 -10 -13 -14 -15 -15 -15 -16 -19 -20 -19 -17 -14 -12 -12 -11 -10 -8 -8 -10 -12 -13 -13 -15 -15 -15 -12 -8 -8 -9 -11 -11 -11 -12 -15 -17 -19 -20 -19 -18 -19 -22 -25 -28 -29 -29 -26 -24 -21 -20 -19 -21 -22 -23 -23 -18 -11 -8 -10 -16 -22 -27 -31 -32 -33 -36 -36 -32 -29 -32 -32 -28 -25 -26 -29 -30 -32 -35 -36 -32 -30 -29 -29 -30 -32 -32 -29 -26 -27 -31 -30 -27 -24 -20 -20 -22 -24 -26 -30 -33 -34 -33 -31 -31 -31 -30 -28 -28 -29 -31 -34 -35 -36 -33 -28 -25 -27 -28 -29 -28 -28 -27 -25 -25 -27 -30 -27 -28 -30 -29 -27 -27 -28 -30 -31 -30 -29 -29 -29 -29 -30 -28 -27 -26 -27 -29 -29 -26 -23 -23 -23 -26 -29 -30 -24 -21 -21 -24 -26 -29 -30 -31 -32 -34 -34 -33 -32 -32 -34 -32 -27 -23 -24 -23 -22 -22 -24 -24 -21 -20 -9 -9 -7 -4 -4 -5 -5 -5 -3 -2 -2 -3 -6 -7 -7 -6 -4 -4 -9 -10 -9 -5 -3 -2 -2 -3 -3 -3 -4 -5 -5 -5 -5 -4 -4 -4 -4 -3 -2 -1 -1 -2 -4 -4 -4 -3 -4 -3 -3 -4 -6 -8 -10 -12 -14 -15 -13 -10 -6 -3 -3 -3 -3 -3 -3 -4 -5 -5 -5 -6 -6 -6 -7 -8 -6 -4 -3 -2 -2 -0 1 2 1 0 -0 1 3 5 4 1 -3 -5 -6 -6 -8 -11 -13 -11 -7 -5 -6 -8 -10 -10 -11 -12 -13 -15 -15 -16 -16 -16 -16 -16 -15 -12 -7 -6 -7 -8 -6 -5 -7 -9 -9 -8 -7 -6 -6 -6 -8 -10 -12 -13 -11 -5 5 10 9 5 1 -5 -10 -14 -15 -15 -17 -19 -20 -20 -20 -18 -16 -15 -14 -13 -10 -6 -4 -6 -13 -17 -19 -17 -13 -12 -14 -16 -19 -20 -15 -7 -0 3 2 -0 -1 1 2 0 -3 -5 -6 -6 -8 -7 -2 6 11 11 11 10 11 11 9 5 2 -1 -3 -5 -6 -7 -10 -12 -13 -13 -13 -12 -10 -8 -7 -7 -7 -5 -2 -0 -5 -10 -12 -12 -10 -10 -12 -14 -16 -16 -12 -10 -9 -10 -11 -9 -8 -8 -10 -14 -17 -17 -16 -17 -20 -21 -20 -18 -15 -14 -14 -12 -11 -8 -8 -10 -12 -13 -13 -14 -16 -17 -14 -10 -9 -10 -11 -12 -12 -14 -15 -17 -19 -19 -18 -18 -18 -22 -25 -28 -29 -28 -26 -24 -22 -20 -18 -20 -21 -21 -22 -18 -12 -7 -6 -11 -18 -24 -28 -29 -32 -33 -32 -30 -28 -31 -30 -28 -26 -25 -27 -30 -33 -36 -36 -33 -31 -30 -30 -31 -31 -31 -29 -25 -26 -29 -29 -27 -26 -21 -18 -19 -21 -24 -29 -32 -33 -33 -32 -32 -32 -31 -29 -29 -29 -30 -32 -34 -36 -34 -30 -27 -29 -28 -27 -25 -27 -27 -26 -26 -28 -29 -26 -27 -29 -30 -28 -28 -29 -30 -31 -29 -28 -28 -28 -29 -29 -28 -27 -26 -27 -29 -29 -28 -25 -24 -23 -25 -29 -32 -26 -22 -22 -24 -26 -29 -30 -31 -33 -36 -37 -35 -33 -31 -34 -34 -30 -24 -25 -25 -24 -23 -26 -25 -22 -21 -10 -7 -3 -2 -4 -6 -7 -5 -3 -2 -2 -3 -5 -6 -4 -2 -2 -7 -10 -9 -5 -0 1 -1 -3 -5 -6 -5 -5 -5 -4 -5 -4 -4 -4 -4 -4 -4 -4 -3 -3 -3 -3 -3 -3 -3 -3 -3 -4 -4 -6 -7 -9 -11 -13 -13 -11 -9 -7 -5 -5 -4 -2 -1 -2 -3 -4 -5 -5 -6 -6 -7 -7 -8 -7 -5 -3 -2 -2 -2 -1 1 3 2 0 -0 1 3 5 4 0 -4 -6 -5 -7 -10 -13 -14 -10 -7 -5 -6 -8 -9 -10 -10 -11 -13 -15 -15 -16 -16 -16 -17 -17 -14 -9 -6 -7 -8 -8 -6 -6 -8 -9 -9 -7 -6 -6 -6 -7 -10 -11 -12 -12 -10 -5 2 8 9 4 -3 -10 -15 -16 -14 -15 -17 -19 -20 -20 -19 -17 -14 -13 -14 -13 -10 -5 -4 -10 -15 -17 -16 -15 -14 -14 -15 -17 -18 -18 -15 -9 -3 0 -1 -3 -3 -2 -2 -3 -5 -6 -6 -7 -8 -7 -0 8 12 14 13 13 13 12 9 6 3 2 -0 -2 -3 -6 -10 -13 -14 -15 -14 -13 -11 -9 -8 -8 -7 -5 -2 -3 -7 -9 -10 -9 -9 -10 -12 -14 -15 -13 -11 -9 -10 -11 -10 -8 -7 -9 -12 -15 -16 -16 -18 -21 -22 -21 -19 -16 -16 -15 -14 -12 -9 -8 -9 -12 -14 -13 -14 -17 -19 -17 -13 -11 -11 -11 -12 -14 -15 -15 -16 -17 -18 -18 -18 -18 -21 -25 -28 -29 -28 -25 -23 -22 -21 -19 -18 -19 -20 -21 -19 -14 -8 -5 -8 -14 -20 -24 -26 -29 -30 -28 -27 -29 -30 -28 -27 -26 -25 -26 -29 -32 -34 -34 -32 -31 -31 -30 -31 -30 -29 -27 -26 -26 -28 -29 -27 -26 -21 -18 -18 -19 -22 -27 -30 -32 -34 -34 -33 -32 -31 -29 -29 -29 -29 -30 -32 -34 -34 -32 -29 -30 -29 -26 -24 -25 -26 -27 -27 -28 -27 -26 -27 -30 -30 -29 -29 -30 -30 -30 -29 -29 -28 -28 -28 -28 -28 -28 -27 -26 -28 -29 -29 -27 -26 -24 -24 -29 -32 -28 -24 -22 -24 -26 -28 -29 -31 -33 -37 -37 -35 -32 -29 -33 -35 -32 -26 -27 -27 -25 -24 -25 -26 -23 -22 -7 -3 -2 -4 -6 -7 -7 -6 -5 -5 -5 -5 -5 -3 -3 -5 -7 -8 -6 -1 1 0 -4 -5 -5 -5 -6 -6 -5 -4 -3 -2 -2 -2 -2 -3 -3 -3 -3 -3 -4 -4 -4 -4 -3 -3 -3 -3 -4 -4 -5 -6 -8 -10 -12 -11 -11 -10 -9 -7 -7 -5 -3 -1 -1 -2 -3 -4 -5 -6 -7 -7 -8 -8 -8 -7 -4 -2 -1 -2 -2 -0 3 5 3 1 0 1 3 4 2 -1 -4 -4 -6 -9 -12 -15 -13 -9 -6 -4 -6 -8 -9 -10 -10 -11 -13 -15 -15 -15 -16 -17 -17 -16 -12 -7 -5 -6 -8 -7 -6 -7 -8 -9 -8 -7 -6 -5 -6 -10 -13 -13 -12 -10 -9 -6 -2 2 5 1 -6 -11 -13 -13 -13 -15 -16 -19 -20 -20 -19 -15 -12 -13 -15 -15 -14 -11 -11 -12 -13 -14 -15 -15 -14 -13 -13 -14 -16 -17 -16 -11 -6 -3 -3 -4 -5 -4 -4 -5 -7 -7 -7 -8 -9 -7 1 9 14 17 16 15 13 12 10 7 5 3 2 1 -3 -7 -11 -14 -16 -17 -16 -14 -11 -9 -10 -10 -10 -8 -5 -5 -6 -7 -8 -9 -9 -11 -12 -14 -14 -11 -9 -9 -11 -11 -9 -7 -7 -10 -13 -15 -15 -17 -20 -21 -20 -17 -15 -15 -15 -14 -13 -11 -9 -9 -12 -13 -12 -13 -16 -18 -17 -14 -13 -12 -11 -12 -13 -15 -15 -16 -17 -18 -19 -19 -19 -21 -24 -26 -28 -27 -24 -23 -22 -22 -20 -18 -18 -20 -21 -20 -17 -12 -7 -8 -13 -19 -23 -25 -25 -26 -26 -26 -27 -28 -27 -25 -25 -24 -24 -27 -30 -32 -31 -30 -29 -29 -30 -31 -30 -28 -27 -28 -28 -29 -29 -28 -26 -22 -19 -19 -20 -23 -27 -29 -30 -33 -34 -34 -33 -31 -29 -29 -29 -28 -29 -31 -33 -34 -33 -31 -29 -28 -26 -25 -26 -26 -27 -27 -27 -25 -26 -28 -30 -30 -30 -30 -30 -30 -29 -29 -28 -27 -27 -28 -27 -27 -28 -28 -26 -27 -28 -29 -28 -27 -24 -24 -28 -32 -29 -24 -21 -24 -25 -27 -29 -31 -33 -36 -36 -34 -31 -29 -32 -34 -34 -29 -27 -26 -25 -24 -24 -25 -24 -22 -2 -2 -6 -8 -8 -8 -7 -6 -3 -1 0 1 -0 -5 -9 -11 -10 -6 -3 -1 -1 -4 -8 -7 -6 -5 -5 -5 -5 -4 -3 -1 -0 0 0 -1 -1 -2 -2 -2 -3 -4 -5 -5 -5 -5 -4 -4 -4 -5 -5 -6 -7 -8 -9 -8 -9 -10 -10 -9 -8 -5 -3 -2 -2 -2 -3 -4 -5 -7 -8 -8 -8 -8 -9 -8 -6 -3 -0 -1 -3 -2 1 5 5 3 1 -1 -0 2 2 1 -1 -2 -4 -6 -10 -14 -15 -13 -9 -5 -4 -6 -8 -9 -9 -10 -12 -14 -15 -15 -15 -16 -17 -18 -16 -10 -6 -5 -6 -8 -7 -7 -8 -9 -10 -9 -7 -5 -5 -8 -12 -14 -14 -10 -8 -8 -7 -4 1 3 -1 -7 -12 -13 -13 -14 -15 -18 -19 -21 -20 -19 -16 -13 -15 -17 -19 -16 -14 -12 -12 -11 -13 -15 -16 -15 -14 -13 -14 -16 -17 -17 -13 -7 -3 -2 -5 -6 -5 -5 -6 -7 -7 -8 -10 -10 -7 0 8 14 15 13 11 10 10 9 7 5 4 4 1 -3 -8 -12 -15 -17 -17 -15 -13 -11 -12 -13 -15 -14 -9 -5 -3 -4 -6 -8 -9 -10 -11 -12 -13 -11 -10 -9 -11 -11 -10 -8 -6 -8 -10 -13 -14 -16 -18 -18 -18 -17 -15 -15 -15 -15 -15 -12 -10 -9 -11 -11 -11 -12 -14 -16 -16 -15 -14 -12 -9 -10 -12 -14 -15 -16 -18 -19 -20 -19 -18 -20 -22 -25 -27 -26 -24 -23 -23 -23 -20 -19 -18 -20 -21 -22 -20 -16 -10 -8 -12 -18 -24 -24 -21 -22 -23 -24 -23 -25 -25 -24 -24 -22 -23 -26 -28 -29 -29 -29 -28 -27 -28 -30 -29 -29 -29 -30 -31 -31 -30 -30 -27 -24 -21 -21 -22 -25 -28 -29 -29 -32 -34 -34 -33 -31 -29 -28 -28 -27 -30 -31 -32 -32 -32 -30 -28 -27 -26 -27 -27 -27 -28 -29 -26 -24 -26 -28 -29 -30 -30 -30 -29 -29 -29 -29 -27 -26 -26 -27 -27 -27 -28 -29 -26 -26 -28 -29 -28 -26 -25 -24 -27 -31 -30 -25 -21 -23 -23 -25 -27 -30 -32 -34 -34 -31 -29 -28 -31 -34 -35 -31 -27 -24 -23 -22 -23 -24 -23 -22 -2 -6 -10 -9 -9 -5 0 5 5 4 2 -1 -5 -10 -12 -10 -5 -0 -0 -3 -6 -9 -10 -9 -7 -6 -6 -6 -6 -5 -4 -3 -3 -2 -0 1 1 -0 -0 -1 -2 -3 -4 -5 -6 -6 -5 -5 -6 -7 -7 -7 -6 -6 -6 -6 -8 -10 -11 -10 -8 -6 -4 -2 -2 -2 -3 -3 -5 -7 -8 -9 -9 -9 -8 -8 -7 -4 -1 -0 -2 -3 -2 2 5 5 4 0 -2 -1 0 1 -1 -2 -3 -4 -7 -11 -15 -16 -13 -9 -4 -5 -7 -9 -9 -9 -11 -13 -15 -16 -15 -15 -16 -18 -19 -14 -8 -4 -4 -6 -7 -7 -8 -9 -11 -11 -10 -7 -4 -6 -10 -14 -16 -12 -8 -7 -7 -8 -4 0 0 -3 -8 -11 -13 -13 -14 -16 -18 -20 -21 -21 -19 -16 -15 -16 -18 -19 -17 -14 -12 -11 -12 -14 -15 -16 -15 -13 -11 -12 -14 -18 -18 -13 -6 -0 -3 -5 -6 -5 -5 -6 -6 -7 -9 -11 -11 -9 -3 5 9 8 7 5 6 6 6 4 3 4 3 -0 -5 -9 -13 -14 -15 -15 -14 -12 -11 -13 -15 -17 -14 -8 -4 -3 -5 -7 -9 -10 -10 -10 -11 -11 -10 -9 -11 -12 -11 -9 -6 -7 -9 -11 -13 -15 -17 -18 -18 -17 -16 -16 -16 -16 -15 -14 -12 -10 -10 -10 -10 -12 -14 -15 -15 -15 -15 -12 -8 -8 -11 -14 -16 -16 -18 -19 -20 -19 -18 -19 -21 -23 -24 -24 -23 -22 -22 -23 -21 -20 -19 -20 -21 -22 -22 -19 -13 -8 -10 -17 -24 -25 -21 -20 -22 -23 -23 -25 -26 -24 -24 -22 -23 -24 -26 -26 -28 -28 -28 -26 -26 -27 -28 -29 -31 -32 -33 -34 -34 -33 -30 -26 -24 -24 -23 -26 -28 -29 -29 -31 -33 -33 -32 -30 -30 -29 -28 -28 -31 -32 -31 -31 -32 -30 -28 -26 -26 -28 -27 -28 -30 -30 -27 -25 -25 -27 -27 -29 -30 -29 -28 -28 -29 -29 -28 -26 -26 -28 -28 -28 -29 -28 -26 -25 -27 -29 -27 -26 -25 -25 -27 -31 -31 -27 -21 -21 -21 -23 -26 -28 -30 -31 -30 -29 -28 -28 -29 -32 -35 -32 -27 -23 -21 -20 -22 -23 -23 -22 -6 -8 -9 -9 -2 3 6 5 3 0 -2 -4 -6 -9 -10 -7 -3 -0 -2 -5 -8 -10 -10 -8 -7 -7 -7 -7 -6 -5 -5 -5 -6 -6 -4 -1 1 1 1 0 -1 -1 -2 -4 -5 -7 -7 -6 -7 -8 -9 -8 -6 -5 -5 -6 -8 -9 -10 -10 -8 -6 -4 -3 -2 -3 -3 -4 -5 -6 -7 -9 -10 -10 -8 -7 -7 -5 -3 -1 -2 -5 -5 -1 6 8 9 7 3 -0 -1 -1 -1 -2 -3 -3 -4 -8 -13 -17 -17 -13 -6 -4 -5 -8 -10 -10 -11 -12 -14 -15 -15 -14 -15 -17 -19 -17 -12 -6 -3 -3 -5 -7 -8 -9 -12 -14 -13 -11 -6 -5 -7 -12 -16 -15 -10 -6 -6 -8 -7 -4 -2 -2 -5 -10 -12 -13 -13 -14 -16 -18 -21 -22 -21 -18 -15 -14 -15 -15 -14 -14 -13 -15 -15 -15 -15 -17 -17 -15 -12 -11 -12 -16 -20 -19 -14 -6 -3 -5 -6 -6 -5 -4 -3 -4 -6 -9 -12 -14 -13 -8 -1 3 3 2 1 2 2 2 1 2 2 1 -2 -5 -7 -9 -10 -12 -13 -12 -11 -11 -14 -17 -16 -12 -8 -5 -6 -7 -9 -10 -11 -9 -9 -9 -10 -9 -10 -11 -11 -10 -7 -7 -8 -10 -13 -15 -16 -18 -18 -18 -17 -17 -17 -16 -15 -14 -12 -10 -9 -9 -11 -12 -13 -12 -14 -15 -15 -13 -8 -7 -10 -13 -16 -16 -17 -19 -19 -19 -18 -18 -20 -23 -24 -23 -22 -20 -21 -23 -22 -20 -19 -19 -20 -22 -22 -21 -16 -9 -8 -13 -20 -22 -20 -21 -23 -25 -25 -25 -25 -24 -24 -23 -22 -22 -22 -23 -26 -29 -30 -28 -26 -26 -27 -28 -31 -32 -33 -34 -37 -37 -34 -30 -28 -25 -23 -25 -28 -30 -29 -30 -31 -31 -30 -30 -30 -29 -28 -29 -30 -31 -31 -31 -32 -30 -28 -27 -26 -28 -27 -28 -30 -30 -27 -25 -25 -26 -27 -28 -29 -29 -28 -29 -29 -30 -29 -27 -27 -28 -28 -28 -29 -28 -25 -25 -26 -28 -28 -26 -25 -25 -27 -31 -32 -29 -22 -21 -21 -22 -25 -28 -29 -29 -28 -27 -27 -27 -28 -30 -33 -31 -28 -24 -21 -20 -22 -23 -22 -21 -7 -8 -6 0 4 5 4 2 -1 -2 -4 -5 -6 -7 -7 -6 -4 -3 -4 -5 -7 -8 -8 -8 -7 -7 -7 -7 -5 -4 -4 -5 -7 -8 -7 -6 -3 -1 1 1 -1 -1 -2 -2 -3 -4 -6 -7 -7 -8 -9 -8 -6 -5 -5 -6 -8 -8 -9 -9 -8 -6 -4 -3 -2 -3 -4 -4 -4 -5 -6 -8 -11 -12 -11 -8 -6 -6 -6 -5 -4 -5 -6 -4 3 9 13 13 8 2 -0 -2 -3 -5 -4 -3 -2 -4 -10 -15 -18 -17 -10 -5 -4 -6 -10 -11 -11 -11 -12 -13 -14 -14 -15 -16 -18 -18 -15 -10 -4 -1 -3 -5 -7 -9 -11 -14 -15 -15 -11 -5 -5 -9 -14 -17 -13 -8 -5 -6 -8 -8 -5 -3 -3 -8 -11 -12 -12 -12 -14 -17 -20 -22 -21 -19 -16 -15 -14 -13 -12 -12 -14 -17 -18 -16 -14 -14 -15 -14 -13 -12 -11 -14 -19 -20 -18 -12 -6 -5 -5 -5 -3 -1 -1 -2 -5 -8 -10 -13 -15 -16 -11 -5 -1 1 1 0 -0 -1 -2 -1 -1 -1 -2 -4 -4 -4 -5 -8 -11 -12 -10 -9 -10 -15 -17 -15 -11 -7 -6 -6 -7 -9 -11 -9 -6 -6 -7 -7 -8 -10 -11 -11 -9 -7 -7 -10 -13 -14 -16 -17 -18 -19 -18 -18 -17 -16 -15 -15 -13 -11 -9 -9 -11 -12 -12 -10 -12 -14 -15 -14 -11 -8 -9 -12 -14 -15 -16 -17 -19 -19 -18 -18 -20 -23 -25 -24 -22 -20 -21 -22 -22 -20 -19 -19 -20 -22 -23 -23 -20 -12 -8 -10 -15 -17 -19 -21 -23 -24 -24 -24 -25 -26 -25 -24 -23 -21 -21 -21 -25 -29 -32 -31 -27 -26 -26 -28 -30 -31 -32 -35 -38 -39 -39 -37 -34 -28 -23 -24 -27 -30 -28 -29 -30 -29 -29 -29 -30 -29 -29 -30 -30 -30 -30 -30 -31 -31 -29 -28 -27 -27 -27 -28 -29 -29 -27 -25 -25 -25 -25 -27 -28 -28 -27 -28 -29 -30 -30 -28 -27 -27 -27 -27 -28 -27 -26 -24 -25 -27 -28 -26 -25 -26 -27 -30 -32 -31 -24 -22 -21 -20 -23 -27 -29 -29 -28 -27 -26 -26 -27 -28 -31 -31 -29 -26 -22 -21 -23 -24 -23 -21 -6 -2 2 5 4 2 0 -1 -2 -4 -5 -6 -6 -5 -5 -5 -4 -4 -4 -4 -5 -5 -6 -7 -8 -8 -8 -5 -3 -2 -3 -3 -4 -5 -6 -7 -6 -5 -3 -1 -1 -2 -1 -1 -0 -2 -4 -6 -6 -6 -7 -7 -7 -7 -6 -7 -7 -7 -6 -6 -7 -7 -6 -4 -2 -2 -3 -4 -5 -6 -6 -7 -9 -12 -12 -9 -7 -6 -8 -7 -5 -4 -5 -7 -3 3 10 13 10 5 1 -1 -3 -5 -5 -4 -3 -3 -6 -11 -16 -18 -15 -8 -5 -5 -9 -13 -14 -13 -10 -9 -11 -13 -14 -16 -17 -17 -16 -14 -9 -3 -2 -4 -6 -7 -8 -11 -14 -16 -15 -10 -6 -7 -11 -17 -16 -11 -6 -3 -6 -8 -8 -5 -3 -6 -9 -11 -11 -11 -13 -16 -19 -21 -21 -20 -18 -16 -15 -14 -11 -10 -12 -18 -20 -19 -15 -13 -13 -13 -13 -12 -11 -13 -16 -19 -20 -16 -10 -7 -6 -6 -4 -2 -0 -0 -3 -7 -9 -11 -13 -15 -15 -13 -8 -2 3 3 1 -2 -5 -7 -6 -6 -6 -7 -6 -4 -4 -4 -8 -10 -10 -9 -8 -12 -16 -17 -14 -9 -6 -5 -5 -7 -10 -10 -7 -5 -5 -6 -8 -9 -11 -13 -11 -8 -7 -9 -13 -15 -16 -18 -19 -19 -19 -18 -18 -17 -15 -15 -14 -11 -8 -8 -10 -12 -12 -11 -12 -14 -16 -16 -13 -9 -8 -10 -13 -14 -15 -17 -18 -19 -18 -18 -19 -23 -25 -24 -21 -19 -20 -22 -21 -20 -19 -20 -21 -22 -23 -23 -21 -16 -11 -9 -12 -14 -16 -20 -24 -25 -24 -25 -28 -28 -26 -25 -23 -22 -21 -21 -24 -29 -32 -33 -30 -28 -28 -30 -29 -30 -32 -35 -39 -41 -41 -40 -37 -31 -26 -25 -26 -30 -28 -28 -28 -29 -28 -29 -30 -30 -29 -30 -30 -30 -30 -30 -31 -31 -31 -30 -28 -27 -27 -28 -29 -28 -27 -26 -25 -24 -23 -24 -26 -26 -25 -26 -28 -29 -29 -28 -27 -26 -25 -25 -26 -27 -26 -25 -25 -28 -28 -26 -25 -27 -27 -28 -31 -32 -25 -23 -21 -20 -21 -26 -28 -29 -28 -27 -26 -25 -25 -27 -30 -32 -31 -28 -22 -22 -24 -25 -24 -22 2 5 5 3 -0 -2 -2 -2 -4 -6 -7 -7 -7 -6 -4 -3 -3 -4 -3 -3 -2 -2 -3 -5 -6 -7 -7 -4 -2 -1 -1 -2 -2 -3 -4 -4 -5 -5 -5 -4 -4 -4 -4 -2 -1 -0 -1 -2 -3 -5 -6 -8 -9 -9 -9 -8 -7 -5 -4 -4 -6 -7 -7 -6 -3 -2 -2 -4 -5 -6 -6 -7 -9 -11 -12 -11 -9 -6 -6 -6 -5 -4 -3 -4 -5 -3 2 8 10 8 5 2 -2 -3 -4 -4 -3 -2 -3 -7 -12 -17 -18 -12 -7 -4 -7 -12 -15 -15 -11 -7 -8 -11 -14 -16 -16 -16 -16 -15 -12 -7 -4 -4 -6 -7 -8 -8 -11 -14 -16 -15 -11 -8 -8 -13 -16 -14 -8 -2 -4 -7 -8 -7 -4 -5 -7 -9 -11 -11 -12 -14 -17 -20 -21 -20 -18 -16 -16 -16 -13 -11 -10 -16 -21 -21 -18 -14 -13 -12 -12 -12 -12 -12 -14 -17 -19 -19 -15 -10 -8 -7 -7 -4 -1 1 -1 -6 -9 -11 -11 -12 -13 -14 -12 -7 1 5 6 1 -6 -10 -10 -10 -10 -10 -10 -9 -7 -5 -5 -9 -10 -10 -8 -11 -15 -17 -16 -12 -7 -4 -3 -4 -9 -12 -11 -8 -6 -6 -7 -8 -10 -12 -11 -9 -8 -8 -12 -15 -17 -18 -19 -19 -18 -17 -17 -17 -16 -15 -14 -12 -8 -8 -10 -12 -12 -12 -12 -14 -16 -16 -13 -9 -7 -8 -12 -16 -17 -18 -18 -20 -18 -18 -19 -22 -24 -23 -21 -19 -20 -21 -21 -21 -20 -20 -21 -22 -23 -24 -22 -19 -14 -9 -7 -11 -15 -20 -25 -26 -26 -27 -29 -29 -27 -26 -24 -22 -20 -20 -22 -26 -30 -34 -33 -32 -31 -33 -31 -31 -32 -36 -39 -41 -41 -40 -37 -32 -28 -25 -24 -27 -26 -26 -27 -29 -29 -30 -31 -31 -31 -29 -29 -30 -30 -30 -31 -31 -31 -30 -29 -27 -28 -28 -27 -26 -26 -26 -25 -23 -21 -22 -23 -25 -25 -26 -27 -29 -29 -28 -26 -25 -24 -24 -24 -25 -25 -24 -25 -28 -28 -27 -25 -27 -25 -26 -29 -32 -26 -24 -22 -20 -20 -24 -27 -29 -28 -28 -27 -26 -24 -26 -29 -32 -32 -29 -23 -23 -24 -25 -25 -23 7 6 2 -1 -3 -3 -3 -4 -6 -8 -9 -8 -8 -9 -6 -5 -5 -6 -6 -6 -5 -5 -6 -8 -8 -7 -5 -3 -3 -3 -3 -2 -2 -2 -2 -2 -3 -4 -6 -6 -6 -6 -5 -4 -2 -1 -0 -1 -2 -4 -6 -9 -12 -12 -11 -8 -6 -4 -3 -3 -4 -6 -7 -7 -6 -4 -3 -3 -4 -5 -6 -6 -7 -8 -11 -12 -10 -7 -4 -3 -3 -3 -2 -2 -4 -6 -5 -1 5 7 7 4 0 -2 -3 -4 -4 -4 -3 -4 -8 -13 -17 -15 -10 -6 -6 -11 -15 -16 -14 -8 -6 -9 -13 -16 -16 -15 -15 -15 -13 -10 -8 -6 -6 -6 -6 -6 -8 -11 -14 -16 -15 -11 -8 -9 -14 -15 -12 -6 -3 -5 -8 -8 -5 -4 -5 -7 -10 -11 -11 -13 -15 -18 -21 -21 -18 -16 -15 -17 -17 -14 -11 -13 -18 -21 -19 -15 -12 -11 -11 -12 -12 -12 -13 -15 -18 -20 -18 -15 -11 -10 -10 -8 -4 -1 -0 -5 -9 -11 -12 -12 -13 -14 -14 -12 -8 -1 5 6 2 -4 -7 -8 -9 -10 -12 -13 -12 -9 -6 -8 -9 -10 -10 -11 -13 -15 -16 -15 -11 -6 -4 -4 -9 -13 -13 -10 -6 -5 -5 -7 -9 -11 -12 -11 -9 -8 -10 -13 -16 -18 -19 -18 -17 -17 -17 -17 -16 -15 -15 -13 -10 -9 -10 -12 -12 -12 -12 -14 -16 -17 -15 -11 -8 -8 -11 -15 -17 -19 -20 -21 -20 -19 -18 -20 -23 -23 -22 -19 -20 -21 -22 -22 -21 -21 -21 -22 -23 -25 -24 -22 -17 -9 -3 -8 -14 -20 -25 -26 -28 -29 -30 -30 -29 -27 -25 -23 -19 -18 -20 -23 -27 -33 -34 -34 -34 -35 -32 -32 -34 -36 -38 -40 -41 -40 -37 -33 -28 -23 -21 -23 -24 -25 -26 -29 -30 -31 -32 -32 -32 -29 -29 -29 -29 -29 -30 -31 -31 -30 -29 -28 -28 -28 -26 -25 -26 -27 -27 -22 -20 -20 -22 -23 -24 -26 -27 -28 -28 -28 -27 -25 -24 -22 -22 -23 -24 -24 -25 -28 -29 -28 -26 -26 -25 -25 -29 -31 -28 -25 -23 -20 -18 -21 -26 -28 -28 -29 -29 -28 -25 -25 -29 -32 -33 -31 -24 -23 -24 -26 -25 -23 5 2 -1 -3 -3 -3 -4 -6 -8 -10 -9 -8 -8 -8 -5 -3 -3 -5 -5 -5 -5 -6 -8 -8 -6 -4 -2 -3 -4 -4 -4 -4 -2 -1 -1 -1 -2 -2 -4 -6 -7 -7 -6 -5 -4 -3 -1 -1 -2 -4 -7 -9 -11 -11 -10 -8 -6 -4 -3 -3 -4 -5 -6 -8 -8 -7 -4 -3 -3 -4 -5 -5 -5 -6 -8 -11 -11 -8 -3 0 0 -1 -2 -1 -2 -5 -7 -7 -2 4 7 7 3 0 -1 -3 -4 -5 -4 -4 -4 -8 -13 -14 -11 -8 -7 -9 -14 -17 -17 -12 -6 -7 -10 -14 -15 -14 -14 -14 -13 -13 -11 -10 -8 -5 -4 -5 -6 -9 -12 -15 -16 -14 -10 -8 -12 -14 -15 -11 -6 -5 -7 -9 -7 -3 -3 -5 -9 -11 -12 -12 -14 -16 -20 -21 -20 -17 -13 -15 -18 -18 -15 -9 -10 -13 -17 -17 -13 -10 -9 -11 -12 -13 -13 -14 -17 -20 -19 -18 -15 -13 -13 -12 -9 -5 -2 -5 -9 -13 -14 -14 -14 -14 -14 -14 -13 -8 -2 2 3 -0 -3 -4 -5 -7 -10 -12 -14 -14 -11 -9 -8 -10 -11 -11 -11 -12 -15 -17 -15 -10 -6 -5 -8 -11 -13 -12 -9 -6 -5 -6 -8 -10 -12 -12 -10 -9 -11 -13 -15 -17 -19 -18 -17 -17 -17 -18 -17 -16 -15 -14 -12 -10 -11 -12 -12 -12 -12 -14 -16 -17 -18 -15 -11 -7 -8 -12 -15 -18 -20 -21 -21 -20 -19 -19 -22 -23 -23 -20 -20 -21 -23 -23 -22 -21 -21 -22 -24 -25 -25 -24 -19 -12 -5 -9 -15 -22 -25 -27 -29 -31 -32 -30 -29 -27 -26 -23 -19 -17 -18 -22 -26 -32 -34 -34 -33 -34 -33 -34 -35 -36 -38 -40 -40 -39 -37 -33 -28 -22 -19 -20 -23 -26 -29 -30 -31 -31 -32 -33 -32 -30 -29 -28 -27 -27 -29 -30 -30 -30 -28 -27 -27 -27 -26 -26 -27 -28 -27 -22 -20 -20 -21 -22 -23 -26 -28 -28 -27 -27 -26 -26 -24 -21 -21 -21 -22 -23 -25 -27 -29 -28 -27 -27 -26 -26 -29 -32 -30 -27 -25 -21 -17 -19 -23 -27 -28 -30 -30 -30 -26 -25 -28 -32 -34 -33 -26 -24 -24 -26 -24 -23 0 -1 -2 -3 -3 -4 -6 -8 -9 -9 -8 -6 -2 0 2 2 -0 -4 -6 -6 -7 -8 -9 -8 -6 -4 -3 -4 -5 -5 -4 -3 -2 -1 -1 -1 -1 -1 -2 -4 -6 -7 -7 -6 -6 -5 -3 -2 -2 -4 -6 -7 -9 -9 -8 -6 -5 -4 -4 -4 -4 -4 -5 -7 -10 -9 -6 -3 -1 -2 -4 -5 -5 -5 -7 -9 -11 -9 -4 1 1 0 -1 -1 -1 -2 -5 -7 -5 1 6 8 6 3 0 -2 -4 -6 -6 -5 -3 -4 -7 -10 -11 -10 -9 -8 -12 -16 -19 -17 -9 -6 -7 -10 -12 -12 -12 -12 -12 -13 -14 -13 -10 -6 -4 -5 -7 -9 -10 -12 -14 -15 -14 -11 -11 -13 -15 -15 -10 -7 -7 -8 -8 -5 -3 -3 -6 -10 -12 -13 -13 -14 -17 -20 -21 -18 -13 -12 -15 -19 -19 -13 -9 -9 -13 -18 -17 -12 -9 -8 -10 -12 -13 -14 -16 -19 -20 -19 -18 -15 -13 -14 -14 -12 -7 -6 -9 -13 -14 -12 -11 -11 -11 -12 -14 -12 -8 -4 -1 -1 -2 -3 -4 -4 -5 -7 -11 -16 -16 -13 -10 -10 -11 -10 -9 -10 -14 -18 -17 -12 -7 -5 -6 -9 -11 -12 -12 -9 -8 -7 -8 -9 -11 -12 -12 -11 -11 -12 -14 -16 -18 -18 -18 -17 -18 -19 -18 -16 -15 -14 -11 -9 -9 -11 -11 -12 -13 -14 -16 -18 -19 -18 -14 -8 -8 -11 -15 -18 -20 -21 -22 -21 -20 -20 -22 -23 -23 -21 -20 -20 -22 -23 -22 -21 -21 -21 -23 -25 -25 -24 -21 -16 -10 -10 -14 -20 -26 -29 -31 -32 -33 -31 -29 -27 -25 -23 -19 -18 -18 -20 -26 -33 -35 -35 -33 -33 -33 -35 -36 -36 -37 -38 -38 -37 -35 -33 -28 -23 -20 -20 -23 -28 -32 -31 -31 -32 -32 -32 -31 -30 -29 -28 -27 -27 -29 -30 -30 -30 -28 -27 -26 -27 -26 -26 -26 -27 -26 -24 -22 -21 -21 -21 -22 -25 -28 -27 -25 -25 -25 -25 -24 -21 -20 -20 -21 -22 -24 -27 -29 -28 -26 -27 -27 -26 -28 -31 -30 -28 -26 -22 -17 -17 -21 -26 -28 -29 -30 -29 -25 -24 -27 -31 -33 -32 -27 -24 -24 -25 -23 -23 -2 -2 -2 -3 -3 -4 -6 -8 -9 -9 -5 -1 2 3 3 1 -2 -5 -7 -8 -9 -10 -9 -7 -5 -3 -3 -4 -5 -5 -4 -3 -2 -2 -1 -0 0 -0 -1 -2 -4 -5 -6 -7 -7 -7 -6 -5 -5 -4 -3 -5 -7 -7 -5 -5 -5 -5 -5 -5 -5 -4 -5 -7 -9 -10 -8 -5 -1 -0 -2 -4 -5 -5 -6 -8 -10 -10 -7 -2 1 1 0 -1 -1 -1 -2 -4 -5 -2 3 7 8 5 2 -0 -2 -5 -7 -7 -5 -3 -3 -6 -8 -10 -10 -9 -11 -15 -20 -21 -14 -7 -4 -5 -8 -10 -11 -11 -12 -13 -15 -14 -13 -9 -7 -7 -8 -8 -8 -9 -12 -15 -16 -14 -13 -12 -14 -16 -14 -10 -7 -7 -8 -6 -4 -2 -3 -7 -11 -12 -13 -13 -15 -18 -20 -20 -16 -12 -12 -16 -20 -18 -11 -7 -8 -14 -17 -15 -12 -9 -9 -10 -12 -14 -16 -17 -20 -21 -20 -17 -14 -15 -17 -17 -13 -8 -8 -10 -11 -9 -8 -8 -8 -9 -12 -12 -11 -9 -6 -5 -5 -6 -6 -5 -5 -5 -7 -11 -15 -16 -15 -13 -11 -9 -8 -8 -11 -15 -15 -13 -9 -6 -5 -7 -8 -10 -11 -11 -10 -9 -8 -9 -11 -12 -12 -12 -11 -11 -12 -14 -17 -19 -19 -19 -19 -19 -18 -16 -15 -14 -12 -9 -8 -9 -10 -12 -14 -16 -17 -18 -19 -19 -17 -11 -9 -11 -14 -18 -20 -22 -22 -21 -20 -20 -21 -23 -23 -21 -19 -20 -21 -23 -22 -21 -20 -20 -22 -24 -24 -24 -22 -20 -14 -11 -12 -18 -24 -28 -30 -31 -32 -30 -29 -28 -26 -23 -20 -18 -18 -19 -24 -32 -36 -37 -34 -34 -34 -34 -34 -34 -34 -35 -36 -33 -30 -31 -30 -27 -26 -23 -24 -28 -32 -31 -31 -32 -32 -32 -30 -30 -29 -29 -29 -28 -29 -30 -31 -30 -29 -27 -26 -27 -26 -25 -25 -25 -25 -24 -23 -22 -22 -22 -22 -24 -25 -24 -23 -24 -24 -24 -23 -21 -20 -20 -20 -22 -23 -26 -29 -29 -26 -27 -28 -27 -27 -30 -30 -28 -26 -22 -17 -17 -21 -26 -27 -27 -27 -28 -24 -23 -25 -29 -32 -30 -26 -23 -23 -24 -23 -23 -3 -3 -3 -4 -4 -5 -6 -7 -7 -5 -2 0 1 1 -1 -2 -3 -5 -7 -8 -9 -10 -9 -6 -4 -3 -4 -5 -4 -4 -2 -2 -2 -2 -1 -0 0 -0 -1 -2 -2 -3 -4 -6 -8 -10 -10 -9 -7 -5 -3 -3 -4 -4 -4 -4 -5 -6 -6 -6 -6 -5 -5 -6 -8 -9 -8 -6 -3 -1 -1 -2 -4 -6 -7 -9 -10 -10 -8 -3 0 1 -0 -1 -0 1 1 -0 -3 -3 -0 4 8 7 5 2 -1 -3 -6 -7 -8 -7 -4 -4 -5 -7 -9 -10 -11 -14 -18 -23 -20 -11 -4 -0 -3 -6 -9 -11 -12 -13 -13 -14 -13 -11 -10 -9 -9 -8 -7 -8 -10 -13 -16 -16 -15 -13 -13 -15 -16 -12 -9 -7 -8 -8 -5 -2 -1 -4 -8 -11 -12 -12 -13 -16 -20 -22 -19 -13 -11 -12 -18 -20 -15 -9 -6 -9 -14 -16 -14 -11 -8 -9 -11 -13 -14 -16 -19 -21 -22 -21 -19 -18 -17 -17 -15 -10 -7 -6 -7 -9 -10 -8 -6 -7 -10 -11 -11 -10 -10 -9 -9 -9 -9 -9 -8 -7 -6 -7 -11 -14 -15 -13 -10 -9 -9 -9 -10 -12 -14 -14 -13 -9 -6 -5 -6 -8 -10 -10 -10 -9 -9 -9 -11 -12 -13 -13 -11 -9 -10 -13 -17 -21 -23 -22 -19 -18 -17 -17 -16 -15 -13 -10 -9 -9 -9 -12 -15 -17 -18 -18 -20 -20 -19 -14 -11 -12 -15 -18 -20 -22 -23 -22 -20 -20 -21 -22 -23 -21 -20 -20 -21 -22 -23 -21 -20 -20 -20 -21 -23 -24 -24 -22 -17 -13 -12 -16 -21 -26 -28 -29 -30 -28 -28 -27 -27 -24 -21 -19 -17 -17 -21 -28 -35 -39 -36 -35 -33 -32 -32 -32 -32 -33 -34 -33 -29 -30 -32 -31 -30 -26 -26 -28 -30 -30 -32 -33 -33 -31 -31 -31 -31 -31 -30 -29 -30 -31 -31 -30 -29 -28 -27 -26 -26 -25 -24 -23 -23 -23 -23 -23 -23 -23 -22 -22 -23 -22 -21 -22 -23 -24 -22 -20 -20 -20 -20 -22 -23 -26 -29 -31 -27 -27 -28 -26 -26 -30 -31 -28 -26 -23 -19 -17 -21 -25 -26 -26 -26 -25 -23 -22 -23 -26 -29 -28 -25 -23 -23 -23 -22 -22 -4 -5 -5 -6 -6 -6 -6 -6 -5 -3 -2 -1 -2 -3 -4 -4 -4 -5 -5 -7 -9 -10 -9 -6 -4 -4 -5 -5 -4 -2 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -3 -5 -8 -10 -11 -10 -8 -5 -3 -2 -2 -3 -4 -5 -6 -6 -6 -7 -7 -6 -5 -5 -6 -6 -6 -6 -5 -4 -2 -1 -2 -4 -7 -9 -10 -11 -10 -6 -3 -0 0 -1 -0 2 3 3 1 -1 -1 1 5 7 6 4 1 -1 -2 -5 -8 -9 -8 -6 -5 -6 -8 -10 -11 -13 -16 -20 -21 -17 -10 -2 2 -1 -6 -11 -14 -13 -12 -11 -12 -12 -12 -11 -10 -9 -8 -8 -10 -12 -14 -15 -15 -14 -13 -14 -16 -14 -11 -7 -7 -8 -7 -5 -2 -2 -5 -8 -11 -11 -12 -14 -18 -22 -22 -16 -11 -9 -13 -19 -19 -14 -8 -6 -10 -13 -15 -13 -10 -9 -10 -12 -14 -16 -19 -22 -23 -23 -21 -18 -16 -14 -12 -11 -8 -7 -7 -10 -12 -12 -9 -7 -8 -8 -8 -9 -10 -11 -11 -10 -10 -12 -12 -12 -10 -7 -7 -9 -11 -11 -10 -10 -10 -10 -9 -10 -13 -15 -15 -13 -9 -6 -5 -6 -8 -10 -10 -9 -9 -10 -11 -13 -14 -14 -11 -9 -9 -12 -17 -22 -24 -22 -17 -16 -17 -17 -17 -16 -14 -12 -10 -10 -10 -12 -14 -16 -16 -18 -20 -21 -19 -16 -13 -13 -15 -18 -20 -22 -23 -22 -20 -20 -21 -23 -23 -21 -20 -20 -21 -22 -22 -21 -19 -18 -18 -19 -21 -24 -25 -23 -20 -15 -13 -13 -18 -23 -27 -27 -26 -26 -27 -27 -27 -24 -22 -20 -17 -15 -18 -24 -33 -40 -37 -34 -31 -29 -29 -31 -30 -31 -33 -33 -29 -28 -30 -31 -30 -29 -29 -28 -28 -29 -33 -35 -34 -32 -32 -32 -32 -32 -31 -29 -29 -30 -31 -30 -30 -29 -27 -26 -26 -25 -23 -22 -21 -21 -22 -22 -23 -23 -22 -21 -22 -21 -21 -21 -22 -22 -21 -19 -19 -19 -19 -21 -22 -25 -29 -30 -28 -27 -28 -27 -26 -29 -31 -29 -26 -24 -20 -17 -21 -24 -25 -26 -26 -24 -23 -22 -23 -23 -25 -26 -25 -22 -22 -23 -22 -22 -5 -6 -7 -7 -6 -6 -5 -4 -3 -3 -3 -4 -4 -4 -5 -5 -5 -5 -5 -6 -8 -9 -9 -7 -5 -5 -5 -5 -3 -1 -0 -0 -0 -0 -0 -1 -1 -1 -1 -1 -1 -1 -3 -5 -7 -8 -8 -8 -6 -4 -3 -3 -4 -5 -6 -6 -5 -5 -5 -6 -7 -7 -6 -6 -5 -4 -4 -5 -6 -6 -4 -3 -2 -3 -5 -8 -10 -11 -11 -9 -4 -1 1 1 0 1 3 3 2 -0 -1 -0 2 6 7 5 3 1 -0 -2 -5 -8 -10 -9 -7 -5 -4 -7 -11 -14 -16 -18 -20 -19 -16 -9 -1 1 -3 -9 -14 -14 -11 -9 -9 -11 -12 -11 -10 -9 -9 -10 -11 -11 -12 -13 -14 -14 -14 -15 -17 -16 -13 -7 -5 -7 -8 -8 -5 -2 -2 -5 -8 -10 -10 -13 -17 -21 -24 -20 -13 -8 -8 -15 -20 -19 -14 -7 -7 -10 -13 -14 -12 -10 -10 -12 -14 -15 -19 -22 -24 -24 -22 -20 -17 -14 -12 -12 -11 -9 -7 -9 -11 -12 -9 -6 -4 -5 -7 -8 -9 -10 -10 -9 -9 -12 -15 -16 -16 -12 -8 -6 -7 -7 -9 -11 -12 -11 -9 -9 -11 -14 -16 -15 -12 -10 -8 -7 -9 -10 -11 -11 -11 -11 -12 -13 -14 -14 -12 -10 -9 -11 -17 -21 -22 -20 -15 -15 -17 -18 -18 -16 -15 -13 -11 -10 -11 -12 -14 -16 -16 -17 -18 -19 -18 -16 -13 -13 -14 -16 -18 -20 -21 -22 -21 -21 -22 -23 -23 -23 -21 -20 -20 -22 -22 -20 -18 -16 -14 -16 -20 -24 -26 -25 -22 -19 -15 -11 -15 -20 -24 -26 -26 -26 -28 -28 -28 -26 -24 -21 -18 -15 -17 -22 -30 -38 -36 -32 -29 -27 -27 -29 -27 -27 -31 -34 -31 -28 -27 -27 -26 -30 -31 -29 -27 -31 -34 -35 -34 -33 -32 -33 -33 -32 -31 -30 -29 -29 -30 -30 -30 -29 -27 -26 -25 -25 -24 -22 -21 -21 -20 -21 -22 -23 -22 -21 -21 -21 -20 -20 -21 -21 -20 -19 -18 -18 -19 -20 -21 -23 -26 -28 -27 -27 -28 -28 -26 -28 -30 -30 -27 -25 -21 -17 -20 -23 -25 -27 -28 -25 -23 -23 -23 -21 -23 -25 -24 -22 -22 -23 -23 -23 -5 -7 -7 -7 -6 -5 -4 -3 -2 -2 -3 -4 -5 -5 -5 -5 -5 -5 -5 -6 -8 -8 -8 -6 -5 -5 -5 -6 -3 -1 -1 -1 -1 -1 -1 -1 -2 -1 -1 -1 -1 -2 -3 -5 -5 -5 -4 -5 -5 -5 -4 -5 -6 -6 -6 -6 -6 -5 -5 -5 -6 -7 -7 -6 -5 -3 -3 -4 -5 -6 -5 -5 -4 -3 -4 -6 -9 -11 -12 -10 -5 -0 2 2 0 0 2 3 2 1 -0 -1 0 3 5 6 5 2 1 -0 -3 -6 -9 -10 -8 -6 -5 -7 -11 -15 -17 -18 -19 -19 -18 -15 -8 -2 -1 -6 -12 -14 -12 -9 -7 -8 -10 -11 -11 -11 -11 -11 -11 -11 -11 -13 -14 -14 -14 -15 -17 -18 -16 -10 -3 -3 -6 -8 -8 -4 -2 -3 -6 -8 -10 -12 -14 -19 -23 -23 -18 -11 -5 -10 -17 -21 -19 -11 -7 -8 -11 -14 -13 -11 -10 -11 -13 -15 -18 -21 -23 -24 -24 -22 -19 -15 -14 -14 -14 -13 -11 -10 -10 -11 -11 -8 -5 -4 -5 -7 -8 -9 -9 -9 -8 -11 -15 -18 -20 -19 -14 -8 -4 -4 -8 -13 -14 -12 -10 -9 -11 -14 -17 -18 -16 -14 -11 -10 -11 -11 -11 -10 -10 -10 -11 -12 -13 -12 -11 -10 -9 -10 -15 -20 -21 -18 -14 -15 -16 -18 -18 -17 -15 -13 -11 -9 -10 -11 -13 -15 -17 -17 -17 -18 -18 -17 -15 -14 -14 -16 -17 -18 -20 -22 -21 -21 -22 -23 -24 -24 -22 -21 -20 -21 -22 -20 -17 -14 -13 -14 -17 -21 -24 -25 -24 -22 -17 -11 -13 -16 -21 -24 -27 -28 -29 -30 -31 -28 -26 -23 -21 -19 -20 -23 -28 -36 -35 -32 -29 -27 -26 -26 -24 -23 -27 -33 -32 -30 -28 -26 -26 -29 -31 -29 -29 -32 -34 -34 -33 -33 -32 -32 -32 -32 -31 -30 -28 -28 -30 -30 -30 -28 -27 -26 -25 -25 -25 -24 -23 -21 -20 -20 -21 -22 -22 -21 -21 -21 -21 -21 -21 -21 -20 -19 -18 -18 -19 -20 -21 -22 -24 -27 -26 -26 -27 -28 -27 -28 -30 -30 -29 -27 -23 -17 -20 -23 -26 -27 -27 -25 -24 -24 -23 -21 -23 -24 -24 -21 -22 -23 -24 -25 -6 -6 -6 -6 -5 -4 -3 -1 -1 -1 -2 -4 -5 -5 -5 -5 -5 -5 -5 -7 -8 -8 -7 -6 -5 -4 -3 -2 -2 -1 -1 -2 -2 -2 -3 -3 -3 -2 -2 -2 -3 -4 -5 -4 -4 -3 -2 -4 -6 -6 -6 -5 -6 -6 -6 -6 -6 -6 -6 -5 -5 -6 -6 -6 -5 -4 -3 -3 -3 -4 -5 -5 -5 -4 -3 -4 -7 -10 -12 -11 -5 0 4 4 1 0 0 1 1 1 1 -0 -1 1 3 5 6 5 2 1 -0 -3 -7 -8 -8 -8 -7 -7 -10 -14 -17 -18 -19 -19 -18 -17 -14 -8 -4 -4 -8 -11 -11 -10 -8 -7 -8 -9 -11 -12 -12 -11 -11 -11 -12 -13 -14 -13 -13 -14 -17 -19 -19 -15 -6 -1 -2 -6 -9 -6 -4 -3 -4 -7 -10 -11 -13 -16 -21 -24 -22 -15 -6 -5 -12 -19 -22 -17 -9 -7 -9 -13 -14 -12 -11 -10 -11 -14 -17 -20 -23 -24 -24 -23 -21 -17 -15 -15 -16 -16 -14 -12 -10 -10 -10 -9 -6 -5 -5 -6 -7 -9 -10 -10 -9 -10 -12 -17 -21 -23 -20 -15 -9 -6 -9 -13 -15 -14 -12 -12 -13 -15 -18 -19 -18 -16 -13 -11 -12 -11 -10 -9 -9 -10 -11 -12 -12 -13 -12 -11 -10 -10 -14 -18 -19 -17 -14 -15 -16 -17 -17 -17 -16 -14 -11 -9 -9 -10 -12 -15 -16 -16 -17 -17 -18 -18 -16 -15 -14 -14 -15 -17 -19 -21 -20 -21 -22 -23 -24 -25 -23 -22 -20 -20 -20 -19 -17 -15 -14 -14 -16 -19 -22 -23 -24 -22 -19 -13 -12 -14 -17 -22 -26 -28 -29 -30 -32 -30 -29 -28 -25 -25 -26 -27 -29 -36 -36 -33 -30 -26 -25 -25 -22 -20 -23 -30 -32 -32 -29 -28 -28 -29 -30 -29 -29 -31 -32 -32 -33 -32 -32 -31 -31 -31 -31 -29 -28 -28 -30 -30 -30 -29 -27 -25 -26 -26 -26 -25 -24 -23 -22 -21 -20 -21 -21 -22 -22 -22 -21 -21 -21 -21 -21 -20 -19 -19 -19 -20 -21 -22 -24 -25 -26 -25 -25 -27 -27 -28 -30 -30 -29 -29 -26 -19 -20 -24 -27 -27 -26 -25 -25 -24 -23 -22 -23 -24 -23 -21 -21 -23 -24 -24 -7 -6 -5 -5 -5 -4 -2 -0 0 -0 -2 -4 -4 -5 -4 -3 -3 -3 -3 -6 -8 -8 -7 -5 -4 -2 -1 -1 -2 -2 -1 -1 -1 -3 -3 -3 -3 -3 -3 -3 -4 -6 -6 -5 -4 -3 -4 -5 -6 -6 -5 -5 -5 -6 -6 -6 -6 -7 -6 -6 -6 -6 -6 -5 -5 -4 -3 -2 -1 -2 -3 -5 -5 -5 -3 -3 -4 -7 -11 -12 -8 -1 4 6 3 1 -0 -0 0 1 1 0 -0 -1 0 2 5 6 5 3 2 -0 -4 -6 -7 -8 -9 -8 -9 -12 -16 -19 -19 -19 -19 -18 -17 -14 -10 -6 -4 -7 -9 -9 -9 -7 -7 -8 -10 -12 -12 -11 -10 -10 -12 -14 -15 -14 -12 -12 -15 -18 -20 -19 -12 -3 1 -0 -5 -7 -6 -4 -3 -5 -7 -9 -10 -13 -19 -23 -23 -20 -11 -6 -8 -14 -21 -21 -13 -7 -6 -9 -13 -13 -12 -10 -9 -12 -16 -19 -22 -23 -24 -23 -22 -20 -18 -16 -15 -15 -15 -14 -12 -10 -9 -9 -8 -7 -6 -6 -7 -8 -9 -10 -10 -10 -12 -15 -21 -24 -24 -22 -16 -10 -9 -11 -13 -14 -14 -14 -15 -15 -17 -18 -17 -15 -13 -11 -12 -12 -10 -9 -10 -11 -11 -11 -12 -14 -15 -14 -11 -9 -12 -16 -19 -18 -15 -15 -16 -17 -18 -19 -18 -15 -13 -11 -10 -10 -11 -13 -14 -14 -15 -17 -19 -19 -17 -15 -13 -13 -14 -16 -18 -20 -20 -20 -22 -23 -24 -25 -24 -22 -20 -18 -18 -18 -17 -16 -15 -15 -16 -18 -21 -22 -22 -22 -22 -16 -12 -12 -15 -19 -21 -24 -27 -30 -33 -33 -33 -32 -30 -30 -30 -31 -32 -36 -37 -34 -29 -24 -22 -22 -21 -19 -19 -26 -30 -32 -31 -31 -31 -31 -30 -30 -31 -31 -31 -31 -32 -31 -30 -30 -30 -31 -31 -29 -28 -28 -31 -32 -31 -30 -28 -26 -26 -26 -27 -26 -25 -24 -23 -22 -20 -20 -21 -22 -23 -23 -22 -22 -21 -20 -20 -20 -19 -20 -20 -20 -21 -24 -24 -24 -25 -25 -24 -26 -26 -27 -29 -30 -30 -29 -27 -21 -21 -26 -29 -30 -27 -26 -26 -25 -23 -22 -23 -24 -24 -22 -22 -22 -23 -23 -6 -6 -6 -6 -5 -4 -1 0 0 -1 -3 -4 -5 -5 -4 -3 -3 -3 -4 -6 -6 -5 -4 -3 -2 -1 -1 -2 -2 -1 -0 0 -1 -1 -2 -2 -2 -2 -3 -4 -5 -6 -6 -5 -5 -5 -6 -6 -5 -4 -4 -4 -4 -5 -5 -5 -6 -6 -7 -7 -7 -7 -7 -6 -4 -3 -2 -1 -1 -1 -2 -3 -4 -5 -3 -2 -2 -5 -9 -13 -11 -5 2 7 5 2 0 -0 0 0 0 0 -0 -1 -2 -1 2 6 6 6 5 4 0 -3 -6 -8 -10 -9 -8 -9 -13 -17 -19 -19 -19 -18 -18 -18 -16 -12 -6 -3 -5 -7 -9 -8 -7 -7 -9 -11 -12 -11 -10 -10 -11 -14 -15 -15 -12 -11 -13 -16 -19 -20 -17 -9 -1 3 1 -4 -6 -6 -4 -3 -5 -7 -8 -11 -16 -20 -23 -22 -17 -9 -8 -11 -18 -22 -18 -11 -5 -4 -9 -13 -13 -10 -8 -10 -13 -16 -19 -22 -23 -23 -23 -23 -21 -18 -15 -14 -15 -15 -13 -11 -9 -9 -9 -9 -9 -7 -6 -7 -8 -9 -10 -11 -13 -16 -20 -23 -25 -25 -22 -15 -9 -8 -10 -13 -17 -17 -15 -13 -13 -14 -14 -13 -11 -11 -12 -12 -12 -11 -11 -10 -9 -9 -11 -14 -16 -15 -12 -8 -9 -12 -16 -18 -15 -14 -15 -16 -18 -19 -18 -17 -15 -13 -12 -11 -10 -9 -12 -13 -15 -16 -19 -21 -19 -15 -11 -11 -13 -16 -19 -19 -20 -21 -21 -22 -24 -25 -24 -23 -20 -19 -19 -19 -18 -17 -16 -16 -16 -18 -21 -22 -22 -22 -23 -18 -14 -12 -14 -19 -20 -21 -26 -32 -36 -36 -36 -35 -33 -32 -31 -31 -32 -34 -36 -33 -27 -23 -20 -20 -20 -19 -18 -23 -28 -31 -32 -34 -34 -33 -32 -31 -33 -32 -31 -31 -32 -31 -30 -30 -30 -31 -31 -30 -29 -29 -32 -33 -33 -32 -30 -29 -27 -26 -27 -27 -26 -24 -23 -23 -21 -21 -22 -23 -24 -24 -23 -22 -21 -20 -20 -20 -20 -20 -20 -19 -19 -23 -23 -24 -25 -25 -23 -24 -25 -25 -27 -30 -30 -29 -27 -22 -22 -25 -30 -33 -30 -28 -27 -25 -23 -22 -23 -24 -26 -24 -23 -22 -22 -21 -6 -7 -8 -7 -6 -3 -1 -1 -2 -4 -5 -5 -5 -5 -5 -5 -6 -6 -5 -3 -2 -2 -2 -2 -1 -1 -2 -3 -2 -1 -0 -0 -1 -0 -0 0 0 -1 -2 -4 -5 -5 -5 -5 -6 -7 -8 -7 -5 -4 -3 -3 -4 -4 -4 -4 -5 -6 -7 -8 -9 -9 -9 -7 -5 -3 -1 -1 -1 -1 -1 -1 -2 -3 -4 -2 -1 -3 -7 -12 -13 -9 -2 5 6 4 2 1 1 0 -1 -1 0 -1 -3 -4 -3 1 5 7 8 8 6 1 -3 -7 -9 -8 -7 -7 -9 -13 -16 -17 -17 -18 -19 -19 -19 -18 -13 -6 -3 -3 -7 -10 -8 -7 -7 -9 -11 -12 -11 -10 -9 -12 -15 -16 -14 -11 -10 -12 -15 -19 -20 -16 -8 1 5 0 -4 -6 -5 -3 -3 -5 -7 -10 -14 -17 -20 -21 -19 -14 -9 -9 -14 -21 -21 -16 -9 -4 -7 -11 -13 -13 -10 -8 -9 -12 -16 -20 -22 -23 -23 -23 -23 -20 -17 -14 -13 -13 -13 -12 -10 -9 -9 -9 -10 -9 -7 -7 -7 -9 -11 -12 -13 -13 -15 -18 -23 -26 -26 -21 -11 -6 -6 -12 -16 -16 -13 -10 -10 -12 -13 -12 -11 -10 -10 -11 -12 -12 -11 -9 -8 -8 -10 -13 -16 -16 -14 -8 -6 -8 -14 -18 -16 -14 -14 -15 -18 -18 -18 -17 -17 -15 -13 -10 -8 -7 -11 -14 -16 -18 -21 -22 -21 -17 -12 -11 -14 -17 -19 -20 -20 -20 -21 -22 -24 -25 -25 -24 -23 -21 -20 -19 -18 -17 -17 -17 -17 -18 -20 -21 -21 -22 -23 -19 -14 -10 -11 -19 -20 -23 -29 -37 -39 -38 -37 -36 -35 -33 -30 -27 -26 -29 -32 -31 -27 -23 -21 -20 -19 -19 -19 -22 -27 -32 -33 -34 -35 -34 -33 -32 -34 -33 -31 -32 -32 -31 -30 -30 -30 -31 -31 -30 -30 -29 -32 -33 -34 -33 -32 -31 -29 -27 -28 -27 -26 -24 -24 -24 -23 -23 -24 -24 -25 -24 -23 -22 -21 -20 -20 -20 -20 -20 -19 -19 -18 -22 -23 -24 -25 -25 -23 -23 -23 -23 -24 -28 -29 -28 -26 -24 -23 -25 -29 -33 -33 -30 -28 -25 -24 -23 -24 -25 -27 -25 -24 -23 -22 -21 -8 -8 -8 -6 -3 -1 -2 -5 -7 -8 -7 -7 -6 -5 -6 -9 -9 -8 -3 1 -0 -2 -3 -2 -1 -2 -3 -3 -1 -1 -1 -2 -2 -1 -0 0 1 -0 -2 -3 -4 -4 -4 -5 -6 -7 -7 -7 -6 -5 -4 -4 -4 -4 -4 -4 -4 -4 -5 -7 -8 -10 -10 -10 -7 -3 -1 -0 -1 -1 -1 -0 -0 -1 -3 -3 -2 -1 -4 -9 -12 -11 -7 1 4 3 3 3 4 3 1 -1 -1 -1 -2 -5 -7 -6 -2 3 7 11 12 8 3 -3 -6 -7 -6 -6 -6 -8 -11 -14 -15 -16 -17 -19 -20 -21 -19 -12 -4 -1 -3 -9 -10 -8 -7 -7 -10 -12 -12 -11 -9 -10 -13 -15 -16 -14 -10 -9 -11 -16 -20 -20 -15 -7 2 4 0 -4 -6 -4 -3 -3 -6 -9 -11 -14 -17 -19 -20 -17 -12 -9 -10 -16 -19 -18 -13 -8 -7 -9 -12 -15 -13 -10 -8 -9 -11 -15 -18 -20 -21 -22 -23 -22 -19 -15 -10 -9 -9 -10 -11 -9 -8 -9 -10 -10 -9 -8 -8 -10 -12 -14 -13 -11 -10 -15 -21 -26 -29 -26 -16 -8 -4 -9 -13 -14 -12 -10 -10 -12 -13 -14 -13 -10 -8 -8 -8 -9 -9 -9 -8 -9 -10 -12 -15 -17 -16 -10 -6 -7 -13 -19 -18 -15 -14 -14 -16 -17 -17 -17 -17 -16 -15 -12 -10 -9 -12 -15 -17 -19 -22 -24 -23 -19 -14 -14 -15 -18 -20 -21 -21 -21 -21 -21 -22 -24 -25 -25 -24 -22 -19 -17 -17 -18 -18 -18 -18 -19 -20 -21 -21 -22 -23 -21 -16 -11 -9 -18 -21 -25 -30 -36 -38 -37 -37 -36 -35 -31 -26 -21 -18 -22 -26 -29 -27 -23 -21 -20 -19 -20 -20 -21 -25 -31 -32 -33 -34 -34 -34 -33 -34 -34 -32 -32 -32 -31 -30 -31 -31 -31 -31 -31 -30 -30 -31 -33 -34 -33 -33 -32 -31 -29 -28 -27 -26 -24 -25 -24 -24 -23 -23 -24 -25 -24 -23 -22 -21 -21 -21 -21 -20 -20 -20 -19 -18 -21 -22 -24 -25 -25 -23 -23 -22 -21 -23 -26 -28 -28 -28 -25 -22 -23 -26 -29 -31 -30 -28 -25 -24 -24 -25 -26 -27 -26 -25 -24 -23 -21 -9 -7 -4 -1 -0 -3 -6 -9 -10 -10 -9 -7 -6 -6 -8 -11 -9 -4 3 2 -3 -5 -4 -2 -2 -3 -3 -2 -0 -1 -2 -3 -3 -2 -1 -1 -0 -1 -2 -3 -3 -3 -3 -4 -5 -6 -6 -6 -6 -5 -5 -5 -4 -4 -4 -4 -4 -4 -5 -5 -6 -8 -9 -10 -9 -6 -3 -1 -1 -2 -1 -0 0 0 -1 -2 -2 -1 -2 -5 -9 -11 -10 -4 1 3 3 3 5 6 5 2 -1 -1 -2 -5 -8 -11 -10 -5 1 7 12 12 8 3 -3 -5 -5 -5 -5 -5 -7 -10 -12 -14 -14 -15 -16 -19 -21 -18 -10 -4 -1 -5 -8 -9 -8 -6 -7 -10 -13 -13 -10 -9 -10 -13 -16 -17 -13 -9 -7 -10 -16 -20 -20 -15 -5 3 5 1 -4 -5 -3 -3 -4 -6 -9 -12 -15 -17 -18 -18 -15 -11 -8 -11 -15 -18 -17 -13 -9 -9 -11 -15 -16 -14 -12 -11 -11 -12 -14 -16 -18 -19 -21 -22 -22 -18 -12 -9 -8 -9 -9 -8 -7 -7 -8 -10 -10 -10 -12 -13 -15 -16 -14 -11 -10 -13 -19 -25 -29 -28 -21 -12 -5 -7 -12 -14 -13 -12 -10 -11 -13 -14 -15 -12 -9 -7 -6 -8 -10 -10 -10 -9 -9 -10 -13 -16 -18 -14 -9 -9 -13 -20 -18 -16 -14 -14 -15 -16 -16 -17 -17 -17 -16 -14 -11 -9 -10 -13 -16 -19 -23 -25 -26 -23 -18 -16 -16 -17 -20 -22 -22 -22 -22 -21 -21 -22 -23 -24 -23 -21 -18 -17 -17 -20 -21 -21 -20 -20 -21 -21 -21 -22 -24 -24 -20 -14 -9 -17 -22 -26 -28 -31 -34 -36 -37 -37 -35 -29 -22 -17 -15 -18 -23 -27 -28 -24 -22 -21 -20 -20 -21 -21 -24 -29 -31 -32 -32 -33 -34 -33 -35 -35 -33 -31 -31 -30 -30 -31 -31 -31 -31 -31 -31 -31 -31 -32 -33 -33 -33 -32 -32 -31 -29 -28 -26 -25 -25 -25 -24 -24 -23 -24 -24 -24 -24 -23 -22 -22 -22 -22 -21 -21 -21 -20 -19 -20 -22 -23 -24 -24 -23 -22 -22 -20 -21 -23 -26 -28 -28 -24 -20 -19 -22 -26 -28 -28 -27 -26 -25 -25 -25 -26 -27 -27 -26 -26 -24 -22 -5 -1 1 1 -3 -8 -10 -10 -10 -10 -8 -6 -5 -7 -10 -9 -3 3 5 -2 -5 -5 -3 -2 -4 -4 -2 -0 0 -2 -3 -4 -3 -2 -1 -1 -1 -2 -3 -4 -4 -3 -3 -3 -4 -5 -5 -4 -4 -4 -4 -4 -4 -4 -4 -5 -5 -6 -6 -5 -5 -6 -7 -8 -8 -7 -5 -3 -2 -2 -1 -1 -0 0 0 -1 -2 -2 -1 -2 -5 -9 -11 -9 -2 3 4 3 3 6 7 6 3 1 -1 -4 -8 -12 -14 -12 -7 -1 6 9 9 7 2 -2 -4 -4 -4 -4 -6 -8 -10 -12 -13 -12 -12 -14 -18 -19 -16 -10 -4 -3 -7 -10 -10 -7 -6 -9 -12 -13 -12 -9 -8 -10 -13 -17 -16 -11 -6 -5 -10 -16 -20 -20 -14 -3 5 6 1 -4 -5 -4 -3 -4 -6 -10 -13 -15 -16 -17 -17 -14 -10 -9 -12 -16 -19 -17 -12 -10 -10 -14 -18 -18 -16 -15 -14 -13 -13 -14 -14 -16 -19 -21 -23 -22 -17 -11 -7 -6 -8 -8 -7 -7 -8 -10 -12 -13 -15 -17 -18 -18 -16 -12 -9 -10 -15 -22 -28 -29 -25 -17 -9 -7 -11 -13 -14 -12 -9 -9 -10 -13 -16 -15 -12 -7 -4 -6 -9 -11 -11 -11 -10 -10 -12 -15 -19 -18 -13 -10 -12 -18 -17 -16 -14 -15 -14 -15 -16 -16 -17 -17 -16 -15 -13 -10 -10 -11 -14 -18 -22 -26 -27 -26 -21 -17 -15 -16 -20 -22 -23 -23 -23 -22 -22 -22 -22 -23 -22 -20 -18 -17 -18 -22 -23 -23 -21 -22 -23 -23 -22 -22 -25 -25 -23 -18 -12 -15 -21 -24 -24 -23 -27 -33 -37 -37 -35 -30 -24 -18 -14 -15 -20 -26 -29 -24 -23 -22 -22 -21 -21 -22 -24 -28 -31 -32 -31 -31 -33 -33 -36 -37 -34 -31 -30 -30 -30 -31 -31 -31 -31 -32 -31 -31 -31 -32 -33 -33 -32 -32 -32 -31 -31 -30 -28 -26 -25 -25 -24 -24 -24 -24 -24 -24 -25 -25 -23 -22 -23 -23 -23 -22 -21 -20 -18 -19 -21 -23 -24 -25 -23 -21 -21 -19 -19 -21 -24 -27 -27 -23 -19 -17 -20 -24 -28 -29 -28 -27 -27 -26 -26 -27 -28 -28 -28 -29 -26 -24 2 4 1 -3 -8 -9 -8 -8 -9 -9 -5 -4 -6 -9 -9 -3 4 7 3 -3 -4 -4 -3 -4 -5 -4 -2 -0 -1 -2 -3 -4 -3 -1 -1 -1 -2 -3 -4 -4 -4 -4 -3 -4 -4 -5 -4 -3 -3 -3 -3 -3 -3 -3 -4 -5 -6 -6 -6 -6 -5 -5 -5 -6 -7 -7 -6 -5 -4 -2 -1 -1 -1 -0 1 0 -1 -2 -1 -0 -2 -5 -9 -10 -5 0 4 4 2 4 7 9 8 4 1 -2 -6 -11 -14 -14 -12 -8 -3 1 5 7 5 2 -0 -2 -3 -3 -5 -7 -9 -11 -12 -10 -10 -10 -14 -17 -17 -14 -8 -4 -5 -7 -9 -8 -6 -8 -10 -13 -13 -10 -7 -7 -9 -14 -16 -15 -11 -7 -7 -11 -16 -19 -20 -12 -3 5 5 -1 -4 -4 -3 -1 -3 -7 -11 -14 -15 -16 -18 -17 -14 -10 -10 -13 -18 -19 -16 -12 -10 -12 -16 -18 -18 -18 -17 -17 -16 -14 -13 -13 -15 -18 -21 -22 -20 -14 -9 -6 -7 -8 -8 -7 -8 -11 -12 -13 -13 -15 -17 -19 -17 -12 -8 -9 -13 -18 -25 -30 -29 -23 -15 -9 -9 -11 -13 -12 -8 -7 -8 -11 -15 -16 -13 -8 -4 -4 -8 -11 -13 -13 -10 -8 -8 -12 -19 -20 -16 -10 -9 -15 -16 -16 -14 -14 -15 -16 -17 -17 -17 -17 -17 -16 -14 -12 -10 -10 -12 -15 -20 -25 -28 -29 -24 -18 -15 -15 -19 -21 -21 -22 -23 -23 -23 -22 -22 -21 -21 -19 -18 -18 -19 -22 -23 -23 -23 -23 -24 -24 -24 -23 -25 -26 -26 -23 -17 -15 -18 -22 -22 -20 -21 -26 -33 -36 -34 -29 -24 -20 -15 -16 -21 -26 -29 -26 -24 -24 -23 -22 -22 -23 -24 -28 -32 -32 -32 -32 -32 -33 -34 -35 -33 -31 -30 -29 -30 -31 -32 -31 -31 -32 -32 -31 -31 -31 -32 -32 -32 -31 -31 -31 -32 -32 -30 -28 -26 -24 -24 -24 -25 -25 -24 -24 -24 -24 -23 -22 -22 -24 -24 -23 -21 -19 -18 -19 -20 -23 -25 -27 -25 -22 -21 -19 -18 -20 -22 -25 -25 -22 -19 -17 -20 -25 -29 -30 -30 -30 -29 -28 -27 -28 -29 -29 -29 -31 -29 -27 4 1 -3 -7 -8 -6 -5 -7 -7 -5 -2 -5 -8 -8 -4 3 6 5 1 -3 -3 -4 -4 -4 -5 -4 -3 -2 -3 -4 -5 -4 -3 -1 -0 -1 -2 -3 -3 -3 -4 -4 -4 -5 -5 -4 -3 -2 -2 -3 -3 -3 -2 -2 -3 -4 -5 -6 -6 -6 -6 -5 -5 -4 -5 -5 -6 -6 -5 -3 -2 -1 -1 -1 -0 -0 -1 -2 -2 -1 0 -1 -5 -9 -8 -4 1 4 2 1 3 7 10 9 5 1 -4 -8 -11 -12 -12 -10 -9 -6 -3 1 3 4 3 1 -0 -2 -4 -7 -9 -11 -11 -9 -8 -9 -11 -14 -16 -16 -12 -7 -4 -6 -8 -9 -8 -7 -9 -11 -13 -12 -9 -6 -5 -10 -14 -16 -15 -11 -8 -8 -11 -16 -20 -18 -10 -1 6 3 -1 -3 -3 -2 -2 -5 -9 -13 -13 -15 -16 -18 -16 -12 -11 -11 -15 -19 -19 -15 -11 -8 -11 -14 -17 -18 -18 -18 -18 -17 -14 -12 -12 -15 -18 -21 -21 -17 -13 -9 -8 -9 -8 -8 -7 -9 -11 -12 -13 -13 -15 -17 -17 -14 -11 -10 -11 -15 -22 -29 -30 -27 -20 -10 -6 -7 -9 -10 -7 -6 -6 -9 -12 -14 -13 -11 -8 -6 -8 -11 -14 -15 -11 -6 -4 -7 -14 -17 -15 -11 -9 -11 -13 -14 -14 -13 -15 -16 -18 -18 -19 -19 -18 -16 -15 -14 -12 -11 -11 -13 -18 -24 -29 -31 -27 -21 -17 -14 -15 -16 -17 -18 -20 -22 -22 -22 -21 -20 -19 -19 -18 -18 -19 -22 -23 -23 -23 -23 -24 -24 -24 -24 -26 -27 -27 -27 -23 -17 -15 -18 -23 -22 -20 -20 -26 -32 -32 -28 -24 -22 -18 -18 -21 -26 -29 -27 -26 -25 -24 -23 -24 -24 -24 -27 -31 -33 -33 -32 -31 -33 -33 -33 -31 -30 -30 -30 -29 -31 -32 -31 -31 -33 -32 -31 -31 -31 -31 -31 -31 -31 -31 -31 -32 -32 -31 -30 -28 -25 -24 -25 -26 -25 -25 -24 -23 -24 -23 -22 -22 -24 -24 -24 -22 -20 -19 -19 -20 -23 -25 -28 -27 -24 -22 -19 -18 -19 -22 -24 -23 -22 -20 -17 -20 -25 -28 -29 -32 -32 -31 -29 -28 -28 -29 -29 -30 -32 -31 -29 0 -5 -7 -8 -6 -4 -6 -5 -3 -0 -4 -6 -6 -3 1 3 4 3 -0 -2 -2 -3 -3 -4 -4 -4 -4 -4 -5 -6 -6 -5 -4 -2 -1 -2 -2 -3 -3 -3 -3 -3 -4 -5 -5 -4 -3 -2 -2 -2 -3 -2 -2 -2 -3 -3 -4 -5 -5 -6 -6 -6 -5 -4 -3 -3 -4 -5 -5 -5 -3 -1 -0 -1 -1 -1 -2 -2 -3 -2 0 1 -1 -5 -8 -7 -3 2 3 0 -0 2 8 11 10 6 1 -5 -8 -10 -10 -10 -10 -10 -9 -7 -4 -0 2 3 3 1 -2 -5 -9 -10 -9 -8 -8 -8 -10 -12 -14 -15 -15 -11 -6 -5 -6 -9 -9 -8 -8 -10 -12 -13 -11 -8 -5 -6 -11 -15 -17 -14 -10 -8 -9 -13 -17 -19 -16 -9 1 5 4 1 -1 -1 -1 -3 -7 -11 -14 -16 -17 -17 -18 -16 -13 -11 -12 -16 -19 -18 -14 -8 -8 -11 -14 -16 -16 -18 -19 -20 -17 -13 -11 -12 -14 -18 -21 -20 -17 -14 -12 -9 -8 -7 -8 -8 -9 -10 -11 -11 -12 -14 -16 -16 -15 -12 -11 -13 -18 -25 -28 -28 -24 -16 -10 -7 -8 -10 -9 -7 -6 -7 -10 -12 -13 -14 -12 -9 -8 -10 -13 -15 -12 -7 -3 -4 -10 -15 -16 -14 -10 -9 -11 -13 -14 -13 -14 -15 -16 -18 -20 -20 -18 -16 -15 -15 -14 -12 -10 -11 -15 -22 -29 -32 -29 -24 -17 -11 -11 -13 -15 -18 -21 -22 -22 -22 -21 -20 -20 -20 -19 -18 -19 -21 -22 -23 -23 -23 -23 -23 -23 -24 -26 -27 -27 -28 -26 -20 -16 -16 -22 -24 -21 -19 -19 -27 -30 -29 -24 -23 -21 -20 -21 -24 -28 -28 -29 -28 -26 -25 -25 -26 -26 -28 -30 -32 -34 -33 -32 -33 -34 -33 -31 -29 -28 -29 -29 -29 -30 -31 -31 -33 -32 -31 -30 -30 -30 -30 -30 -30 -30 -30 -32 -32 -32 -31 -29 -27 -25 -27 -27 -26 -25 -24 -23 -24 -24 -23 -22 -23 -24 -24 -22 -21 -20 -19 -20 -23 -25 -28 -28 -26 -24 -20 -18 -18 -22 -24 -24 -22 -19 -16 -19 -23 -25 -27 -31 -31 -30 -29 -29 -29 -30 -30 -30 -31 -31 -29 -3 -7 -9 -8 -6 -6 -4 -1 -0 -2 -5 -4 -0 3 4 3 3 2 1 -0 -1 -2 -3 -5 -5 -5 -5 -6 -6 -6 -6 -5 -4 -2 -2 -2 -3 -3 -3 -3 -3 -3 -4 -4 -4 -4 -3 -2 -2 -2 -2 -2 -3 -3 -3 -3 -3 -3 -4 -4 -5 -6 -5 -4 -3 -2 -2 -3 -4 -5 -4 -2 -1 -0 -1 -1 -2 -3 -3 -2 -1 1 1 -1 -6 -8 -6 -1 4 2 -1 -2 1 8 11 10 6 1 -4 -7 -9 -8 -7 -8 -10 -12 -13 -9 -4 1 4 4 1 -3 -7 -10 -9 -7 -7 -8 -10 -11 -13 -14 -15 -14 -9 -6 -5 -8 -10 -10 -9 -9 -10 -12 -13 -11 -7 -5 -7 -12 -16 -17 -13 -9 -8 -9 -14 -18 -19 -16 -7 3 7 6 2 -0 -0 -1 -4 -9 -14 -16 -17 -17 -18 -18 -15 -13 -11 -14 -18 -19 -18 -12 -8 -7 -10 -13 -16 -18 -19 -20 -19 -15 -11 -9 -11 -15 -20 -22 -21 -19 -16 -10 -7 -7 -9 -9 -9 -8 -9 -9 -11 -12 -15 -18 -17 -15 -13 -13 -16 -22 -26 -27 -25 -20 -14 -10 -10 -11 -11 -9 -7 -7 -10 -12 -14 -15 -15 -11 -8 -7 -10 -15 -14 -11 -6 -4 -7 -13 -16 -16 -12 -9 -10 -13 -15 -14 -13 -12 -13 -15 -18 -18 -17 -16 -15 -15 -15 -13 -10 -9 -13 -19 -27 -31 -30 -25 -18 -9 -8 -10 -13 -17 -21 -24 -24 -23 -22 -22 -23 -23 -22 -19 -19 -20 -21 -21 -22 -22 -22 -22 -23 -25 -27 -27 -27 -28 -27 -22 -17 -14 -18 -21 -23 -23 -20 -26 -30 -30 -25 -24 -22 -20 -20 -22 -26 -29 -30 -30 -29 -28 -27 -27 -28 -29 -30 -32 -35 -34 -34 -35 -36 -35 -33 -30 -28 -28 -27 -28 -29 -31 -31 -32 -31 -30 -29 -29 -29 -29 -29 -29 -29 -29 -31 -32 -32 -31 -30 -28 -27 -27 -27 -27 -26 -25 -24 -25 -24 -23 -22 -23 -23 -23 -23 -21 -20 -20 -21 -24 -26 -27 -28 -27 -25 -20 -18 -19 -23 -25 -24 -22 -18 -14 -15 -18 -22 -25 -28 -29 -29 -29 -30 -31 -32 -32 -30 -29 -28 -28 -4 -8 -9 -8 -6 -3 -0 -0 -2 -4 -4 1 4 6 4 3 2 2 1 1 0 -1 -4 -6 -7 -6 -6 -6 -6 -6 -5 -4 -3 -2 -2 -3 -4 -4 -4 -4 -4 -3 -3 -3 -3 -3 -2 -2 -2 -2 -2 -2 -3 -4 -4 -3 -2 -2 -2 -3 -3 -4 -5 -5 -4 -3 -1 -1 -1 -2 -4 -3 -1 -0 0 -0 -1 -2 -2 -2 -1 -0 1 1 -3 -7 -9 -6 1 4 3 -1 -3 0 6 10 10 6 -0 -5 -8 -6 -4 -5 -8 -12 -18 -18 -13 -5 2 5 4 -1 -6 -9 -9 -8 -8 -9 -10 -11 -12 -13 -15 -17 -14 -9 -5 -5 -8 -9 -9 -7 -8 -10 -12 -13 -11 -7 -6 -8 -13 -17 -15 -11 -8 -7 -10 -15 -18 -19 -15 -3 6 9 6 1 -1 -2 -3 -6 -11 -14 -16 -16 -17 -18 -17 -15 -13 -13 -17 -20 -21 -18 -11 -7 -7 -10 -15 -18 -21 -21 -21 -17 -12 -8 -8 -13 -18 -22 -23 -22 -18 -13 -9 -8 -9 -10 -9 -9 -8 -9 -10 -11 -13 -17 -19 -18 -16 -14 -15 -19 -23 -25 -25 -23 -19 -15 -13 -11 -10 -9 -8 -8 -11 -13 -15 -16 -17 -13 -8 -6 -8 -13 -16 -16 -13 -7 -5 -9 -14 -16 -14 -10 -10 -11 -14 -14 -13 -12 -11 -14 -17 -18 -18 -16 -16 -17 -17 -15 -11 -9 -11 -16 -23 -28 -29 -25 -18 -10 -7 -8 -10 -15 -20 -24 -25 -25 -25 -25 -26 -26 -24 -21 -20 -19 -19 -20 -21 -21 -22 -22 -24 -26 -27 -28 -27 -28 -27 -24 -20 -14 -14 -16 -19 -23 -25 -29 -31 -30 -27 -25 -23 -21 -20 -21 -24 -28 -29 -29 -29 -30 -29 -28 -27 -28 -29 -32 -33 -34 -35 -36 -37 -36 -35 -32 -30 -28 -26 -26 -29 -31 -31 -32 -32 -31 -29 -28 -27 -27 -28 -28 -28 -28 -30 -31 -32 -31 -30 -30 -28 -28 -28 -28 -27 -25 -26 -26 -24 -22 -22 -22 -23 -24 -23 -22 -21 -20 -21 -25 -26 -26 -26 -26 -25 -21 -18 -19 -23 -25 -24 -22 -19 -15 -14 -16 -20 -24 -27 -29 -30 -30 -32 -32 -33 -33 -30 -27 -27 -28 -6 -8 -8 -6 -3 1 -0 -3 -4 -4 0 4 5 5 3 2 2 1 1 1 0 -1 -4 -6 -9 -9 -7 -6 -5 -5 -5 -4 -2 -2 -2 -3 -4 -5 -5 -5 -4 -3 -3 -3 -2 -2 -1 -1 -1 -1 -1 -2 -3 -3 -3 -3 -2 -1 -1 -1 -2 -2 -4 -5 -6 -6 -4 -1 0 0 -2 -2 -2 -0 1 1 0 -1 -2 -2 -2 -1 0 1 -1 -5 -8 -9 -4 3 6 5 -0 -2 0 5 9 9 4 -0 -4 -5 -4 -4 -6 -10 -15 -18 -16 -10 -3 3 4 0 -4 -7 -8 -8 -9 -10 -11 -11 -11 -11 -13 -16 -17 -14 -9 -3 -4 -6 -7 -7 -5 -6 -9 -13 -14 -11 -8 -7 -10 -15 -15 -11 -7 -6 -8 -12 -16 -19 -20 -11 -1 8 10 5 0 -2 -3 -5 -9 -12 -15 -16 -17 -18 -18 -17 -14 -14 -16 -19 -22 -22 -17 -11 -6 -5 -9 -15 -19 -21 -22 -19 -13 -8 -7 -11 -17 -21 -22 -21 -18 -14 -11 -10 -10 -11 -10 -10 -9 -9 -9 -10 -11 -15 -18 -19 -17 -15 -15 -17 -20 -22 -24 -23 -20 -16 -14 -11 -9 -7 -7 -7 -9 -11 -13 -14 -16 -14 -10 -7 -8 -11 -16 -19 -19 -11 -4 -5 -9 -14 -14 -11 -9 -10 -12 -14 -14 -12 -11 -14 -17 -18 -18 -17 -16 -17 -17 -16 -13 -10 -10 -13 -19 -25 -26 -23 -19 -12 -8 -7 -8 -13 -20 -25 -27 -28 -27 -28 -29 -28 -26 -24 -22 -20 -19 -19 -21 -22 -22 -22 -24 -26 -28 -29 -28 -28 -27 -26 -22 -14 -12 -13 -18 -24 -28 -29 -29 -29 -28 -26 -24 -22 -20 -20 -23 -26 -27 -27 -27 -31 -31 -29 -25 -25 -26 -28 -29 -32 -35 -37 -38 -37 -37 -35 -32 -29 -27 -26 -28 -30 -31 -31 -32 -32 -30 -28 -27 -27 -27 -28 -27 -27 -28 -30 -31 -31 -31 -31 -30 -28 -29 -29 -28 -26 -26 -25 -23 -21 -21 -22 -23 -24 -24 -23 -22 -22 -22 -25 -24 -25 -26 -25 -24 -22 -20 -20 -23 -24 -23 -22 -21 -17 -16 -17 -20 -23 -27 -31 -33 -33 -33 -31 -31 -32 -30 -26 -26 -28 -7 -8 -5 -2 1 0 -4 -5 -4 -1 3 4 3 2 2 2 1 1 0 -0 -0 -1 -2 -4 -7 -9 -9 -7 -5 -5 -4 -4 -3 -2 -3 -4 -5 -6 -6 -4 -3 -2 -2 -2 -1 -1 -1 -0 -1 -1 -2 -2 -2 -2 -2 -2 -2 -1 -1 -1 -1 -1 -2 -4 -6 -8 -7 -4 -1 0 -1 -2 -1 0 2 3 2 0 -1 -2 -2 -1 0 1 1 -2 -7 -11 -11 -4 4 7 5 0 -1 0 5 10 9 6 1 -3 -5 -5 -6 -8 -11 -13 -13 -10 -6 -3 -1 -1 -2 -4 -6 -8 -9 -10 -10 -11 -11 -10 -11 -13 -16 -17 -15 -11 -5 -3 -3 -4 -4 -4 -6 -10 -14 -14 -11 -9 -9 -13 -15 -13 -9 -5 -7 -10 -13 -17 -20 -17 -9 1 8 7 3 -0 -2 -4 -7 -10 -13 -15 -16 -17 -18 -17 -16 -14 -15 -18 -22 -25 -23 -17 -9 -2 -4 -10 -16 -22 -24 -21 -15 -9 -6 -8 -13 -16 -18 -18 -18 -16 -14 -12 -11 -9 -8 -9 -10 -10 -10 -9 -10 -13 -17 -19 -18 -16 -14 -15 -17 -20 -23 -22 -20 -18 -15 -12 -10 -7 -5 -4 -5 -8 -11 -14 -16 -15 -13 -10 -9 -10 -15 -20 -23 -18 -7 -2 -3 -9 -13 -12 -10 -9 -11 -14 -14 -12 -11 -14 -17 -18 -18 -18 -17 -17 -17 -17 -16 -14 -13 -13 -17 -20 -22 -22 -19 -15 -10 -8 -9 -14 -21 -26 -28 -28 -28 -29 -29 -28 -27 -26 -25 -23 -20 -19 -21 -22 -23 -23 -24 -26 -28 -29 -28 -28 -27 -26 -23 -16 -12 -13 -19 -26 -32 -33 -33 -32 -30 -27 -25 -23 -21 -20 -22 -25 -26 -27 -26 -30 -31 -29 -24 -22 -23 -24 -26 -29 -32 -35 -37 -38 -38 -37 -35 -31 -29 -27 -28 -29 -30 -30 -31 -32 -32 -31 -29 -27 -26 -27 -27 -27 -27 -29 -30 -31 -31 -31 -30 -29 -29 -29 -28 -26 -25 -24 -22 -21 -21 -21 -22 -23 -24 -24 -23 -23 -23 -25 -24 -24 -25 -25 -24 -24 -23 -22 -23 -23 -23 -22 -22 -19 -17 -17 -21 -24 -28 -32 -35 -36 -34 -31 -29 -31 -29 -26 -25 -27 -6 -5 -1 2 1 -4 -7 -5 -2 2 4 2 1 1 1 1 0 -1 -1 -1 -0 0 -1 -2 -5 -7 -7 -7 -5 -5 -4 -3 -3 -3 -3 -3 -4 -5 -4 -3 -2 -2 -1 -0 0 1 1 0 -1 -1 -2 -3 -2 -2 -1 -1 -1 -2 -2 -2 -1 -1 -2 -3 -5 -7 -7 -6 -4 -2 -2 -2 -1 0 2 4 3 2 0 -1 -2 -1 -0 1 1 -0 -4 -10 -14 -12 -5 2 6 4 -0 -2 -1 5 10 10 7 1 -3 -6 -8 -8 -8 -8 -8 -8 -9 -9 -7 -5 -2 -1 -3 -5 -8 -10 -11 -11 -11 -10 -9 -10 -12 -16 -19 -18 -12 -6 -3 -3 -4 -4 -4 -6 -11 -15 -14 -12 -10 -11 -14 -13 -9 -4 -3 -7 -11 -15 -18 -19 -15 -7 3 7 5 2 -1 -3 -5 -8 -11 -14 -16 -17 -17 -17 -16 -15 -15 -17 -21 -25 -26 -23 -16 -6 -2 -6 -13 -20 -25 -22 -17 -10 -5 -5 -9 -13 -15 -16 -17 -16 -15 -14 -12 -10 -9 -8 -9 -10 -10 -10 -10 -12 -16 -19 -19 -17 -14 -13 -15 -18 -21 -22 -21 -19 -16 -14 -12 -9 -5 -3 -3 -4 -7 -11 -15 -16 -15 -12 -11 -10 -13 -18 -22 -19 -8 -2 -1 -7 -12 -13 -12 -10 -10 -13 -14 -13 -12 -14 -17 -19 -19 -19 -17 -17 -18 -18 -17 -16 -15 -15 -14 -16 -19 -20 -19 -16 -12 -10 -11 -15 -21 -25 -26 -26 -27 -29 -29 -28 -27 -27 -26 -24 -21 -20 -21 -23 -23 -24 -25 -26 -27 -28 -28 -28 -27 -27 -24 -18 -14 -13 -17 -23 -32 -36 -37 -37 -34 -30 -27 -25 -22 -21 -22 -25 -27 -28 -27 -28 -30 -28 -24 -21 -20 -21 -23 -26 -29 -31 -33 -35 -36 -37 -37 -34 -31 -29 -28 -29 -29 -30 -31 -32 -32 -31 -29 -27 -26 -27 -27 -27 -27 -28 -29 -30 -30 -29 -29 -29 -28 -29 -28 -26 -25 -24 -22 -21 -21 -22 -22 -23 -24 -24 -23 -23 -22 -24 -25 -25 -25 -24 -24 -25 -25 -24 -24 -24 -24 -23 -23 -20 -17 -17 -20 -24 -29 -33 -35 -35 -33 -30 -28 -29 -28 -26 -25 -26 -4 0 3 1 -3 -7 -6 -2 2 3 1 -1 -1 0 1 -0 -1 -2 -2 -2 -1 -0 -0 -2 -3 -3 -4 -5 -5 -5 -4 -3 -2 -2 -3 -3 -3 -3 -2 -1 -1 -2 -1 1 2 2 2 1 -0 -2 -3 -3 -2 -1 -1 -1 -1 -1 -2 -2 -2 -2 -2 -3 -4 -5 -5 -5 -5 -4 -4 -4 -2 -0 3 4 4 3 1 -0 -1 -2 -1 1 1 1 -2 -6 -13 -16 -13 -7 1 5 2 -2 -5 -3 4 8 9 6 1 -4 -7 -9 -8 -6 -6 -7 -9 -11 -11 -9 -5 -2 -1 -3 -5 -8 -11 -12 -11 -10 -8 -7 -9 -13 -18 -22 -18 -11 -5 -2 -5 -6 -6 -5 -8 -13 -15 -14 -11 -11 -14 -15 -12 -6 -2 -4 -8 -13 -16 -18 -17 -13 -6 2 5 5 2 -0 -3 -5 -8 -12 -15 -17 -18 -18 -18 -17 -16 -17 -20 -24 -26 -27 -24 -15 -5 -3 -8 -16 -22 -23 -19 -13 -6 -4 -7 -11 -14 -15 -15 -15 -15 -15 -14 -12 -10 -9 -9 -9 -10 -11 -12 -13 -16 -19 -20 -18 -14 -13 -14 -16 -19 -21 -21 -19 -17 -15 -14 -11 -7 -4 -2 -1 -3 -8 -13 -15 -16 -15 -13 -11 -12 -15 -19 -19 -13 -5 -0 -2 -10 -15 -16 -12 -10 -12 -14 -14 -13 -14 -16 -18 -19 -19 -18 -18 -18 -19 -18 -18 -17 -15 -13 -14 -16 -19 -19 -16 -13 -12 -12 -13 -18 -21 -23 -24 -26 -27 -28 -27 -27 -27 -26 -24 -22 -21 -22 -23 -24 -25 -25 -25 -25 -27 -27 -27 -27 -27 -25 -22 -17 -14 -13 -18 -29 -35 -39 -39 -35 -32 -30 -28 -24 -22 -23 -26 -28 -28 -28 -28 -29 -28 -25 -22 -20 -20 -21 -23 -25 -28 -30 -32 -33 -34 -35 -35 -33 -30 -28 -28 -29 -31 -32 -33 -32 -30 -29 -28 -28 -28 -27 -26 -26 -28 -29 -29 -29 -28 -28 -27 -28 -28 -28 -26 -26 -25 -23 -21 -21 -22 -22 -22 -23 -23 -23 -21 -20 -24 -26 -27 -26 -24 -23 -23 -25 -25 -25 -25 -25 -24 -23 -21 -18 -17 -20 -24 -28 -33 -35 -33 -32 -30 -28 -28 -29 -27 -25 -25 -0 5 2 -3 -7 -7 -2 1 2 0 -2 -1 -1 0 0 -1 -3 -4 -3 -2 -1 -1 -1 -1 -1 -1 -1 -2 -4 -4 -3 -3 -2 -2 -3 -3 -2 -1 -0 -0 -0 -1 -1 1 3 3 3 2 0 -1 -2 -2 -1 -1 -1 -2 -2 -1 -1 -1 -1 -2 -3 -3 -3 -3 -3 -3 -4 -4 -5 -5 -4 -1 2 5 6 5 3 1 -0 -1 -1 0 1 2 1 -2 -8 -14 -16 -14 -6 2 3 0 -6 -9 -5 0 5 7 6 2 -3 -7 -8 -7 -7 -7 -8 -9 -11 -11 -9 -6 -3 -2 -3 -6 -10 -11 -11 -9 -6 -5 -7 -10 -15 -20 -21 -17 -10 -4 -5 -8 -8 -7 -6 -10 -13 -14 -12 -11 -14 -17 -16 -11 -3 -2 -5 -10 -14 -16 -17 -16 -13 -6 -0 3 4 3 1 -2 -5 -9 -12 -16 -18 -19 -19 -17 -17 -18 -19 -21 -24 -26 -26 -23 -13 -6 -4 -8 -17 -21 -21 -18 -12 -8 -8 -11 -13 -14 -15 -15 -14 -15 -14 -13 -11 -10 -9 -9 -9 -10 -12 -13 -15 -17 -19 -18 -15 -13 -13 -15 -18 -19 -20 -19 -17 -16 -14 -12 -10 -6 -3 -0 -0 -4 -11 -15 -16 -16 -15 -12 -12 -13 -17 -20 -17 -11 -4 0 -6 -13 -17 -15 -13 -14 -15 -15 -14 -14 -15 -15 -17 -19 -19 -19 -19 -18 -18 -18 -17 -16 -12 -11 -13 -16 -18 -16 -14 -13 -14 -14 -16 -18 -20 -21 -23 -26 -27 -27 -27 -27 -26 -24 -22 -22 -22 -23 -24 -25 -25 -25 -25 -27 -26 -27 -27 -27 -25 -23 -20 -17 -14 -17 -26 -33 -38 -39 -37 -35 -33 -31 -29 -25 -23 -23 -26 -27 -28 -29 -29 -28 -26 -24 -21 -20 -21 -22 -24 -25 -28 -29 -29 -30 -31 -32 -31 -30 -28 -27 -29 -30 -32 -33 -33 -30 -28 -28 -30 -29 -27 -26 -26 -28 -29 -29 -28 -27 -28 -27 -27 -28 -28 -27 -27 -26 -23 -23 -22 -22 -22 -22 -21 -22 -22 -21 -20 -24 -28 -29 -28 -25 -22 -22 -24 -24 -25 -25 -25 -24 -23 -21 -18 -17 -20 -23 -27 -32 -34 -33 -31 -29 -27 -27 -28 -29 -26 -25 3 3 -2 -6 -6 -3 2 2 0 -2 -2 -1 -0 -0 -1 -3 -4 -5 -4 -3 -2 -1 -1 -1 -1 0 0 -0 -2 -2 -2 -1 -1 -2 -3 -4 -3 -3 -2 -0 1 1 1 2 3 4 3 2 2 1 1 1 1 -0 -1 -2 -2 -2 -1 -1 -1 -1 -2 -3 -3 -3 -2 -2 -2 -2 -3 -4 -4 -4 -1 4 8 9 8 5 2 0 -1 -1 1 2 2 1 -3 -8 -13 -15 -13 -5 1 3 -1 -7 -9 -9 -5 1 7 8 4 -3 -8 -9 -9 -9 -8 -7 -8 -10 -11 -11 -7 -4 -3 -5 -8 -11 -10 -8 -5 -5 -5 -8 -11 -17 -21 -20 -16 -8 -6 -8 -10 -9 -7 -8 -11 -13 -12 -10 -13 -17 -19 -16 -7 -2 -2 -6 -11 -14 -15 -16 -15 -11 -6 -2 1 2 2 1 -2 -5 -9 -13 -16 -19 -20 -20 -19 -18 -17 -18 -20 -23 -26 -28 -23 -15 -6 -3 -10 -18 -22 -22 -19 -15 -13 -11 -11 -12 -14 -14 -14 -14 -14 -13 -13 -12 -10 -10 -9 -10 -11 -13 -14 -16 -17 -19 -17 -14 -13 -13 -16 -20 -21 -19 -17 -16 -14 -13 -12 -10 -5 -0 2 -1 -8 -13 -16 -17 -16 -13 -12 -13 -16 -19 -19 -15 -10 -3 -4 -10 -15 -17 -15 -14 -13 -11 -11 -12 -11 -12 -14 -19 -20 -20 -19 -18 -17 -17 -16 -15 -12 -10 -10 -13 -16 -15 -14 -14 -15 -15 -15 -15 -17 -21 -24 -26 -26 -26 -26 -25 -25 -24 -23 -22 -23 -24 -25 -26 -25 -25 -25 -26 -26 -27 -27 -27 -25 -24 -23 -23 -21 -21 -26 -32 -37 -38 -38 -38 -37 -35 -33 -28 -24 -22 -23 -26 -28 -29 -29 -28 -27 -25 -24 -21 -22 -24 -24 -25 -26 -27 -27 -28 -29 -28 -29 -29 -28 -26 -27 -28 -30 -33 -35 -32 -29 -29 -31 -30 -29 -27 -27 -28 -29 -30 -29 -29 -29 -29 -29 -29 -29 -28 -27 -26 -24 -24 -23 -22 -22 -21 -21 -22 -22 -22 -22 -24 -27 -28 -28 -24 -22 -21 -24 -24 -24 -25 -25 -24 -24 -22 -19 -18 -20 -23 -26 -30 -33 -33 -31 -29 -28 -26 -27 -28 -26 -25 2 -1 -6 -6 -3 1 2 0 -2 -2 -1 -1 -1 -1 -2 -3 -4 -5 -4 -3 -2 -2 -2 -1 -1 0 1 1 -0 0 0 -0 -1 -2 -3 -4 -6 -7 -6 -2 1 3 3 3 3 3 4 4 4 5 5 5 4 3 1 -0 -1 -2 -2 -1 -0 0 -1 -2 -3 -4 -4 -3 -1 1 2 1 -2 -4 -5 -1 4 9 11 8 5 2 -0 -1 -1 0 1 2 2 -1 -5 -10 -12 -9 -3 2 4 -0 -7 -12 -13 -9 1 9 10 5 -3 -9 -12 -12 -10 -7 -6 -7 -10 -13 -13 -9 -6 -4 -7 -10 -11 -9 -5 -4 -5 -6 -9 -13 -19 -22 -20 -14 -8 -7 -9 -10 -9 -8 -9 -11 -11 -10 -11 -15 -20 -21 -13 -4 0 -2 -8 -12 -14 -15 -14 -13 -11 -8 -4 -1 -0 -0 -1 -2 -6 -9 -14 -17 -20 -20 -19 -17 -16 -17 -18 -20 -22 -26 -26 -21 -12 -4 -4 -12 -20 -25 -24 -20 -14 -10 -7 -9 -12 -14 -14 -13 -13 -13 -13 -14 -13 -11 -10 -10 -11 -12 -13 -14 -16 -19 -19 -17 -14 -12 -15 -19 -21 -19 -17 -16 -14 -13 -13 -12 -10 -6 -2 -1 -5 -10 -14 -16 -16 -14 -13 -14 -15 -16 -18 -18 -15 -7 -5 -7 -13 -17 -18 -16 -12 -9 -11 -11 -10 -9 -11 -17 -20 -20 -18 -17 -17 -16 -15 -14 -12 -10 -9 -10 -14 -15 -15 -15 -16 -16 -15 -14 -15 -20 -24 -26 -26 -26 -25 -24 -24 -24 -24 -24 -24 -24 -25 -26 -26 -25 -25 -26 -26 -27 -27 -27 -26 -24 -24 -24 -23 -22 -25 -30 -35 -38 -40 -40 -39 -38 -35 -31 -26 -23 -22 -25 -27 -28 -29 -30 -27 -26 -25 -22 -24 -25 -26 -26 -25 -25 -26 -27 -28 -28 -28 -29 -28 -25 -26 -27 -28 -31 -34 -33 -31 -30 -33 -32 -30 -28 -28 -28 -28 -29 -29 -30 -30 -30 -30 -29 -29 -28 -27 -26 -25 -25 -24 -23 -22 -21 -22 -23 -23 -23 -23 -23 -23 -25 -26 -24 -22 -20 -24 -24 -24 -25 -24 -23 -24 -24 -22 -21 -23 -24 -25 -29 -31 -32 -32 -30 -29 -26 -26 -27 -26 -26 -1 -5 -7 -4 -1 2 1 -1 -2 -2 -1 -1 -2 -3 -3 -3 -4 -4 -4 -3 -2 -2 -2 -2 -1 0 1 1 1 1 0 -1 -2 -2 -1 -4 -9 -12 -10 -5 0 4 5 4 3 3 4 5 6 8 8 8 7 7 5 3 1 -1 -2 -2 -1 -0 -0 -1 -1 -3 -5 -6 -5 -2 4 7 6 2 -4 -6 -2 3 9 10 8 5 2 -1 -2 -2 -1 0 2 2 -0 -3 -6 -8 -7 -2 3 5 1 -6 -13 -16 -9 2 10 12 6 -3 -9 -11 -11 -10 -8 -7 -8 -11 -13 -12 -9 -6 -5 -8 -10 -10 -8 -5 -4 -4 -7 -10 -15 -21 -23 -21 -13 -8 -7 -9 -10 -9 -9 -10 -11 -9 -8 -11 -17 -23 -19 -10 -1 2 -3 -10 -14 -14 -13 -13 -13 -11 -8 -6 -4 -3 -2 -2 -4 -7 -11 -15 -19 -21 -19 -17 -16 -16 -16 -17 -19 -22 -24 -23 -19 -11 -6 -8 -14 -21 -23 -19 -15 -10 -7 -7 -10 -13 -14 -13 -13 -12 -13 -14 -14 -13 -12 -11 -11 -11 -12 -13 -15 -18 -20 -19 -17 -13 -13 -16 -18 -18 -17 -16 -14 -13 -12 -12 -12 -10 -6 -1 -2 -6 -11 -15 -16 -16 -16 -16 -15 -15 -17 -19 -17 -12 -7 -5 -8 -14 -17 -15 -12 -10 -11 -11 -10 -9 -11 -17 -21 -21 -18 -17 -16 -15 -13 -13 -14 -12 -10 -9 -12 -14 -15 -15 -16 -16 -15 -15 -16 -19 -22 -25 -26 -25 -24 -23 -23 -24 -25 -25 -24 -24 -23 -24 -25 -26 -26 -27 -26 -27 -27 -26 -25 -24 -24 -24 -24 -23 -25 -29 -34 -37 -39 -39 -39 -38 -36 -32 -28 -26 -24 -27 -28 -29 -29 -30 -28 -25 -24 -22 -23 -25 -26 -27 -25 -25 -26 -27 -30 -29 -30 -30 -30 -26 -26 -27 -28 -28 -29 -30 -30 -30 -34 -34 -31 -29 -28 -28 -28 -28 -29 -30 -30 -30 -30 -30 -30 -29 -28 -27 -25 -24 -23 -22 -22 -22 -22 -23 -24 -23 -23 -21 -21 -25 -26 -25 -23 -20 -23 -24 -25 -25 -23 -23 -24 -25 -26 -26 -26 -26 -26 -29 -31 -32 -32 -30 -28 -26 -25 -26 -27 -26 -4 -7 -6 -2 1 1 -1 -2 -2 -1 -1 -2 -3 -4 -4 -4 -4 -4 -3 -2 -2 -2 -2 -2 -1 -1 -0 -0 -0 -1 -3 -4 -3 -1 -2 -7 -12 -13 -10 -7 -4 -1 1 2 2 2 3 4 6 8 8 8 8 8 8 7 5 3 1 -0 -1 -2 -1 -1 -0 -1 -4 -7 -10 -8 -0 7 11 9 3 -3 -4 -2 4 9 9 8 5 3 0 -2 -2 -1 1 2 2 2 -0 -4 -7 -7 -3 3 5 1 -6 -14 -15 -8 1 9 11 6 -1 -7 -9 -11 -11 -11 -9 -9 -11 -12 -11 -7 -5 -5 -7 -9 -9 -7 -5 -4 -5 -7 -12 -18 -23 -25 -20 -12 -7 -6 -8 -10 -10 -11 -11 -9 -7 -7 -12 -20 -23 -17 -6 3 2 -5 -11 -15 -14 -12 -12 -12 -11 -9 -9 -7 -5 -3 -3 -5 -8 -12 -17 -20 -20 -18 -16 -16 -15 -15 -17 -20 -22 -23 -23 -19 -12 -8 -9 -14 -20 -20 -17 -13 -9 -6 -7 -9 -12 -13 -12 -12 -12 -13 -14 -14 -13 -13 -12 -12 -12 -12 -14 -17 -19 -21 -20 -16 -12 -12 -14 -16 -17 -15 -14 -13 -12 -12 -13 -13 -10 -5 -2 -3 -6 -11 -14 -17 -20 -21 -17 -15 -16 -18 -18 -14 -9 -5 -5 -12 -16 -15 -12 -10 -11 -12 -11 -10 -11 -16 -20 -20 -17 -15 -13 -12 -11 -13 -15 -14 -10 -8 -10 -13 -15 -16 -16 -16 -16 -16 -17 -18 -21 -23 -25 -25 -24 -24 -24 -25 -26 -26 -25 -23 -21 -22 -24 -26 -27 -28 -27 -27 -26 -26 -25 -24 -24 -24 -24 -24 -25 -28 -33 -36 -37 -38 -38 -37 -35 -33 -31 -28 -27 -31 -32 -30 -29 -30 -28 -25 -23 -22 -23 -23 -24 -26 -25 -25 -26 -28 -31 -31 -31 -32 -32 -29 -28 -28 -28 -27 -27 -29 -30 -31 -34 -33 -31 -29 -29 -29 -28 -28 -28 -29 -30 -30 -30 -31 -31 -30 -29 -28 -25 -23 -22 -22 -22 -22 -22 -23 -23 -23 -22 -21 -21 -25 -26 -25 -24 -21 -22 -23 -24 -24 -23 -23 -24 -25 -28 -28 -27 -27 -28 -30 -32 -32 -30 -29 -27 -25 -25 -26 -27 -26 -6 -7 -3 0 1 0 -2 -2 -1 -1 -2 -3 -4 -4 -4 -4 -4 -4 -3 -2 -2 -3 -3 -3 -2 -2 -2 -2 -2 -4 -5 -5 -4 -3 -5 -9 -11 -10 -6 -5 -5 -5 -3 0 1 1 1 2 3 4 5 5 5 6 6 6 7 6 5 3 0 -2 -2 -2 -0 1 -1 -6 -10 -11 -7 1 8 11 10 3 -1 -3 -1 4 7 8 8 7 4 1 -1 -1 -1 0 2 3 3 1 -3 -7 -8 -5 1 3 1 -6 -13 -14 -9 -1 8 9 5 -0 -5 -9 -12 -13 -13 -10 -10 -10 -10 -8 -5 -4 -5 -7 -9 -9 -7 -6 -5 -5 -8 -14 -20 -26 -25 -19 -11 -6 -6 -8 -10 -11 -12 -12 -9 -6 -6 -14 -21 -21 -15 -3 3 0 -7 -13 -14 -12 -11 -11 -10 -11 -11 -11 -10 -6 -5 -4 -6 -8 -13 -17 -19 -19 -17 -15 -15 -15 -16 -18 -19 -22 -24 -24 -18 -11 -6 -6 -12 -16 -18 -16 -11 -6 -5 -6 -9 -10 -11 -12 -12 -13 -13 -14 -14 -14 -13 -13 -12 -12 -12 -14 -17 -21 -23 -21 -13 -9 -10 -14 -16 -16 -14 -13 -12 -13 -14 -14 -14 -10 -5 -1 -1 -4 -11 -18 -22 -22 -18 -14 -15 -17 -19 -18 -14 -10 -7 -10 -14 -14 -12 -10 -11 -12 -12 -12 -12 -14 -16 -17 -15 -14 -12 -11 -10 -12 -15 -15 -12 -9 -10 -13 -15 -16 -16 -15 -15 -17 -18 -18 -20 -22 -25 -26 -26 -25 -24 -24 -25 -26 -25 -24 -21 -22 -24 -27 -29 -28 -27 -27 -27 -27 -26 -25 -24 -24 -24 -24 -24 -26 -31 -34 -36 -36 -37 -36 -33 -31 -29 -27 -31 -35 -36 -31 -29 -29 -28 -26 -24 -23 -24 -24 -25 -25 -25 -26 -27 -29 -31 -33 -33 -33 -33 -31 -29 -29 -29 -28 -28 -28 -29 -30 -32 -31 -30 -31 -31 -31 -29 -27 -28 -29 -29 -30 -32 -32 -31 -30 -29 -28 -26 -25 -23 -22 -23 -22 -22 -23 -22 -22 -21 -21 -22 -24 -25 -26 -26 -25 -24 -24 -23 -23 -24 -25 -25 -25 -29 -29 -28 -28 -30 -32 -33 -32 -30 -29 -27 -25 -25 -26 -27 -27 -7 -5 -1 1 1 -1 -3 -2 -1 -2 -2 -3 -3 -4 -5 -5 -5 -4 -3 -2 -2 -3 -4 -4 -3 -3 -3 -3 -3 -3 -4 -5 -4 -4 -6 -8 -8 -5 -0 -2 -4 -5 -3 -0 1 1 1 1 2 2 2 3 2 2 2 3 5 6 6 5 3 0 -1 -2 -1 1 0 -2 -6 -10 -11 -7 -0 6 10 8 4 -0 -2 -0 2 5 7 8 7 5 3 1 -1 -1 -0 1 3 4 1 -4 -9 -12 -8 -2 3 2 -6 -12 -14 -11 -3 4 6 5 0 -5 -10 -13 -14 -13 -11 -10 -10 -9 -7 -4 -3 -4 -7 -9 -9 -8 -6 -4 -5 -10 -17 -24 -27 -24 -17 -10 -7 -7 -8 -9 -11 -14 -13 -8 -4 -6 -15 -21 -21 -14 -3 0 -3 -9 -14 -13 -11 -9 -9 -10 -11 -12 -12 -10 -7 -5 -3 -4 -8 -13 -17 -18 -16 -15 -15 -15 -15 -15 -17 -20 -23 -25 -23 -16 -8 -3 -4 -10 -15 -17 -14 -9 -6 -6 -8 -9 -10 -11 -13 -14 -14 -14 -14 -14 -14 -13 -12 -11 -11 -12 -16 -20 -23 -24 -16 -10 -8 -11 -15 -15 -14 -13 -12 -13 -14 -15 -15 -14 -11 -6 -2 -2 -9 -15 -20 -21 -18 -15 -15 -17 -19 -19 -17 -14 -9 -8 -12 -14 -14 -12 -12 -12 -12 -12 -12 -13 -13 -13 -13 -14 -13 -11 -10 -11 -13 -13 -12 -10 -10 -12 -15 -18 -17 -15 -15 -17 -19 -18 -20 -22 -25 -27 -27 -26 -24 -24 -25 -26 -26 -25 -22 -22 -24 -27 -30 -29 -28 -28 -28 -28 -28 -27 -25 -25 -25 -24 -24 -25 -29 -32 -33 -34 -35 -35 -32 -29 -28 -27 -32 -36 -37 -33 -30 -30 -29 -26 -24 -25 -26 -27 -27 -26 -26 -26 -27 -27 -29 -33 -36 -35 -34 -32 -30 -29 -29 -29 -28 -28 -29 -29 -31 -30 -29 -31 -32 -32 -30 -27 -28 -29 -30 -32 -35 -34 -32 -30 -29 -27 -27 -26 -23 -22 -22 -21 -21 -22 -21 -21 -21 -21 -23 -25 -26 -26 -27 -28 -26 -25 -24 -24 -26 -27 -27 -25 -28 -28 -28 -29 -29 -30 -31 -31 -30 -30 -28 -26 -25 -26 -28 -28 -6 -3 1 1 -0 -2 -3 -2 -1 -1 -2 -3 -4 -4 -4 -4 -4 -3 -3 -2 -3 -4 -4 -4 -3 -4 -4 -3 -1 -2 -4 -4 -3 -4 -6 -6 -3 0 2 0 -2 -2 -0 1 2 2 1 2 2 3 3 2 2 1 -0 -0 1 3 5 5 4 3 1 -0 -1 0 1 1 -1 -5 -9 -10 -8 -3 4 8 8 5 1 -2 -2 -0 3 6 8 7 6 4 2 -0 -1 -1 -0 2 3 0 -6 -14 -16 -11 -3 4 2 -6 -13 -16 -13 -6 1 5 4 0 -4 -9 -12 -14 -13 -11 -10 -9 -8 -6 -4 -3 -4 -7 -9 -9 -8 -5 -4 -7 -13 -21 -27 -26 -21 -14 -9 -8 -7 -8 -9 -13 -15 -13 -8 -4 -9 -17 -22 -21 -12 -4 -2 -5 -11 -13 -12 -10 -9 -10 -10 -11 -10 -11 -10 -7 -4 -3 -5 -9 -13 -15 -15 -14 -15 -15 -14 -13 -15 -18 -21 -24 -25 -22 -16 -8 -3 -6 -10 -15 -16 -12 -8 -6 -6 -6 -7 -10 -12 -14 -15 -15 -15 -15 -14 -13 -13 -12 -11 -12 -14 -18 -22 -24 -20 -13 -7 -6 -11 -14 -15 -13 -12 -13 -13 -13 -14 -16 -16 -13 -7 -2 -5 -11 -17 -20 -19 -17 -15 -16 -18 -19 -18 -16 -10 -6 -7 -10 -12 -12 -11 -11 -11 -11 -11 -10 -9 -9 -12 -14 -14 -12 -10 -10 -11 -12 -12 -13 -12 -12 -15 -19 -18 -17 -17 -18 -19 -19 -19 -21 -23 -27 -28 -27 -24 -22 -24 -25 -27 -26 -25 -24 -25 -28 -30 -29 -29 -29 -30 -30 -29 -28 -27 -25 -25 -25 -25 -24 -27 -30 -31 -32 -34 -35 -32 -29 -28 -27 -29 -32 -34 -33 -31 -31 -30 -27 -25 -26 -29 -31 -30 -27 -26 -26 -27 -27 -27 -30 -34 -37 -35 -33 -31 -30 -29 -29 -29 -28 -29 -30 -30 -29 -28 -29 -31 -31 -29 -25 -27 -29 -32 -34 -36 -35 -34 -32 -29 -28 -26 -24 -22 -22 -22 -21 -21 -21 -19 -20 -20 -21 -23 -26 -27 -27 -27 -29 -28 -26 -25 -23 -24 -27 -29 -26 -27 -26 -26 -27 -26 -26 -27 -27 -29 -29 -28 -26 -25 -27 -30 -30 -4 -0 2 0 -2 -3 -2 -1 -1 -2 -3 -5 -5 -5 -4 -3 -3 -3 -2 -2 -4 -5 -5 -4 -4 -5 -3 -1 -0 -2 -4 -4 -4 -5 -4 -2 1 2 1 -0 -0 1 3 3 3 3 3 3 4 5 5 4 4 3 1 -0 -1 -1 -0 1 2 3 3 2 1 -0 1 3 3 2 -3 -7 -10 -10 -6 2 7 8 5 1 -2 -2 -1 1 4 6 8 8 6 3 0 -2 -3 -1 2 2 -1 -10 -17 -17 -11 -1 4 -0 -7 -14 -17 -15 -9 -2 4 4 1 -4 -8 -13 -14 -12 -10 -8 -9 -8 -7 -4 -3 -5 -7 -9 -10 -7 -5 -5 -10 -18 -25 -27 -24 -18 -11 -9 -9 -8 -7 -11 -15 -17 -14 -7 -7 -11 -18 -23 -18 -10 -4 -3 -7 -12 -13 -12 -11 -11 -10 -10 -10 -10 -10 -9 -7 -4 -4 -7 -10 -13 -14 -13 -13 -13 -14 -13 -14 -15 -18 -22 -25 -26 -23 -17 -8 -5 -6 -10 -15 -14 -11 -6 -4 -4 -5 -7 -10 -12 -14 -15 -15 -16 -15 -14 -13 -12 -11 -12 -13 -16 -21 -24 -23 -17 -9 -4 -7 -12 -15 -14 -13 -13 -12 -12 -13 -17 -19 -18 -13 -5 -4 -8 -14 -19 -19 -17 -16 -16 -17 -18 -19 -17 -13 -8 -7 -8 -10 -11 -11 -11 -11 -11 -10 -9 -8 -8 -11 -13 -14 -14 -12 -11 -11 -11 -13 -15 -15 -15 -16 -19 -18 -17 -17 -18 -19 -19 -19 -19 -21 -25 -28 -27 -24 -21 -22 -24 -27 -28 -27 -27 -26 -27 -28 -29 -30 -30 -31 -31 -30 -29 -29 -27 -27 -26 -25 -24 -25 -28 -29 -31 -34 -34 -32 -29 -28 -27 -27 -28 -29 -31 -32 -32 -30 -28 -26 -27 -30 -33 -31 -27 -25 -26 -27 -26 -25 -26 -29 -34 -34 -32 -30 -31 -29 -30 -29 -29 -29 -31 -31 -30 -28 -28 -29 -30 -29 -24 -25 -28 -31 -33 -35 -36 -35 -33 -30 -28 -26 -24 -22 -23 -23 -22 -22 -21 -20 -20 -20 -20 -22 -26 -28 -28 -29 -30 -30 -29 -27 -24 -24 -26 -29 -27 -24 -24 -24 -23 -22 -22 -24 -25 -28 -28 -27 -26 -26 -29 -31 -31 -1 2 1 -1 -3 -2 -1 -0 -1 -3 -4 -5 -5 -5 -4 -3 -3 -2 -1 -2 -4 -6 -6 -6 -5 -5 -3 -1 -0 -2 -5 -6 -6 -5 -1 2 2 0 -3 -2 -0 2 4 3 3 3 4 5 6 6 6 7 7 6 4 3 1 -2 -3 -4 -3 0 2 2 1 -0 0 2 4 6 4 0 -4 -8 -10 -6 1 6 8 6 3 -0 -2 -3 -2 1 4 6 9 8 5 1 -2 -2 -1 1 1 -4 -11 -16 -16 -9 0 2 -0 -6 -10 -13 -13 -10 -3 2 2 -0 -5 -11 -13 -12 -8 -5 -6 -9 -10 -8 -4 -3 -5 -8 -11 -10 -7 -5 -8 -14 -22 -26 -26 -21 -13 -11 -11 -10 -7 -8 -13 -17 -18 -13 -8 -7 -12 -19 -20 -16 -9 -4 -4 -9 -12 -13 -12 -12 -11 -11 -10 -9 -9 -9 -8 -7 -6 -6 -8 -10 -12 -13 -13 -13 -13 -12 -12 -13 -16 -19 -23 -27 -28 -25 -18 -9 -4 -5 -11 -14 -12 -9 -5 -4 -4 -5 -6 -9 -12 -14 -16 -16 -16 -16 -15 -13 -12 -12 -12 -14 -18 -23 -25 -22 -15 -6 -5 -9 -13 -15 -14 -13 -12 -11 -13 -16 -18 -19 -17 -11 -6 -7 -11 -16 -18 -17 -16 -16 -17 -18 -19 -19 -17 -12 -9 -7 -8 -9 -9 -9 -9 -9 -9 -8 -7 -8 -10 -14 -16 -16 -15 -13 -12 -12 -13 -16 -18 -18 -18 -19 -18 -17 -17 -18 -20 -20 -19 -18 -20 -24 -27 -27 -24 -20 -20 -23 -27 -30 -29 -28 -27 -27 -28 -29 -30 -31 -31 -32 -32 -31 -31 -30 -28 -27 -26 -24 -23 -25 -27 -29 -32 -32 -31 -30 -29 -29 -29 -28 -28 -31 -32 -32 -31 -29 -27 -27 -28 -30 -28 -25 -25 -26 -26 -25 -24 -24 -26 -29 -31 -30 -29 -30 -30 -30 -30 -29 -29 -31 -31 -31 -30 -29 -28 -28 -28 -25 -25 -27 -29 -32 -33 -34 -35 -34 -30 -29 -27 -25 -23 -24 -24 -23 -23 -21 -20 -20 -20 -19 -21 -25 -28 -29 -30 -30 -31 -31 -30 -27 -26 -26 -28 -26 -23 -23 -24 -21 -20 -21 -23 -24 -26 -27 -27 -27 -28 -31 -32 -32 0 1 -1 -2 -2 -1 0 -1 -3 -4 -4 -4 -5 -5 -5 -4 -2 -1 -1 -2 -5 -6 -7 -6 -6 -4 -3 -2 -2 -4 -7 -8 -6 -2 3 3 0 -4 -6 -4 -1 1 2 2 2 2 3 4 5 5 5 6 6 7 7 6 6 2 -1 -4 -4 -1 0 -0 -1 -3 -3 -1 1 4 6 5 2 -2 -7 -9 -5 1 7 10 8 5 1 -1 -2 -3 -2 1 5 7 6 3 -0 -2 -2 -1 -0 -1 -6 -12 -15 -15 -8 -0 3 1 -3 -8 -11 -11 -8 -3 -1 -2 -5 -10 -12 -10 -6 -1 -2 -8 -12 -13 -9 -5 -4 -5 -9 -10 -9 -7 -7 -10 -18 -24 -27 -24 -16 -12 -12 -13 -10 -7 -9 -14 -19 -18 -12 -7 -7 -13 -18 -19 -15 -8 -3 -5 -9 -12 -13 -13 -13 -12 -11 -9 -8 -8 -9 -9 -8 -7 -7 -7 -10 -11 -11 -12 -12 -11 -11 -12 -14 -17 -21 -25 -28 -29 -25 -17 -8 -3 -6 -11 -13 -11 -7 -5 -5 -5 -4 -7 -10 -13 -15 -15 -16 -17 -16 -14 -13 -12 -12 -13 -17 -22 -25 -25 -21 -11 -5 -5 -10 -14 -14 -12 -10 -9 -10 -11 -14 -16 -18 -15 -10 -9 -11 -14 -16 -17 -17 -17 -17 -18 -18 -19 -19 -15 -11 -7 -6 -6 -6 -6 -6 -6 -7 -8 -9 -11 -13 -16 -19 -19 -19 -17 -14 -13 -13 -16 -18 -20 -20 -19 -18 -17 -16 -17 -19 -19 -19 -18 -18 -22 -26 -27 -25 -21 -20 -22 -27 -30 -30 -29 -28 -27 -28 -29 -30 -31 -32 -33 -33 -33 -32 -31 -29 -27 -25 -23 -22 -22 -24 -27 -30 -31 -32 -32 -31 -31 -31 -30 -29 -31 -33 -34 -33 -30 -27 -26 -25 -25 -25 -25 -25 -26 -25 -24 -23 -23 -24 -26 -28 -30 -32 -32 -30 -30 -30 -30 -29 -30 -31 -31 -30 -29 -28 -28 -28 -25 -26 -27 -30 -33 -34 -33 -32 -31 -28 -27 -27 -26 -25 -26 -25 -24 -25 -22 -20 -19 -19 -19 -21 -25 -29 -31 -29 -29 -31 -33 -32 -29 -27 -27 -27 -25 -22 -22 -23 -20 -20 -22 -24 -24 -25 -26 -27 -28 -29 -31 -32 -32 0 -1 -2 -2 -1 -0 -1 -3 -4 -4 -3 -3 -4 -6 -7 -6 -3 -2 -2 -4 -6 -8 -8 -7 -5 -4 -4 -5 -6 -7 -8 -7 -4 2 5 3 -2 -6 -7 -4 -1 0 1 1 2 2 3 4 3 2 1 1 1 3 5 6 7 5 3 1 0 0 0 -0 -1 -3 -4 -5 -4 -2 2 4 5 3 -1 -6 -7 -4 2 7 9 7 5 2 0 -1 -2 -1 2 5 6 5 3 -0 -1 -1 -1 -1 -4 -8 -13 -18 -15 -7 1 5 4 -1 -6 -10 -10 -6 -4 -4 -6 -11 -13 -10 -5 1 1 -4 -9 -12 -11 -6 -4 -4 -6 -8 -8 -8 -7 -8 -13 -20 -26 -26 -18 -13 -13 -15 -13 -8 -7 -10 -17 -20 -16 -10 -5 -7 -14 -18 -18 -13 -6 -4 -6 -10 -12 -13 -13 -13 -12 -10 -9 -8 -9 -9 -9 -8 -7 -7 -8 -9 -10 -11 -12 -11 -11 -12 -13 -15 -18 -21 -26 -29 -29 -24 -16 -6 -3 -7 -11 -11 -8 -5 -5 -5 -4 -4 -8 -11 -13 -14 -15 -16 -16 -15 -15 -13 -12 -13 -15 -20 -25 -27 -25 -17 -7 -4 -6 -12 -13 -12 -10 -9 -9 -9 -11 -14 -17 -16 -13 -11 -11 -13 -15 -17 -17 -18 -17 -17 -17 -19 -19 -16 -12 -7 -4 -4 -4 -3 -4 -5 -7 -9 -11 -14 -14 -15 -17 -19 -20 -19 -16 -14 -13 -15 -18 -21 -21 -21 -19 -17 -16 -17 -18 -19 -19 -18 -18 -21 -24 -27 -27 -23 -21 -23 -26 -29 -30 -29 -29 -29 -29 -30 -30 -31 -32 -34 -34 -34 -33 -31 -30 -28 -26 -24 -22 -21 -22 -26 -29 -33 -36 -36 -34 -33 -32 -31 -29 -30 -32 -34 -34 -31 -29 -27 -25 -25 -25 -26 -26 -26 -24 -24 -23 -22 -24 -25 -27 -31 -36 -35 -31 -30 -30 -30 -29 -29 -30 -29 -30 -29 -28 -28 -27 -25 -26 -28 -30 -33 -33 -31 -29 -28 -27 -26 -26 -26 -26 -27 -26 -25 -26 -23 -21 -19 -19 -19 -21 -25 -30 -31 -28 -28 -30 -31 -30 -28 -26 -27 -26 -23 -21 -21 -22 -20 -20 -22 -23 -23 -24 -26 -27 -28 -29 -30 -30 -30 -0 -1 -2 -1 -1 -2 -3 -4 -3 -2 -1 -2 -5 -8 -9 -7 -4 -3 -4 -6 -9 -9 -8 -6 -4 -5 -7 -9 -10 -10 -9 -5 -2 0 -1 -2 -3 -3 0 1 1 0 1 3 4 4 4 3 2 1 -1 -1 -1 1 2 3 4 5 5 5 4 3 2 1 1 -1 -3 -5 -6 -7 -4 -1 3 4 3 -2 -5 -5 -3 2 6 7 7 5 4 2 1 -0 -0 1 3 5 5 2 1 -0 -1 -2 -4 -7 -11 -17 -19 -14 -5 3 6 4 -0 -5 -8 -8 -6 -5 -6 -10 -13 -12 -8 -3 -1 -3 -6 -9 -10 -8 -5 -3 -4 -6 -6 -5 -4 -6 -11 -17 -22 -23 -18 -13 -12 -15 -16 -11 -7 -7 -11 -17 -18 -14 -7 -4 -9 -15 -18 -17 -11 -5 -3 -6 -10 -12 -13 -12 -12 -11 -10 -9 -8 -8 -8 -9 -8 -7 -7 -8 -9 -10 -11 -11 -11 -11 -12 -13 -15 -18 -22 -27 -29 -28 -23 -14 -5 -5 -7 -10 -9 -6 -5 -4 -4 -3 -5 -8 -11 -13 -14 -16 -16 -16 -15 -14 -13 -13 -14 -18 -23 -27 -29 -23 -13 -6 -4 -8 -13 -13 -12 -10 -11 -11 -10 -11 -14 -16 -16 -14 -11 -11 -13 -16 -18 -18 -16 -15 -15 -16 -17 -15 -12 -8 -5 -3 -2 -2 -3 -5 -6 -9 -12 -15 -14 -13 -14 -17 -21 -22 -20 -16 -14 -16 -18 -21 -22 -22 -20 -17 -15 -16 -18 -19 -20 -20 -18 -19 -22 -26 -27 -24 -23 -24 -25 -28 -29 -30 -30 -29 -29 -29 -30 -31 -32 -33 -34 -34 -33 -32 -31 -29 -27 -24 -21 -20 -20 -23 -29 -35 -39 -39 -36 -33 -31 -29 -27 -29 -31 -34 -35 -33 -31 -28 -25 -26 -27 -28 -28 -26 -25 -24 -23 -23 -25 -25 -27 -32 -37 -36 -33 -30 -29 -29 -28 -28 -28 -28 -29 -28 -27 -26 -24 -24 -25 -27 -29 -30 -29 -27 -26 -27 -28 -28 -29 -27 -27 -27 -26 -26 -26 -24 -21 -20 -19 -18 -20 -24 -30 -30 -28 -28 -29 -30 -28 -25 -24 -25 -24 -22 -21 -22 -22 -21 -20 -21 -23 -22 -24 -26 -28 -29 -29 -29 -29 -29 -0 -1 -1 -1 -2 -4 -4 -3 -1 -0 -1 -3 -6 -8 -9 -8 -5 -5 -7 -9 -11 -11 -9 -6 -5 -7 -9 -10 -10 -8 -4 -1 -1 -4 -8 -6 -1 4 6 4 1 -0 1 4 5 4 4 3 3 2 1 1 1 2 2 1 1 2 4 6 7 6 5 5 4 2 0 -2 -5 -7 -8 -6 -3 0 2 1 -2 -4 -5 -2 2 5 7 7 6 5 4 2 -0 -0 1 3 5 4 3 2 0 -2 -4 -6 -10 -16 -21 -19 -13 -4 3 5 4 -1 -6 -9 -9 -7 -5 -7 -10 -12 -12 -10 -7 -5 -5 -6 -8 -8 -6 -4 -3 -4 -3 -2 0 -1 -7 -14 -20 -22 -18 -12 -10 -11 -14 -12 -8 -6 -7 -13 -16 -16 -12 -6 -7 -11 -16 -19 -16 -9 -4 -2 -5 -9 -11 -11 -11 -12 -11 -10 -8 -8 -8 -9 -9 -8 -7 -7 -8 -8 -10 -10 -10 -11 -12 -13 -14 -15 -18 -23 -28 -29 -27 -21 -11 -4 -3 -7 -10 -8 -6 -5 -4 -4 -4 -5 -8 -11 -13 -14 -14 -15 -16 -15 -14 -13 -13 -16 -21 -26 -30 -27 -19 -9 -3 -6 -14 -17 -16 -12 -13 -11 -9 -8 -11 -15 -17 -17 -15 -14 -14 -14 -14 -13 -13 -13 -13 -12 -12 -13 -12 -11 -8 -4 -1 -0 -2 -5 -7 -9 -13 -16 -15 -13 -13 -16 -21 -24 -22 -19 -15 -15 -17 -19 -22 -23 -20 -17 -16 -16 -17 -19 -21 -22 -20 -18 -20 -23 -25 -26 -25 -25 -25 -26 -28 -30 -30 -29 -29 -29 -30 -31 -32 -33 -33 -34 -33 -32 -31 -30 -27 -24 -21 -19 -18 -20 -26 -33 -38 -38 -36 -33 -29 -26 -24 -27 -29 -32 -35 -35 -32 -29 -25 -26 -27 -28 -29 -29 -29 -27 -25 -24 -25 -25 -27 -31 -35 -36 -34 -32 -30 -27 -27 -28 -29 -31 -30 -29 -28 -26 -24 -23 -24 -26 -27 -27 -26 -24 -23 -27 -29 -30 -31 -28 -27 -25 -24 -25 -25 -24 -22 -21 -19 -18 -19 -23 -29 -28 -28 -28 -29 -28 -27 -25 -23 -22 -22 -23 -24 -24 -22 -22 -21 -22 -24 -24 -25 -28 -31 -31 -31 -30 -30 -29 0 -0 -1 -3 -4 -4 -3 -1 0 -0 -2 -5 -7 -9 -9 -8 -6 -7 -8 -10 -11 -11 -9 -6 -6 -8 -9 -9 -7 -2 2 2 -2 -8 -11 -7 -1 4 7 4 -0 -2 -1 2 2 3 2 2 2 3 4 4 4 3 2 0 -1 -0 1 4 6 7 8 7 7 6 4 2 -0 -3 -6 -8 -8 -5 -1 1 -0 -2 -4 -4 -1 2 4 5 6 6 6 5 2 0 -0 1 4 6 5 4 2 -1 -4 -6 -10 -15 -20 -21 -18 -12 -5 1 4 2 -3 -8 -9 -8 -5 -4 -7 -10 -14 -16 -15 -11 -7 -4 -5 -7 -8 -7 -6 -5 -4 -2 1 3 -2 -9 -16 -22 -22 -16 -11 -8 -11 -13 -11 -7 -5 -9 -13 -16 -15 -10 -7 -8 -13 -18 -19 -14 -8 -4 -3 -6 -9 -11 -11 -11 -11 -11 -9 -7 -8 -9 -10 -11 -9 -8 -8 -8 -9 -8 -9 -10 -11 -12 -13 -13 -15 -19 -24 -27 -28 -26 -18 -8 -3 -4 -8 -9 -8 -5 -4 -4 -4 -3 -4 -7 -10 -12 -14 -14 -15 -16 -15 -14 -13 -14 -18 -23 -28 -29 -24 -14 -4 -5 -14 -18 -17 -13 -12 -11 -9 -8 -9 -13 -16 -17 -18 -17 -15 -12 -11 -11 -12 -12 -11 -11 -12 -13 -14 -14 -12 -8 -3 -0 -1 -4 -7 -10 -13 -16 -16 -15 -14 -16 -20 -23 -24 -22 -18 -16 -16 -18 -21 -22 -20 -18 -16 -16 -18 -20 -23 -24 -22 -18 -17 -19 -23 -25 -26 -26 -25 -25 -27 -29 -30 -29 -28 -28 -29 -30 -31 -32 -33 -34 -34 -33 -31 -30 -27 -25 -21 -18 -16 -18 -24 -30 -34 -35 -35 -33 -30 -26 -24 -25 -27 -30 -34 -35 -34 -30 -26 -26 -26 -27 -30 -32 -32 -30 -27 -25 -24 -23 -25 -29 -32 -34 -36 -35 -32 -26 -27 -30 -31 -33 -33 -32 -31 -30 -27 -26 -26 -27 -27 -26 -25 -23 -22 -25 -27 -29 -30 -28 -27 -24 -23 -24 -25 -23 -22 -21 -19 -18 -20 -23 -28 -27 -27 -28 -28 -27 -26 -24 -22 -21 -22 -25 -27 -27 -23 -23 -22 -22 -25 -25 -27 -30 -33 -33 -33 -32 -31 -31 1 -1 -4 -5 -5 -3 -1 1 0 -2 -4 -6 -8 -10 -11 -10 -7 -7 -8 -9 -10 -10 -8 -7 -7 -9 -7 -4 -1 2 4 1 -4 -9 -9 -5 -3 -1 0 0 -1 -3 -3 -3 -2 -1 0 1 1 2 3 4 3 2 1 1 0 -0 -0 1 2 5 7 8 9 8 7 6 4 1 -2 -6 -8 -7 -5 -2 -2 -3 -3 -3 -2 -0 1 1 2 4 5 5 4 1 -1 -0 3 6 7 7 5 2 -2 -5 -8 -13 -17 -19 -19 -18 -15 -7 -0 3 2 -3 -6 -8 -7 -5 -5 -8 -13 -17 -20 -18 -12 -6 -2 -5 -8 -10 -10 -8 -7 -5 -2 3 2 -3 -12 -21 -25 -21 -14 -7 -8 -12 -12 -10 -6 -6 -10 -14 -16 -13 -9 -8 -10 -15 -18 -17 -12 -7 -4 -4 -7 -10 -11 -12 -11 -11 -10 -8 -8 -9 -10 -11 -10 -10 -9 -8 -7 -7 -9 -10 -11 -12 -12 -12 -13 -15 -19 -23 -27 -28 -25 -16 -8 -3 -4 -7 -8 -6 -4 -5 -5 -4 -3 -5 -7 -10 -12 -14 -15 -16 -15 -14 -13 -13 -16 -20 -26 -29 -28 -20 -10 -6 -10 -12 -12 -10 -10 -11 -11 -10 -9 -12 -14 -16 -18 -17 -15 -11 -10 -11 -12 -12 -12 -11 -12 -13 -14 -14 -13 -9 -5 -1 -0 -3 -6 -10 -13 -17 -17 -16 -14 -14 -18 -22 -24 -23 -21 -18 -17 -18 -20 -21 -20 -18 -17 -17 -18 -21 -24 -26 -24 -20 -16 -16 -21 -24 -26 -26 -24 -24 -25 -27 -29 -28 -27 -27 -27 -28 -30 -31 -33 -34 -34 -32 -31 -30 -28 -26 -23 -18 -15 -16 -22 -27 -30 -32 -34 -33 -31 -28 -25 -25 -26 -29 -32 -35 -35 -32 -28 -26 -25 -26 -30 -33 -34 -32 -28 -26 -24 -23 -25 -29 -33 -35 -37 -37 -34 -27 -28 -31 -33 -33 -34 -34 -34 -32 -30 -29 -28 -29 -29 -30 -29 -26 -23 -24 -25 -26 -27 -27 -27 -25 -23 -23 -24 -24 -22 -21 -19 -19 -21 -24 -27 -25 -25 -26 -27 -26 -25 -23 -23 -23 -24 -27 -29 -28 -24 -23 -22 -21 -24 -25 -27 -29 -34 -35 -35 -34 -34 -35 0 -3 -6 -6 -4 -1 2 1 -2 -4 -6 -7 -9 -11 -12 -11 -8 -7 -7 -8 -9 -9 -8 -8 -7 -6 -2 0 2 3 1 -4 -8 -9 -5 -2 -4 -8 -9 -5 -1 -0 -2 -5 -5 -3 -1 1 0 -1 -1 -1 -1 -1 -0 1 2 2 1 -1 -1 -0 3 6 9 10 10 9 7 5 2 -1 -4 -5 -4 -4 -3 -3 -4 -3 -2 -2 -1 -0 0 1 3 5 5 3 1 0 1 4 6 7 6 4 0 -3 -7 -11 -14 -16 -18 -21 -22 -16 -8 -1 4 2 -3 -7 -9 -8 -6 -7 -10 -15 -19 -21 -17 -9 -1 -2 -6 -10 -13 -12 -12 -11 -8 -2 1 -0 -6 -16 -22 -21 -16 -10 -8 -11 -12 -12 -8 -6 -7 -11 -15 -15 -12 -9 -8 -11 -15 -16 -15 -12 -7 -5 -5 -7 -10 -11 -11 -10 -10 -8 -7 -7 -9 -10 -11 -11 -10 -9 -6 -5 -6 -8 -10 -11 -12 -12 -12 -12 -15 -19 -23 -27 -28 -24 -16 -7 -3 -5 -7 -7 -5 -4 -6 -6 -4 -4 -5 -7 -10 -12 -14 -14 -15 -15 -14 -14 -14 -17 -22 -27 -29 -25 -17 -9 -6 -6 -8 -8 -9 -11 -12 -12 -9 -10 -12 -14 -16 -16 -15 -12 -10 -11 -12 -12 -12 -11 -12 -13 -14 -14 -12 -9 -6 -3 -1 -2 -6 -9 -12 -15 -17 -16 -14 -13 -17 -20 -23 -24 -23 -21 -20 -19 -20 -20 -19 -19 -18 -18 -19 -21 -25 -27 -25 -22 -18 -16 -19 -23 -26 -26 -24 -22 -23 -25 -27 -27 -27 -26 -26 -27 -29 -31 -32 -33 -33 -32 -31 -30 -28 -26 -23 -19 -15 -15 -19 -24 -27 -29 -32 -33 -32 -30 -27 -25 -26 -28 -32 -35 -35 -33 -29 -27 -25 -26 -30 -33 -34 -33 -29 -28 -26 -24 -25 -29 -32 -35 -37 -37 -35 -29 -29 -32 -34 -34 -35 -35 -35 -33 -32 -30 -29 -29 -30 -31 -31 -29 -26 -23 -23 -24 -25 -26 -27 -27 -24 -24 -25 -25 -23 -20 -19 -19 -22 -26 -25 -23 -23 -25 -26 -26 -24 -23 -24 -24 -25 -27 -28 -25 -23 -23 -23 -21 -22 -24 -26 -29 -33 -36 -37 -36 -36 -36 -2 -6 -7 -5 -1 1 2 -1 -3 -5 -7 -8 -11 -13 -13 -11 -9 -7 -7 -7 -8 -9 -9 -8 -5 0 2 2 0 -0 -5 -10 -12 -8 -0 2 -3 -11 -15 -8 1 5 4 -1 -2 -1 1 2 0 -3 -5 -6 -5 -4 -2 0 2 3 3 2 -0 -2 -2 0 3 6 8 8 8 6 4 2 1 1 -0 -1 -2 -3 -3 -3 -3 -3 -2 -2 -1 -0 1 1 3 3 3 2 1 1 3 5 6 5 3 -1 -4 -8 -11 -12 -14 -17 -21 -22 -18 -10 0 4 2 -2 -6 -8 -7 -7 -8 -11 -17 -21 -21 -14 -3 0 -2 -7 -13 -14 -14 -14 -13 -9 -2 2 0 -6 -14 -17 -16 -13 -10 -10 -12 -13 -11 -7 -6 -8 -12 -15 -14 -11 -8 -8 -11 -14 -16 -15 -12 -8 -5 -5 -8 -10 -10 -11 -10 -9 -8 -7 -7 -9 -10 -10 -10 -9 -8 -6 -5 -6 -8 -10 -11 -12 -11 -11 -13 -15 -19 -24 -27 -27 -23 -14 -6 -5 -6 -7 -5 -4 -4 -5 -5 -4 -4 -6 -8 -10 -12 -13 -14 -15 -15 -14 -14 -15 -18 -23 -27 -27 -22 -12 -6 -5 -6 -7 -7 -9 -11 -12 -9 -7 -8 -10 -14 -16 -16 -14 -12 -10 -10 -11 -12 -11 -12 -13 -14 -13 -10 -9 -7 -6 -3 -4 -6 -9 -12 -14 -16 -16 -14 -13 -15 -18 -22 -24 -25 -24 -23 -22 -21 -20 -19 -19 -19 -18 -19 -21 -24 -26 -26 -24 -21 -19 -20 -23 -25 -25 -23 -21 -21 -23 -26 -27 -27 -26 -26 -26 -27 -29 -31 -33 -33 -33 -31 -29 -26 -24 -22 -20 -17 -16 -18 -21 -25 -27 -30 -33 -33 -31 -28 -26 -26 -27 -31 -34 -35 -33 -30 -29 -29 -29 -31 -33 -35 -33 -30 -28 -27 -26 -26 -27 -30 -34 -38 -38 -35 -32 -31 -32 -34 -34 -35 -35 -34 -33 -32 -30 -28 -28 -29 -30 -31 -30 -28 -24 -23 -23 -24 -26 -28 -28 -26 -25 -25 -25 -22 -20 -19 -20 -23 -28 -24 -22 -22 -24 -26 -25 -24 -23 -24 -25 -25 -26 -28 -24 -22 -23 -24 -23 -21 -22 -25 -28 -32 -36 -37 -36 -36 -37 -5 -7 -7 -2 1 1 -1 -3 -4 -6 -8 -10 -12 -13 -13 -12 -9 -8 -7 -7 -8 -10 -10 -6 -0 6 2 0 -1 -2 -8 -13 -12 -6 4 6 -1 -8 -12 -4 3 7 6 4 2 2 1 1 0 -1 -1 -0 0 0 0 -1 -1 -1 1 3 4 2 -0 -1 -2 -0 1 2 3 3 2 2 2 2 2 1 1 0 0 -1 -2 -3 -3 -3 -1 0 1 1 0 2 3 4 3 1 2 3 4 4 3 1 -2 -6 -8 -9 -10 -12 -15 -18 -18 -16 -9 -2 2 3 2 -3 -5 -6 -6 -9 -14 -19 -21 -17 -7 1 2 -3 -10 -13 -13 -14 -15 -14 -8 -1 2 -2 -9 -14 -16 -15 -12 -10 -11 -13 -14 -10 -7 -6 -8 -13 -15 -13 -10 -7 -8 -11 -14 -16 -15 -11 -7 -6 -7 -9 -10 -11 -11 -11 -10 -8 -6 -6 -8 -8 -9 -10 -9 -7 -5 -5 -7 -9 -10 -10 -11 -11 -12 -13 -15 -19 -24 -27 -26 -21 -12 -7 -6 -7 -7 -5 -3 -3 -4 -5 -5 -5 -6 -8 -10 -11 -13 -14 -15 -15 -15 -15 -16 -20 -25 -27 -25 -15 -8 -5 -5 -6 -5 -5 -8 -11 -11 -9 -7 -8 -12 -16 -17 -17 -14 -10 -9 -9 -10 -10 -11 -12 -12 -9 -7 -7 -8 -7 -6 -6 -7 -9 -10 -13 -14 -15 -16 -16 -17 -18 -20 -24 -26 -26 -26 -24 -22 -21 -20 -20 -19 -18 -18 -20 -22 -25 -26 -26 -25 -23 -23 -23 -23 -23 -21 -20 -19 -21 -24 -26 -26 -26 -26 -25 -26 -28 -31 -33 -33 -33 -31 -29 -26 -23 -22 -23 -22 -20 -18 -19 -22 -25 -28 -31 -33 -33 -30 -27 -26 -27 -30 -33 -34 -33 -31 -32 -33 -33 -33 -35 -35 -34 -30 -29 -28 -27 -26 -25 -28 -34 -39 -39 -35 -34 -34 -33 -33 -35 -34 -33 -32 -33 -32 -30 -28 -28 -28 -29 -30 -30 -27 -25 -23 -22 -23 -25 -27 -28 -27 -25 -25 -24 -22 -20 -19 -20 -23 -28 -25 -23 -23 -24 -27 -26 -24 -23 -24 -25 -25 -25 -26 -24 -22 -22 -23 -24 -24 -24 -26 -29 -33 -36 -37 -37 -36 -37 -7 -7 -4 1 2 -0 -3 -4 -5 -6 -9 -12 -13 -13 -13 -12 -10 -8 -7 -7 -9 -11 -10 -4 3 4 1 0 -1 -4 -9 -12 -9 -2 7 5 -1 -6 -7 -2 2 4 4 5 4 3 1 0 1 2 3 3 2 1 -0 -2 -5 -5 -2 2 5 6 4 1 -2 -3 -3 -2 -2 -1 -1 -0 1 1 0 -0 0 1 3 3 1 -0 -2 -2 -1 0 1 0 -1 0 3 5 6 4 3 2 2 3 3 2 -0 -3 -6 -7 -8 -9 -10 -13 -15 -17 -17 -12 -5 2 6 5 1 -1 -4 -6 -11 -17 -20 -19 -11 -2 2 1 -5 -10 -12 -14 -15 -15 -10 -4 1 1 -4 -9 -13 -15 -13 -12 -12 -13 -14 -12 -8 -6 -6 -9 -13 -14 -13 -9 -7 -7 -10 -14 -15 -13 -10 -8 -7 -8 -9 -11 -12 -13 -13 -10 -6 -5 -5 -6 -7 -9 -10 -9 -7 -5 -5 -7 -8 -10 -10 -11 -11 -12 -14 -16 -20 -24 -26 -25 -18 -11 -8 -7 -8 -6 -2 0 -1 -4 -5 -5 -5 -6 -8 -10 -12 -14 -15 -15 -15 -14 -15 -19 -23 -26 -26 -18 -11 -6 -6 -6 -3 -2 -3 -8 -11 -11 -9 -8 -10 -14 -17 -17 -14 -12 -10 -9 -7 -7 -9 -10 -10 -7 -5 -6 -7 -8 -8 -8 -7 -6 -7 -10 -13 -15 -17 -18 -18 -18 -20 -23 -26 -28 -27 -25 -24 -22 -21 -21 -20 -19 -18 -19 -20 -23 -25 -27 -27 -26 -24 -22 -21 -21 -21 -20 -19 -19 -21 -24 -25 -26 -26 -25 -26 -28 -30 -33 -33 -33 -31 -29 -25 -24 -24 -24 -24 -21 -18 -17 -20 -22 -24 -28 -32 -33 -31 -29 -26 -26 -28 -31 -34 -35 -33 -34 -35 -35 -36 -37 -37 -34 -31 -29 -28 -28 -27 -25 -28 -34 -40 -41 -39 -38 -37 -34 -31 -33 -34 -33 -32 -33 -32 -30 -27 -28 -28 -29 -30 -30 -27 -26 -25 -23 -22 -23 -24 -26 -26 -24 -23 -22 -21 -20 -19 -20 -22 -27 -25 -23 -23 -24 -26 -26 -25 -24 -23 -24 -25 -26 -25 -24 -23 -22 -23 -24 -25 -27 -28 -31 -36 -38 -38 -37 -37 -36 -7 -5 -1 2 0 -3 -4 -4 -5 -7 -10 -13 -14 -13 -13 -12 -10 -8 -7 -7 -8 -10 -9 -2 4 2 -0 -1 -4 -8 -11 -10 -5 2 6 0 -5 -6 -4 -1 -0 -0 0 2 2 1 1 1 2 2 3 2 2 1 -1 -3 -6 -8 -6 -1 4 8 7 4 1 -2 -2 -2 -2 -2 -2 -2 -1 -1 -2 -3 -2 -0 2 3 4 3 1 -1 -1 -0 -0 -0 -2 -1 1 4 7 6 5 3 2 3 3 3 1 -1 -3 -5 -6 -7 -8 -9 -11 -14 -19 -20 -16 -7 2 7 6 3 -0 -3 -7 -12 -17 -19 -15 -8 -1 2 -1 -6 -10 -13 -15 -16 -13 -8 -2 2 -1 -6 -11 -14 -14 -12 -12 -12 -14 -13 -11 -8 -6 -6 -9 -13 -15 -13 -9 -7 -7 -10 -13 -14 -14 -11 -8 -7 -8 -9 -11 -14 -15 -13 -8 -5 -4 -4 -5 -7 -9 -10 -9 -6 -5 -5 -7 -8 -10 -11 -11 -12 -13 -15 -18 -21 -25 -26 -23 -16 -11 -8 -9 -8 -5 -1 2 -1 -3 -5 -6 -6 -7 -8 -10 -12 -14 -14 -14 -14 -15 -17 -21 -24 -25 -20 -14 -9 -7 -6 -4 -1 1 -2 -7 -9 -10 -9 -9 -11 -14 -15 -14 -14 -14 -12 -8 -7 -10 -11 -10 -7 -5 -5 -6 -8 -10 -9 -7 -4 -4 -8 -11 -14 -17 -19 -19 -19 -19 -23 -26 -26 -24 -23 -23 -23 -23 -22 -22 -21 -19 -18 -19 -21 -24 -26 -28 -27 -24 -21 -20 -21 -22 -22 -20 -19 -19 -22 -24 -26 -26 -25 -26 -28 -30 -32 -33 -32 -31 -28 -25 -25 -25 -24 -22 -20 -17 -16 -16 -18 -21 -25 -29 -31 -31 -29 -27 -26 -26 -29 -32 -34 -34 -34 -35 -35 -37 -38 -38 -35 -31 -29 -29 -28 -28 -28 -32 -37 -42 -43 -41 -40 -38 -35 -30 -31 -33 -33 -34 -35 -33 -30 -27 -28 -29 -30 -30 -30 -28 -28 -28 -26 -23 -22 -22 -23 -23 -23 -23 -22 -21 -20 -19 -20 -22 -26 -25 -24 -23 -24 -26 -27 -26 -25 -23 -24 -26 -26 -24 -25 -25 -24 -24 -23 -25 -27 -29 -31 -35 -38 -39 -38 -37 -35 -6 -2 2 1 -2 -4 -5 -4 -6 -9 -12 -14 -14 -13 -13 -12 -10 -8 -6 -5 -6 -10 -4 1 4 2 0 -4 -9 -14 -15 -10 -2 4 2 -6 -9 -7 -2 0 -1 -2 -2 -1 -0 1 2 2 2 0 -2 -2 -2 -1 -1 -2 -4 -7 -7 -4 1 5 5 4 2 1 1 1 1 0 -1 -1 -1 -1 -2 -3 -3 -2 -1 1 3 4 3 2 0 -1 -1 -2 -3 -3 -1 2 5 7 6 5 3 3 3 4 4 2 1 -1 -3 -5 -7 -8 -9 -12 -16 -22 -22 -17 -7 2 5 4 2 0 -2 -6 -11 -17 -19 -15 -9 -2 1 -2 -6 -10 -13 -16 -15 -12 -6 -1 -0 -4 -9 -13 -13 -12 -12 -12 -13 -14 -14 -11 -8 -6 -6 -9 -13 -14 -12 -9 -7 -7 -9 -12 -13 -12 -10 -7 -6 -6 -8 -12 -15 -14 -11 -8 -5 -3 -2 -4 -7 -9 -10 -8 -6 -4 -4 -6 -8 -10 -11 -11 -12 -14 -16 -19 -22 -26 -25 -20 -14 -9 -8 -9 -8 -5 0 2 0 -3 -5 -6 -6 -7 -7 -9 -11 -13 -14 -14 -15 -16 -18 -20 -23 -21 -17 -12 -8 -7 -6 -4 -0 2 -2 -6 -9 -10 -8 -9 -11 -14 -14 -14 -13 -12 -10 -9 -9 -10 -10 -9 -6 -4 -5 -7 -11 -11 -8 -4 -3 -6 -9 -12 -15 -19 -20 -19 -20 -23 -25 -25 -23 -22 -23 -24 -24 -23 -23 -22 -21 -19 -18 -20 -22 -25 -26 -25 -23 -20 -19 -21 -23 -23 -22 -20 -18 -20 -22 -25 -26 -26 -27 -28 -30 -32 -32 -31 -29 -25 -24 -25 -26 -24 -22 -21 -19 -16 -13 -14 -18 -23 -27 -29 -30 -28 -26 -25 -25 -26 -29 -33 -34 -35 -35 -36 -38 -40 -39 -38 -35 -32 -30 -29 -29 -31 -35 -38 -41 -42 -41 -40 -37 -35 -31 -29 -31 -33 -35 -35 -33 -31 -28 -29 -30 -31 -30 -29 -29 -31 -32 -29 -25 -22 -22 -23 -23 -24 -24 -23 -22 -20 -20 -21 -23 -26 -26 -25 -23 -25 -28 -29 -29 -26 -24 -24 -26 -26 -25 -26 -27 -26 -26 -23 -24 -26 -30 -30 -34 -38 -39 -38 -37 -35 -3 1 1 -2 -4 -5 -5 -5 -7 -10 -12 -13 -13 -13 -13 -12 -11 -8 -6 -6 -6 -5 2 4 4 2 -1 -7 -14 -18 -16 -8 0 3 -3 -10 -10 -5 1 2 -0 -1 -0 0 0 1 3 3 1 -2 -6 -7 -6 -3 -1 -0 -1 -4 -5 -4 -3 -2 -1 0 1 2 2 3 3 3 3 3 2 1 -0 -1 -2 -3 -3 -2 -1 1 3 3 2 1 -1 -2 -3 -3 -2 -0 3 5 6 6 4 3 3 4 5 5 4 3 1 -2 -4 -6 -8 -11 -14 -19 -23 -22 -17 -8 -2 -0 1 1 2 1 -4 -12 -19 -21 -18 -11 -3 -0 -2 -6 -11 -15 -16 -14 -11 -5 -2 -3 -6 -10 -12 -12 -13 -13 -13 -14 -15 -15 -12 -9 -6 -6 -9 -12 -13 -12 -10 -8 -7 -9 -11 -13 -12 -10 -8 -7 -7 -9 -12 -13 -12 -11 -10 -7 -4 -2 -4 -6 -9 -10 -8 -5 -4 -3 -5 -7 -9 -11 -12 -13 -14 -17 -20 -24 -25 -22 -18 -11 -8 -8 -9 -9 -5 1 3 2 -2 -5 -6 -6 -6 -7 -9 -11 -13 -15 -16 -17 -17 -19 -21 -21 -19 -15 -10 -7 -8 -8 -5 1 2 -1 -6 -10 -9 -9 -10 -13 -15 -15 -14 -13 -12 -10 -9 -7 -6 -6 -5 -4 -4 -7 -12 -14 -11 -6 -4 -5 -7 -10 -14 -19 -20 -21 -21 -23 -24 -25 -24 -23 -23 -24 -24 -25 -25 -24 -23 -21 -20 -19 -20 -22 -24 -23 -21 -19 -19 -21 -23 -24 -24 -21 -19 -19 -20 -23 -26 -27 -28 -28 -29 -31 -31 -30 -27 -23 -22 -24 -25 -24 -23 -23 -22 -20 -14 -12 -15 -21 -26 -30 -29 -27 -26 -25 -24 -24 -26 -30 -34 -35 -37 -38 -40 -41 -41 -40 -38 -36 -33 -31 -30 -30 -31 -34 -37 -39 -39 -37 -35 -35 -32 -30 -30 -32 -34 -34 -34 -34 -32 -31 -31 -31 -30 -28 -29 -31 -34 -30 -27 -24 -23 -24 -25 -26 -26 -24 -23 -21 -21 -22 -24 -26 -27 -27 -24 -25 -27 -30 -30 -27 -25 -24 -24 -24 -25 -26 -27 -28 -26 -24 -23 -24 -28 -29 -32 -37 -40 -39 -37 -35 -1 1 -1 -5 -5 -5 -5 -6 -9 -11 -12 -13 -13 -13 -13 -12 -11 -9 -8 -6 -3 3 5 5 2 -0 -4 -10 -15 -17 -14 -4 2 1 -7 -11 -8 -1 5 3 2 3 4 3 2 2 3 2 0 -4 -7 -7 -5 -1 2 2 1 -1 -2 -4 -5 -6 -6 -5 -3 -1 -1 -0 1 3 5 5 5 4 2 1 0 -1 -2 -3 -2 -2 -0 2 3 2 1 0 -0 -1 -2 -1 -0 2 4 5 4 3 2 3 4 5 5 4 4 3 1 -2 -5 -9 -12 -16 -18 -20 -20 -16 -12 -8 -5 -2 3 4 1 -7 -15 -21 -22 -19 -11 -2 1 -1 -7 -13 -15 -16 -14 -10 -5 -3 -4 -7 -10 -12 -13 -13 -12 -12 -14 -16 -16 -13 -9 -6 -5 -7 -10 -12 -12 -9 -7 -7 -8 -11 -13 -12 -11 -9 -7 -8 -9 -10 -11 -11 -12 -12 -9 -5 -2 -3 -5 -8 -10 -9 -7 -4 -3 -5 -8 -11 -11 -13 -14 -15 -18 -21 -23 -23 -21 -15 -9 -7 -8 -10 -10 -4 1 4 3 -1 -4 -6 -6 -5 -7 -9 -12 -15 -16 -16 -16 -15 -16 -18 -20 -19 -14 -9 -9 -10 -9 -2 3 2 -3 -8 -9 -9 -11 -14 -17 -16 -15 -13 -14 -12 -9 -6 -4 -4 -4 -3 -4 -6 -11 -15 -15 -9 -5 -4 -6 -8 -13 -18 -21 -22 -22 -23 -24 -24 -23 -23 -23 -23 -23 -24 -25 -25 -24 -24 -22 -20 -19 -19 -22 -22 -20 -19 -18 -20 -22 -24 -24 -23 -21 -19 -19 -22 -25 -28 -28 -28 -28 -29 -30 -29 -25 -21 -20 -22 -25 -25 -24 -25 -25 -24 -17 -13 -13 -18 -24 -29 -30 -27 -27 -26 -25 -24 -23 -27 -31 -34 -37 -40 -41 -41 -41 -40 -39 -37 -35 -33 -32 -29 -27 -28 -31 -34 -34 -34 -33 -34 -33 -32 -32 -31 -33 -34 -34 -35 -35 -33 -32 -31 -30 -28 -29 -30 -32 -31 -29 -26 -25 -26 -27 -28 -27 -26 -24 -23 -23 -23 -23 -25 -26 -27 -24 -24 -26 -27 -27 -26 -24 -23 -22 -23 -25 -26 -26 -27 -26 -24 -23 -23 -24 -27 -31 -35 -39 -39 -38 -35 -0 -1 -4 -6 -5 -5 -6 -8 -10 -11 -12 -12 -12 -13 -13 -12 -11 -10 -7 -2 4 7 5 2 -1 -4 -7 -9 -11 -12 -8 1 2 -3 -9 -9 -3 3 6 4 5 7 7 5 4 3 2 1 -1 -3 -3 -1 3 5 4 2 -0 -1 -1 -2 -4 -5 -6 -5 -4 -4 -5 -6 -6 -5 -2 2 5 6 6 5 4 2 0 -1 -2 -3 -2 -1 2 3 4 4 4 2 1 -1 -2 -1 2 4 5 4 1 -0 0 1 2 2 3 4 4 2 -1 -4 -8 -10 -13 -16 -19 -20 -17 -14 -9 -5 -1 2 2 -2 -8 -15 -21 -24 -21 -9 -2 1 -3 -11 -15 -17 -15 -11 -7 -4 -4 -5 -8 -10 -12 -12 -11 -11 -12 -14 -16 -16 -13 -9 -5 -3 -6 -9 -12 -12 -9 -7 -6 -8 -11 -13 -13 -11 -9 -8 -9 -9 -9 -10 -12 -13 -13 -11 -7 -3 -1 -3 -7 -9 -8 -5 -2 -2 -5 -9 -11 -12 -14 -15 -16 -18 -21 -23 -22 -19 -13 -8 -6 -9 -12 -10 -4 3 6 3 -1 -4 -6 -6 -6 -7 -10 -14 -16 -16 -15 -12 -13 -16 -19 -21 -18 -12 -9 -10 -13 -9 -2 1 1 -2 -5 -8 -11 -14 -16 -16 -14 -13 -14 -13 -10 -6 -2 -3 -3 -3 -3 -5 -12 -16 -17 -13 -8 -5 -4 -7 -12 -17 -21 -23 -24 -24 -24 -23 -22 -22 -23 -23 -23 -23 -23 -24 -25 -25 -24 -22 -20 -19 -20 -22 -22 -21 -17 -17 -19 -21 -24 -24 -23 -20 -19 -20 -25 -27 -28 -28 -27 -28 -29 -28 -24 -20 -19 -21 -25 -25 -25 -26 -25 -25 -20 -15 -12 -14 -20 -26 -29 -29 -29 -29 -28 -26 -23 -24 -27 -31 -36 -39 -39 -38 -38 -38 -38 -37 -35 -33 -32 -30 -27 -25 -28 -30 -32 -31 -31 -32 -32 -32 -33 -31 -32 -33 -34 -36 -37 -36 -34 -32 -32 -30 -28 -29 -31 -31 -30 -29 -28 -28 -29 -30 -29 -27 -26 -25 -25 -25 -23 -23 -24 -25 -24 -23 -24 -24 -24 -24 -24 -23 -22 -23 -24 -25 -25 -25 -24 -23 -23 -24 -23 -25 -28 -32 -36 -37 -38 -37 -1 -3 -5 -6 -5 -6 -8 -10 -11 -11 -11 -11 -11 -11 -11 -11 -11 -9 -3 4 7 5 2 -1 -3 -5 -6 -6 -7 -6 1 5 -0 -8 -11 -6 2 7 6 6 7 8 7 5 4 4 3 1 -1 -1 0 3 5 4 2 -0 -1 -2 -2 -2 -3 -3 -3 -3 -3 -4 -5 -7 -8 -9 -9 -6 -4 -0 3 7 8 8 6 3 -1 -3 -4 -3 -1 1 3 5 6 6 4 1 -1 -2 -1 2 4 5 3 -1 -3 -4 -3 -2 -0 1 1 2 2 1 -1 -3 -7 -12 -18 -19 -16 -12 -9 -8 -7 -4 -1 1 -2 -8 -15 -22 -27 -20 -9 -1 -1 -8 -14 -16 -15 -13 -10 -7 -4 -3 -5 -8 -10 -11 -10 -10 -9 -11 -14 -17 -17 -15 -10 -5 -4 -6 -10 -12 -10 -8 -6 -6 -9 -12 -13 -12 -11 -11 -10 -9 -9 -9 -10 -13 -15 -16 -13 -8 -3 0 -2 -5 -7 -7 -4 -3 -4 -6 -9 -12 -14 -15 -15 -16 -18 -21 -23 -22 -18 -12 -7 -6 -11 -13 -10 -3 5 6 3 -2 -7 -7 -6 -6 -9 -12 -14 -15 -14 -12 -11 -13 -16 -20 -21 -17 -11 -8 -10 -11 -7 -2 2 3 -1 -5 -9 -11 -13 -13 -13 -12 -13 -13 -11 -6 -1 -1 -2 -2 -3 -5 -11 -16 -18 -17 -12 -7 -4 -4 -9 -15 -20 -23 -24 -24 -23 -23 -22 -22 -23 -23 -22 -21 -22 -23 -24 -25 -24 -23 -22 -20 -21 -24 -25 -25 -20 -15 -15 -17 -22 -24 -24 -23 -20 -20 -23 -26 -28 -28 -27 -28 -28 -28 -25 -21 -20 -21 -23 -23 -24 -25 -26 -25 -22 -17 -11 -10 -16 -23 -28 -30 -31 -32 -31 -29 -25 -23 -25 -29 -33 -36 -36 -35 -34 -35 -37 -36 -34 -32 -31 -30 -27 -24 -25 -28 -30 -31 -31 -31 -32 -33 -33 -30 -30 -32 -33 -35 -37 -37 -36 -33 -33 -30 -28 -27 -29 -30 -31 -31 -31 -30 -30 -31 -30 -29 -28 -27 -27 -26 -24 -23 -24 -24 -23 -23 -23 -23 -23 -24 -24 -24 -23 -23 -24 -24 -23 -23 -23 -22 -24 -27 -25 -25 -26 -27 -32 -34 -36 -38 -2 -5 -6 -5 -6 -8 -10 -11 -11 -10 -10 -9 -9 -9 -9 -10 -9 -6 3 7 5 1 -1 -3 -4 -3 -3 -5 -4 1 11 4 -5 -11 -9 0 5 6 5 6 7 7 5 4 4 4 3 2 -0 0 1 3 4 3 2 0 -1 -1 -2 -2 -3 -3 -3 -3 -2 -2 -2 -3 -5 -8 -9 -9 -8 -7 -4 0 4 8 10 8 4 0 -2 -3 -3 -2 1 3 5 6 5 4 1 -1 -2 -2 1 4 4 2 -2 -5 -6 -4 -2 -2 -3 -4 -3 -1 1 0 -3 -10 -16 -18 -14 -10 -8 -10 -11 -9 -5 -1 0 -2 -7 -15 -23 -24 -18 -10 -1 -2 -7 -12 -15 -14 -11 -8 -6 -4 -6 -7 -8 -8 -9 -9 -9 -9 -10 -14 -17 -18 -16 -10 -6 -5 -7 -9 -11 -10 -8 -6 -7 -9 -11 -13 -13 -12 -11 -10 -9 -9 -9 -12 -15 -18 -18 -14 -8 -1 1 -1 -4 -7 -6 -5 -4 -4 -6 -10 -13 -15 -15 -14 -16 -18 -21 -24 -22 -16 -10 -5 -7 -12 -14 -10 -1 5 5 0 -6 -8 -7 -7 -8 -10 -12 -14 -15 -13 -11 -11 -13 -17 -22 -20 -14 -8 -6 -10 -11 -7 1 6 4 -2 -7 -9 -11 -12 -13 -13 -12 -11 -10 -7 -2 -0 -0 -1 -3 -6 -11 -14 -17 -17 -14 -9 -5 -4 -7 -12 -17 -21 -24 -24 -24 -23 -24 -24 -24 -23 -21 -21 -21 -22 -23 -24 -24 -24 -24 -22 -23 -26 -28 -29 -24 -16 -12 -13 -17 -22 -25 -25 -23 -20 -22 -24 -27 -27 -27 -28 -28 -29 -27 -24 -22 -21 -22 -22 -23 -24 -25 -24 -22 -18 -11 -8 -13 -20 -26 -31 -33 -34 -34 -33 -29 -25 -24 -27 -32 -35 -35 -34 -34 -36 -38 -38 -35 -31 -30 -29 -27 -24 -24 -26 -29 -31 -31 -31 -32 -32 -33 -30 -29 -30 -31 -34 -37 -38 -38 -35 -34 -31 -29 -28 -29 -31 -33 -34 -34 -31 -30 -30 -31 -30 -29 -29 -28 -26 -24 -24 -24 -24 -23 -22 -23 -24 -24 -24 -24 -24 -23 -23 -24 -25 -23 -23 -22 -22 -23 -27 -26 -25 -25 -25 -29 -32 -34 -37 -4 -5 -6 -5 -7 -10 -11 -11 -9 -8 -7 -7 -7 -7 -7 -8 -7 1 6 5 1 -2 -4 -4 -4 -2 -3 -4 1 8 8 -3 -9 -10 -5 3 2 1 2 5 5 4 3 3 5 5 5 3 1 1 2 2 3 2 2 2 1 0 -1 -2 -3 -4 -5 -5 -4 -3 -1 -0 -1 -3 -6 -7 -7 -8 -9 -8 -5 1 8 11 9 6 2 -0 -1 -1 -1 0 1 3 3 3 2 1 -1 -3 -2 1 3 3 2 -1 -4 -4 -3 -3 -5 -7 -7 -5 -2 -1 -4 -8 -14 -15 -13 -10 -9 -11 -12 -12 -10 -7 -3 -1 -2 -7 -16 -23 -23 -18 -9 -2 -4 -8 -13 -14 -12 -10 -7 -5 -5 -5 -5 -6 -8 -9 -9 -9 -9 -11 -14 -17 -18 -17 -12 -7 -4 -5 -9 -11 -11 -9 -6 -7 -8 -11 -12 -12 -12 -11 -11 -10 -10 -11 -14 -17 -20 -20 -15 -7 0 2 0 -4 -7 -7 -5 -4 -5 -8 -12 -14 -15 -14 -15 -17 -19 -22 -23 -20 -15 -7 -5 -9 -13 -14 -8 0 5 4 -2 -7 -9 -8 -8 -8 -10 -13 -15 -14 -11 -10 -11 -14 -20 -21 -18 -11 -5 -8 -11 -11 -3 5 6 2 -5 -9 -11 -12 -13 -13 -11 -11 -10 -8 -4 -0 1 0 -3 -7 -10 -13 -15 -16 -15 -13 -10 -7 -7 -9 -13 -18 -22 -23 -24 -23 -24 -24 -24 -23 -22 -21 -20 -21 -22 -24 -25 -26 -26 -25 -25 -27 -30 -31 -27 -19 -13 -10 -13 -19 -25 -27 -26 -22 -21 -23 -25 -27 -27 -28 -28 -29 -29 -26 -23 -23 -23 -22 -22 -24 -25 -25 -24 -20 -14 -9 -12 -18 -25 -30 -34 -37 -38 -38 -33 -28 -26 -27 -31 -34 -35 -34 -36 -40 -41 -40 -37 -32 -30 -28 -27 -24 -23 -24 -27 -30 -31 -31 -31 -32 -32 -31 -30 -30 -30 -32 -35 -38 -38 -36 -34 -32 -30 -29 -30 -32 -34 -36 -35 -32 -30 -29 -31 -31 -30 -29 -28 -26 -25 -25 -25 -24 -23 -22 -23 -24 -25 -25 -24 -25 -25 -25 -26 -27 -26 -25 -24 -22 -22 -24 -25 -26 -27 -25 -29 -32 -34 -36 -5 -5 -5 -6 -9 -11 -12 -10 -8 -7 -6 -6 -6 -6 -6 -6 -2 5 4 1 -2 -4 -5 -5 -4 -4 -5 1 6 7 -1 -9 -10 -6 1 3 0 -1 0 4 3 3 3 4 5 5 3 2 1 1 2 2 2 2 2 3 3 2 1 -0 -2 -3 -5 -6 -7 -6 -3 -0 1 1 -1 -2 -4 -6 -8 -12 -12 -9 -2 7 10 9 7 4 2 1 -0 -1 -2 -1 -0 1 1 2 1 -1 -3 -3 -1 1 3 2 0 -1 -2 -2 -4 -6 -7 -6 -5 -5 -6 -9 -12 -13 -11 -10 -10 -12 -12 -12 -11 -11 -9 -5 -2 -2 -7 -16 -21 -21 -14 -4 -1 -4 -10 -13 -13 -11 -9 -7 -5 -3 -3 -4 -5 -7 -8 -9 -9 -10 -11 -14 -17 -19 -18 -14 -8 -4 -5 -8 -11 -12 -8 -6 -6 -8 -11 -12 -12 -12 -11 -10 -10 -11 -13 -16 -19 -22 -21 -15 -5 1 2 -1 -5 -6 -6 -4 -4 -7 -11 -14 -15 -14 -15 -16 -18 -20 -22 -21 -18 -12 -6 -6 -9 -13 -12 -6 1 4 1 -5 -9 -10 -8 -6 -8 -11 -13 -13 -11 -10 -10 -12 -17 -21 -20 -15 -7 -6 -9 -12 -8 1 6 4 -1 -7 -11 -13 -13 -12 -10 -9 -9 -8 -6 -2 0 1 -2 -5 -8 -11 -13 -15 -16 -16 -14 -12 -10 -8 -10 -14 -19 -22 -24 -24 -23 -23 -23 -23 -22 -20 -19 -19 -21 -23 -26 -27 -28 -27 -27 -27 -29 -30 -27 -21 -15 -11 -12 -18 -24 -28 -28 -24 -22 -22 -24 -26 -27 -27 -27 -29 -28 -25 -23 -23 -22 -20 -20 -23 -26 -26 -25 -22 -17 -11 -11 -16 -23 -28 -33 -37 -40 -42 -37 -32 -28 -27 -30 -33 -33 -34 -37 -41 -42 -40 -38 -33 -30 -29 -27 -25 -23 -23 -25 -28 -29 -29 -31 -34 -36 -35 -33 -31 -31 -33 -35 -37 -38 -36 -35 -34 -32 -31 -31 -32 -34 -36 -35 -33 -31 -29 -29 -31 -31 -30 -28 -26 -25 -25 -25 -25 -24 -23 -23 -25 -26 -26 -25 -25 -27 -28 -29 -29 -28 -27 -25 -23 -23 -23 -24 -25 -27 -27 -30 -34 -36 -36 -5 -5 -5 -7 -11 -12 -12 -10 -8 -6 -6 -5 -5 -5 -5 -2 3 4 1 -2 -4 -5 -6 -5 -5 -5 -2 5 5 -2 -11 -13 -9 -2 5 3 -1 -1 1 3 3 3 4 5 4 2 0 -1 0 1 1 1 0 0 2 3 4 4 3 2 1 -1 -3 -5 -7 -8 -6 -4 -1 2 2 1 0 -2 -4 -8 -13 -16 -15 -7 3 8 10 7 5 4 2 -0 -2 -2 -2 -2 -0 2 2 2 -0 -3 -3 -2 0 2 2 1 0 -0 -1 -2 -3 -5 -6 -8 -9 -10 -11 -11 -9 -9 -9 -12 -12 -11 -11 -12 -13 -10 -6 -1 -1 -8 -16 -21 -19 -9 -2 -1 -5 -11 -12 -12 -11 -9 -7 -4 -3 -3 -4 -5 -6 -8 -9 -10 -10 -12 -14 -17 -19 -18 -14 -8 -5 -6 -9 -12 -11 -9 -7 -7 -9 -10 -12 -12 -11 -10 -10 -11 -12 -14 -17 -21 -23 -21 -13 -5 -0 -0 -3 -5 -5 -3 -3 -6 -9 -12 -15 -14 -14 -15 -16 -18 -20 -21 -20 -17 -10 -6 -6 -9 -12 -10 -5 1 3 -2 -6 -8 -7 -4 -5 -7 -10 -11 -10 -10 -9 -10 -14 -19 -20 -18 -10 -7 -8 -11 -12 -4 2 4 1 -5 -10 -12 -13 -11 -9 -8 -7 -6 -6 -5 -3 -1 -2 -5 -8 -10 -11 -14 -16 -17 -17 -16 -14 -11 -9 -11 -16 -20 -22 -23 -22 -22 -23 -23 -22 -20 -19 -19 -21 -24 -26 -28 -29 -29 -28 -27 -27 -27 -25 -22 -18 -14 -14 -17 -22 -26 -28 -26 -24 -23 -24 -26 -26 -26 -26 -27 -26 -24 -22 -22 -21 -19 -19 -21 -26 -27 -27 -24 -20 -14 -12 -14 -20 -25 -30 -36 -40 -43 -40 -35 -31 -28 -29 -29 -30 -32 -37 -41 -42 -40 -39 -35 -32 -29 -27 -26 -24 -23 -23 -26 -27 -28 -31 -36 -40 -40 -37 -32 -34 -35 -36 -36 -37 -37 -37 -36 -34 -33 -33 -33 -33 -35 -34 -32 -30 -29 -28 -30 -31 -30 -28 -26 -25 -26 -26 -25 -24 -23 -23 -25 -27 -27 -28 -27 -27 -27 -28 -29 -28 -26 -25 -24 -23 -23 -24 -25 -27 -31 -33 -34 -37 -37 -5 -5 -6 -10 -13 -13 -12 -10 -8 -6 -6 -5 -5 -6 -2 2 5 3 -1 -4 -6 -6 -6 -6 -7 -6 2 5 -1 -10 -17 -14 -6 1 5 1 -0 0 2 3 3 4 4 3 -0 -3 -4 -2 0 1 1 -0 -2 -3 -1 1 3 4 4 4 4 3 2 -1 -4 -6 -8 -7 -5 -2 2 2 2 1 1 -2 -8 -15 -21 -21 -9 1 7 9 7 6 4 3 1 -1 -3 -3 -3 1 3 4 4 1 -2 -3 -2 -1 1 1 2 2 3 2 0 -2 -4 -6 -9 -11 -12 -10 -7 -6 -7 -11 -12 -12 -11 -11 -14 -14 -10 -3 1 -4 -12 -20 -24 -16 -7 -0 0 -6 -11 -13 -12 -11 -9 -6 -4 -3 -4 -5 -5 -6 -7 -8 -9 -10 -11 -14 -17 -18 -17 -13 -9 -7 -7 -10 -12 -11 -10 -8 -7 -8 -9 -10 -11 -11 -10 -10 -10 -12 -15 -18 -21 -23 -19 -13 -6 -2 -3 -4 -4 -3 -2 -4 -7 -10 -14 -14 -14 -15 -15 -16 -17 -18 -20 -20 -15 -9 -5 -5 -9 -10 -8 -3 2 1 -2 -6 -6 -5 -4 -5 -7 -9 -10 -9 -9 -9 -12 -16 -20 -20 -14 -8 -7 -10 -12 -8 -1 3 2 -3 -8 -11 -12 -10 -8 -7 -6 -5 -6 -6 -6 -5 -4 -6 -8 -10 -11 -12 -13 -14 -16 -17 -17 -15 -11 -10 -13 -16 -19 -21 -21 -22 -22 -23 -22 -21 -20 -20 -21 -23 -26 -28 -30 -30 -29 -27 -24 -23 -23 -23 -22 -20 -16 -16 -19 -25 -28 -28 -26 -24 -24 -25 -25 -25 -25 -26 -25 -23 -22 -22 -21 -19 -19 -21 -26 -28 -28 -26 -23 -18 -13 -11 -16 -22 -28 -34 -39 -40 -38 -35 -31 -29 -27 -26 -26 -28 -34 -38 -40 -39 -39 -37 -34 -30 -27 -26 -24 -23 -22 -24 -26 -28 -31 -37 -41 -41 -38 -33 -34 -36 -37 -37 -37 -39 -39 -39 -38 -36 -34 -33 -33 -34 -33 -31 -29 -28 -27 -28 -30 -29 -27 -25 -25 -27 -28 -26 -25 -24 -23 -24 -26 -29 -30 -27 -26 -25 -26 -29 -27 -26 -24 -23 -22 -23 -23 -25 -29 -32 -34 -35 -36 -37 -4 -5 -8 -11 -13 -13 -12 -10 -9 -7 -6 -6 -5 -3 2 5 4 0 -4 -7 -8 -7 -7 -9 -9 -5 4 2 -5 -14 -18 -13 -4 2 3 0 1 2 2 2 2 2 1 -1 -4 -6 -5 -3 -1 0 -0 -2 -4 -5 -5 -4 -3 -1 0 2 3 5 5 4 2 -1 -4 -7 -7 -6 -4 -2 0 2 3 1 -4 -11 -18 -23 -19 -10 0 7 7 6 5 5 4 2 -1 -3 -4 -1 2 4 6 4 2 -0 -2 -2 -2 -1 0 2 4 5 4 2 1 -2 -6 -10 -12 -10 -6 -3 -4 -8 -11 -12 -11 -10 -11 -13 -12 -8 -2 -0 -5 -13 -22 -22 -14 -4 3 -2 -8 -12 -13 -11 -9 -7 -5 -4 -4 -4 -5 -5 -6 -7 -8 -9 -10 -12 -14 -16 -18 -17 -13 -9 -7 -8 -10 -11 -11 -9 -7 -6 -6 -8 -10 -11 -10 -10 -10 -11 -13 -15 -18 -21 -20 -17 -12 -6 -5 -5 -4 -4 -2 -1 -3 -7 -11 -13 -14 -14 -14 -14 -15 -16 -18 -21 -19 -14 -8 -3 -5 -8 -9 -6 -0 2 0 -3 -5 -5 -4 -4 -5 -7 -8 -8 -9 -9 -11 -15 -19 -21 -16 -10 -7 -8 -12 -10 -4 1 3 -2 -7 -10 -12 -10 -7 -6 -5 -5 -6 -7 -7 -7 -6 -6 -7 -9 -11 -11 -11 -12 -14 -16 -19 -19 -16 -11 -11 -12 -15 -18 -19 -20 -22 -23 -23 -22 -21 -20 -21 -23 -25 -27 -30 -31 -29 -26 -22 -21 -22 -24 -25 -24 -20 -16 -17 -22 -27 -28 -28 -26 -25 -25 -25 -24 -25 -25 -23 -22 -21 -23 -22 -22 -22 -23 -26 -28 -28 -28 -25 -21 -14 -9 -12 -18 -24 -30 -34 -35 -35 -34 -32 -28 -26 -24 -23 -24 -30 -35 -38 -39 -39 -37 -35 -32 -29 -26 -24 -23 -21 -23 -26 -29 -31 -35 -39 -40 -38 -34 -34 -37 -39 -40 -39 -40 -41 -41 -41 -38 -35 -34 -34 -33 -32 -31 -29 -27 -27 -28 -29 -28 -26 -25 -25 -28 -31 -29 -26 -23 -22 -22 -25 -29 -31 -27 -25 -25 -26 -29 -29 -27 -24 -22 -21 -21 -22 -24 -29 -31 -32 -34 -35 -36 -4 -6 -9 -13 -13 -12 -11 -11 -9 -8 -7 -6 -4 2 6 5 1 -4 -8 -10 -9 -8 -9 -12 -12 -6 3 -0 -7 -13 -15 -10 -2 3 3 2 4 5 4 2 1 -1 -2 -4 -5 -3 -2 -0 1 1 1 -0 -2 -4 -5 -5 -5 -5 -5 -4 -2 -0 3 4 4 3 0 -2 -4 -6 -7 -7 -5 -2 2 3 1 -4 -10 -17 -18 -15 -9 -1 3 4 3 3 4 3 2 -1 -3 -3 -1 1 3 3 3 2 2 1 -1 -2 -2 -1 1 3 4 4 3 1 -2 -5 -8 -9 -6 -4 -4 -7 -10 -11 -10 -7 -8 -10 -13 -13 -8 -1 0 -4 -15 -23 -21 -13 -1 2 -3 -9 -12 -11 -9 -7 -5 -4 -4 -4 -5 -5 -6 -7 -8 -8 -9 -11 -12 -14 -16 -17 -15 -12 -9 -7 -8 -9 -11 -10 -9 -6 -5 -5 -7 -9 -10 -10 -10 -10 -11 -12 -14 -18 -20 -19 -16 -11 -8 -7 -7 -6 -3 -0 0 -2 -7 -11 -13 -14 -15 -14 -14 -15 -16 -19 -21 -18 -13 -5 -3 -5 -7 -8 -4 0 1 -0 -4 -5 -5 -4 -4 -5 -6 -7 -8 -9 -10 -14 -18 -22 -18 -12 -8 -7 -11 -11 -6 1 4 -0 -5 -8 -11 -10 -7 -5 -5 -5 -6 -8 -9 -10 -9 -7 -7 -9 -11 -12 -12 -13 -13 -16 -18 -20 -19 -16 -12 -10 -11 -14 -16 -18 -20 -23 -23 -23 -21 -20 -20 -22 -24 -27 -29 -29 -28 -26 -23 -22 -23 -25 -27 -27 -22 -17 -14 -18 -25 -28 -29 -28 -26 -26 -25 -25 -24 -24 -22 -20 -19 -22 -23 -23 -24 -25 -26 -27 -27 -29 -27 -23 -16 -9 -10 -15 -21 -25 -29 -29 -31 -32 -32 -28 -25 -23 -22 -23 -28 -34 -38 -40 -38 -37 -35 -33 -30 -27 -24 -23 -21 -24 -27 -30 -32 -36 -40 -41 -39 -36 -35 -37 -40 -42 -41 -41 -41 -43 -43 -40 -37 -35 -36 -35 -33 -31 -30 -28 -28 -28 -28 -26 -25 -25 -26 -29 -33 -32 -27 -22 -21 -21 -24 -28 -30 -27 -26 -26 -27 -29 -29 -27 -23 -21 -21 -20 -21 -23 -27 -29 -31 -32 -32 -33 -4 -7 -10 -13 -13 -12 -11 -11 -10 -9 -8 -5 -1 7 6 1 -5 -8 -10 -10 -8 -6 -11 -17 -16 -9 2 -1 -6 -10 -11 -4 2 4 5 7 9 7 5 3 2 -0 -1 -2 -2 -1 0 1 1 1 1 1 0 -2 -3 -4 -4 -4 -5 -6 -6 -6 -3 -0 2 3 3 1 -1 -4 -6 -9 -10 -8 -4 2 4 4 -1 -7 -12 -13 -12 -8 -3 0 1 0 0 1 1 1 -1 -1 -1 -0 0 0 0 0 1 2 1 0 -1 -2 -2 -1 0 1 0 -1 -2 -2 -4 -5 -6 -7 -8 -10 -11 -11 -8 -4 -3 -6 -10 -14 -13 -6 -0 1 -5 -16 -22 -20 -10 2 3 -1 -8 -12 -11 -9 -6 -5 -4 -4 -5 -6 -7 -7 -6 -7 -8 -10 -12 -13 -15 -16 -16 -14 -11 -8 -7 -8 -9 -11 -10 -8 -6 -5 -5 -6 -8 -9 -9 -9 -10 -10 -11 -15 -18 -19 -18 -14 -10 -9 -9 -10 -7 -3 1 2 -2 -7 -11 -13 -14 -14 -14 -14 -15 -17 -19 -19 -17 -11 -5 -4 -6 -8 -6 -2 1 2 -1 -4 -5 -4 -3 -3 -4 -6 -7 -8 -9 -13 -18 -24 -22 -16 -10 -7 -10 -11 -7 -1 4 2 -1 -5 -9 -9 -8 -6 -6 -6 -7 -9 -10 -12 -10 -8 -6 -7 -10 -12 -13 -13 -14 -16 -18 -19 -19 -17 -14 -12 -10 -11 -13 -15 -18 -21 -23 -22 -21 -20 -20 -21 -23 -26 -27 -28 -27 -25 -23 -22 -24 -26 -27 -27 -23 -17 -13 -14 -22 -27 -29 -29 -27 -26 -26 -25 -24 -22 -20 -18 -18 -21 -22 -22 -23 -24 -26 -26 -25 -27 -27 -24 -18 -11 -10 -14 -18 -22 -25 -27 -29 -30 -31 -29 -25 -23 -24 -25 -29 -34 -38 -40 -38 -36 -34 -33 -31 -28 -25 -23 -24 -25 -27 -29 -31 -37 -42 -44 -42 -40 -38 -38 -39 -42 -42 -41 -42 -43 -44 -43 -41 -39 -38 -36 -33 -31 -31 -31 -31 -30 -29 -26 -25 -26 -27 -30 -33 -33 -30 -22 -21 -21 -23 -27 -29 -27 -26 -26 -27 -27 -27 -25 -25 -23 -21 -20 -21 -23 -25 -28 -30 -30 -29 -29 -4 -8 -11 -12 -12 -11 -12 -11 -10 -9 -7 -2 5 9 1 -6 -10 -9 -9 -6 -3 -1 -12 -20 -19 -11 -1 -2 -5 -7 -7 1 4 6 8 10 9 8 6 5 4 2 1 0 -0 -0 -0 -0 -1 0 1 1 0 -1 -2 -2 -2 -2 -3 -5 -7 -8 -7 -5 -3 -1 1 2 0 -2 -5 -8 -11 -12 -9 -3 2 5 4 2 -2 -6 -9 -10 -7 -3 -1 -1 -2 -2 -1 -0 0 1 1 0 -0 -1 -1 -2 -2 -1 0 1 0 -0 -1 -2 -2 -2 -3 -4 -3 -2 -1 -2 -5 -8 -11 -13 -15 -13 -10 -4 1 0 -4 -11 -15 -12 -5 1 1 -8 -17 -22 -18 -5 4 5 -1 -8 -11 -10 -8 -5 -4 -4 -5 -5 -6 -7 -7 -7 -7 -9 -11 -13 -14 -15 -15 -14 -13 -10 -8 -7 -8 -9 -10 -10 -9 -7 -5 -5 -5 -6 -8 -9 -9 -9 -9 -12 -15 -18 -19 -17 -12 -10 -9 -11 -11 -7 -3 1 1 -3 -7 -11 -14 -15 -15 -14 -13 -14 -16 -18 -18 -16 -11 -8 -6 -7 -7 -4 -0 3 2 -2 -4 -5 -3 -2 -2 -4 -6 -8 -9 -12 -17 -25 -25 -20 -13 -7 -8 -10 -8 -1 6 6 4 -0 -5 -8 -9 -9 -9 -9 -9 -9 -9 -11 -10 -7 -5 -5 -8 -11 -12 -13 -16 -18 -18 -17 -16 -16 -15 -14 -11 -10 -12 -15 -17 -20 -21 -21 -21 -19 -19 -20 -22 -24 -25 -26 -26 -24 -21 -22 -24 -26 -27 -27 -24 -19 -13 -12 -18 -23 -27 -28 -27 -26 -25 -24 -22 -21 -20 -18 -18 -19 -20 -20 -20 -20 -23 -24 -24 -25 -27 -25 -21 -14 -10 -12 -15 -19 -24 -26 -28 -30 -32 -31 -28 -27 -27 -28 -31 -33 -36 -39 -37 -35 -33 -32 -31 -29 -26 -24 -26 -26 -25 -25 -28 -35 -40 -42 -42 -42 -40 -38 -38 -40 -41 -42 -42 -44 -46 -46 -45 -42 -39 -37 -34 -33 -33 -34 -34 -32 -29 -25 -25 -26 -28 -30 -32 -32 -29 -22 -21 -21 -22 -25 -26 -26 -25 -25 -26 -26 -25 -25 -27 -26 -24 -21 -22 -24 -26 -28 -30 -30 -27 -26 -5 -8 -10 -11 -10 -11 -12 -12 -11 -9 -4 3 9 4 -6 -10 -10 -8 -6 0 3 -1 -13 -19 -17 -11 -3 -4 -5 -5 -1 5 7 8 9 9 8 7 7 6 5 4 3 1 -0 -1 -0 -0 0 1 1 1 0 -1 -2 -1 -1 -1 -1 -3 -5 -6 -7 -7 -6 -5 -2 1 1 -0 -2 -6 -9 -11 -11 -8 -4 -1 1 2 4 3 -1 -5 -6 -5 -2 -1 -2 -3 -3 -2 -0 1 1 1 1 0 -1 -3 -4 -4 -3 -2 -0 0 0 -1 -2 -3 -4 -6 -6 -5 -3 -2 -4 -6 -10 -14 -17 -17 -14 -9 -0 4 2 -4 -12 -14 -11 -5 1 -2 -10 -18 -21 -12 -1 6 5 -2 -7 -9 -10 -8 -6 -5 -4 -4 -5 -6 -7 -8 -8 -8 -9 -11 -13 -15 -15 -14 -13 -10 -8 -7 -7 -7 -9 -10 -10 -9 -8 -6 -4 -4 -6 -8 -8 -8 -8 -9 -12 -16 -19 -19 -15 -10 -8 -8 -10 -10 -8 -4 -1 -1 -5 -9 -13 -15 -16 -15 -13 -12 -14 -15 -17 -17 -15 -12 -9 -6 -7 -5 -2 3 4 2 -1 -3 -3 -2 -1 -2 -4 -7 -8 -11 -16 -24 -27 -23 -16 -9 -8 -10 -9 -2 7 10 10 6 1 -4 -7 -9 -9 -9 -10 -9 -8 -8 -9 -8 -6 -5 -7 -9 -11 -13 -18 -20 -19 -16 -13 -13 -14 -14 -13 -11 -12 -13 -15 -17 -18 -19 -19 -18 -17 -18 -20 -22 -23 -24 -24 -23 -21 -23 -25 -26 -26 -26 -25 -22 -16 -12 -15 -19 -24 -27 -26 -24 -23 -23 -22 -22 -21 -20 -18 -17 -18 -18 -18 -18 -21 -24 -23 -23 -26 -26 -23 -16 -8 -7 -10 -15 -21 -25 -27 -30 -33 -33 -31 -31 -31 -31 -32 -33 -33 -36 -35 -33 -32 -32 -30 -28 -27 -25 -27 -26 -23 -22 -27 -33 -37 -39 -40 -41 -39 -36 -36 -38 -39 -41 -43 -44 -47 -48 -47 -45 -42 -39 -37 -36 -36 -36 -34 -33 -28 -25 -25 -26 -28 -29 -31 -31 -26 -22 -21 -21 -21 -24 -24 -24 -24 -25 -26 -26 -26 -26 -29 -28 -26 -24 -24 -25 -27 -29 -31 -30 -27 -26 -7 -9 -9 -9 -9 -11 -12 -12 -11 -8 0 6 5 -4 -9 -10 -8 -6 -0 3 1 -5 -13 -16 -14 -9 -6 -7 -6 -1 6 9 8 8 8 7 6 6 7 7 6 5 3 2 1 -0 0 1 1 1 1 1 0 -1 -2 -2 -1 0 -0 -1 -2 -3 -4 -5 -6 -7 -5 -2 1 2 0 -3 -6 -7 -8 -8 -9 -9 -9 -5 1 6 7 3 -2 -3 -3 -1 -0 -1 -2 -2 -1 -1 -1 0 1 2 1 -1 -3 -5 -5 -5 -3 -1 0 0 -1 -2 -3 -5 -7 -8 -7 -6 -5 -5 -7 -12 -16 -19 -19 -16 -7 1 5 2 -6 -12 -14 -11 -4 -1 -4 -11 -17 -15 -7 1 6 4 -0 -5 -8 -9 -8 -6 -5 -4 -3 -4 -5 -7 -8 -8 -9 -10 -12 -14 -15 -16 -14 -12 -9 -7 -7 -8 -9 -9 -9 -10 -10 -8 -6 -5 -5 -6 -7 -7 -7 -8 -10 -14 -17 -20 -17 -13 -8 -5 -7 -9 -11 -9 -5 -3 -3 -6 -10 -14 -16 -15 -13 -11 -11 -13 -14 -15 -16 -15 -13 -9 -7 -6 -4 -0 4 5 4 1 -2 -2 -1 -1 -3 -6 -8 -10 -14 -22 -26 -26 -21 -13 -10 -10 -10 -5 6 13 15 13 9 3 -3 -7 -9 -9 -8 -7 -5 -7 -10 -11 -9 -7 -8 -8 -10 -12 -18 -22 -22 -18 -13 -11 -11 -13 -13 -12 -12 -13 -14 -15 -15 -16 -17 -17 -17 -18 -19 -20 -21 -22 -23 -23 -23 -24 -25 -26 -25 -26 -26 -24 -20 -14 -14 -17 -22 -25 -24 -23 -23 -23 -24 -24 -24 -22 -20 -17 -17 -18 -18 -17 -20 -23 -24 -23 -25 -27 -25 -19 -9 -4 -4 -11 -18 -23 -26 -29 -32 -33 -33 -33 -33 -33 -33 -31 -28 -30 -30 -30 -31 -32 -30 -28 -26 -26 -27 -26 -23 -22 -28 -33 -35 -36 -36 -37 -37 -34 -33 -32 -35 -39 -42 -44 -47 -48 -48 -46 -44 -42 -39 -38 -38 -37 -35 -33 -28 -26 -25 -25 -26 -28 -29 -28 -23 -21 -21 -20 -20 -22 -23 -22 -22 -26 -27 -29 -29 -28 -29 -28 -26 -25 -25 -26 -28 -30 -30 -28 -26 -26 -8 -8 -8 -8 -9 -11 -12 -12 -11 -5 2 4 -1 -9 -9 -8 -5 -2 -0 -2 -4 -7 -11 -12 -10 -7 -9 -10 -5 2 9 9 7 6 6 5 5 6 6 6 6 5 3 3 2 2 2 2 2 2 2 2 1 -1 -2 -2 -1 1 0 -1 -2 -1 -1 -2 -4 -7 -7 -4 -0 3 3 0 -3 -5 -5 -6 -9 -12 -15 -16 -9 -1 5 8 4 0 -2 -1 1 1 -0 -1 -2 -2 -2 -1 0 2 2 1 -0 -3 -5 -5 -5 -4 -1 -0 -0 -1 -1 -3 -6 -9 -11 -11 -9 -7 -6 -8 -13 -17 -20 -21 -15 -6 3 6 -0 -7 -12 -13 -9 -4 -2 -4 -10 -14 -12 -6 2 5 4 1 -3 -7 -8 -8 -7 -5 -4 -3 -4 -5 -6 -7 -8 -9 -10 -12 -14 -16 -17 -15 -12 -9 -7 -7 -8 -8 -7 -8 -9 -9 -8 -6 -5 -5 -6 -7 -7 -7 -9 -12 -15 -19 -19 -16 -11 -5 -4 -6 -9 -12 -9 -6 -3 -4 -7 -12 -15 -16 -15 -12 -10 -10 -11 -13 -14 -15 -15 -12 -9 -7 -5 -2 2 6 7 5 2 0 -0 -0 -1 -3 -5 -9 -13 -19 -24 -26 -25 -18 -12 -11 -11 -9 2 12 19 20 17 11 4 -2 -7 -8 -7 -5 -4 -6 -9 -11 -11 -11 -10 -9 -9 -11 -17 -22 -23 -21 -15 -12 -10 -11 -12 -12 -13 -13 -14 -13 -12 -13 -14 -16 -17 -18 -18 -19 -20 -21 -23 -24 -25 -27 -27 -26 -25 -26 -27 -26 -23 -17 -15 -16 -20 -24 -24 -24 -24 -26 -28 -28 -27 -25 -22 -19 -17 -18 -18 -17 -19 -22 -22 -22 -25 -27 -26 -21 -11 -4 -1 -7 -15 -20 -24 -28 -31 -33 -34 -34 -34 -34 -32 -28 -24 -23 -24 -28 -31 -32 -31 -28 -26 -26 -28 -27 -25 -24 -29 -33 -34 -33 -32 -35 -35 -32 -30 -30 -32 -36 -40 -42 -45 -47 -48 -46 -45 -43 -41 -40 -39 -38 -37 -34 -29 -27 -26 -25 -24 -26 -26 -25 -21 -20 -20 -20 -19 -21 -22 -21 -20 -23 -27 -29 -30 -30 -29 -28 -27 -26 -25 -26 -28 -30 -29 -27 -25 -25 -8 -8 -7 -7 -9 -11 -13 -13 -11 -4 0 -2 -7 -10 -8 -5 -2 -2 -5 -7 -7 -6 -8 -7 -6 -7 -12 -11 -4 3 8 7 5 5 4 4 5 6 6 5 5 5 4 3 4 4 3 3 3 3 4 3 1 -1 -3 -2 0 2 1 -1 -2 -1 0 1 -1 -4 -7 -6 -2 3 7 5 1 -3 -4 -4 -5 -9 -13 -18 -18 -13 -6 2 5 3 1 0 2 3 2 1 0 0 0 0 1 2 2 2 2 0 -2 -3 -4 -4 -4 -3 -2 -2 -2 -3 -5 -7 -11 -14 -15 -13 -11 -10 -12 -15 -18 -21 -20 -13 -3 7 5 -2 -9 -12 -10 -6 -3 -2 -5 -9 -12 -11 -6 0 4 4 1 -3 -5 -7 -8 -8 -7 -5 -4 -5 -5 -6 -6 -7 -8 -10 -12 -14 -16 -17 -16 -13 -9 -6 -6 -6 -6 -6 -7 -8 -8 -8 -7 -6 -7 -7 -7 -7 -8 -10 -13 -17 -20 -20 -16 -10 -4 -3 -6 -10 -11 -9 -5 -3 -4 -8 -12 -15 -16 -14 -11 -9 -9 -10 -12 -13 -15 -14 -12 -9 -7 -5 -0 4 7 8 5 3 1 1 0 -1 -3 -7 -11 -16 -22 -26 -27 -22 -15 -12 -12 -13 -4 8 19 25 23 18 10 3 -4 -7 -8 -7 -5 -6 -8 -9 -10 -11 -11 -10 -8 -9 -14 -20 -24 -24 -20 -15 -11 -10 -11 -12 -13 -13 -14 -13 -12 -11 -11 -13 -14 -16 -18 -19 -20 -21 -22 -24 -26 -27 -27 -26 -25 -26 -27 -28 -26 -20 -16 -14 -16 -21 -24 -24 -24 -27 -31 -32 -31 -29 -26 -22 -19 -18 -18 -18 -18 -19 -19 -21 -24 -26 -27 -22 -13 -4 1 -4 -11 -18 -22 -26 -30 -32 -34 -34 -34 -33 -31 -27 -22 -20 -21 -25 -30 -32 -31 -29 -28 -29 -31 -30 -27 -26 -29 -31 -32 -31 -31 -33 -33 -30 -31 -32 -34 -35 -37 -38 -41 -43 -45 -44 -44 -44 -43 -41 -40 -39 -38 -35 -31 -28 -27 -25 -24 -25 -25 -22 -20 -20 -21 -20 -18 -21 -22 -21 -19 -21 -24 -27 -29 -29 -29 -28 -27 -27 -25 -26 -28 -29 -28 -26 -26 -28 -7 -6 -7 -8 -10 -12 -14 -14 -11 -4 -3 -7 -10 -10 -5 -1 -1 -6 -10 -8 -6 -5 -4 -2 -5 -10 -13 -10 -3 3 4 4 4 4 4 4 5 6 6 6 5 6 6 5 3 3 3 3 3 4 5 4 2 -1 -3 -2 1 4 2 -0 -1 -0 2 2 2 -1 -4 -6 -5 -0 6 7 5 1 -2 -2 -3 -4 -7 -12 -15 -16 -14 -9 -4 -0 1 0 1 2 2 2 2 3 3 3 2 1 1 1 2 1 -0 -1 -2 -2 -3 -4 -5 -5 -4 -4 -4 -6 -10 -13 -15 -17 -18 -16 -15 -16 -17 -19 -20 -17 -9 3 8 3 -4 -10 -11 -9 -6 -4 -2 -5 -9 -12 -12 -8 -2 2 3 1 -1 -4 -6 -8 -9 -8 -6 -5 -5 -5 -5 -6 -7 -8 -9 -11 -14 -17 -18 -16 -12 -8 -5 -5 -6 -6 -6 -7 -8 -9 -8 -8 -7 -7 -6 -6 -7 -9 -11 -14 -17 -19 -19 -16 -10 -5 -4 -6 -9 -10 -8 -4 -3 -5 -10 -14 -17 -16 -14 -10 -8 -8 -9 -11 -13 -14 -13 -12 -9 -7 -4 0 4 7 7 5 3 2 2 1 -1 -4 -10 -16 -21 -25 -28 -26 -20 -15 -13 -15 -11 -0 13 25 25 20 13 5 -1 -5 -8 -9 -8 -7 -7 -8 -9 -12 -11 -10 -8 -9 -14 -19 -25 -27 -24 -18 -13 -10 -11 -11 -12 -13 -14 -14 -14 -12 -10 -10 -12 -14 -16 -18 -19 -20 -21 -23 -25 -26 -27 -27 -27 -27 -28 -28 -27 -23 -18 -15 -15 -19 -22 -23 -22 -25 -30 -32 -32 -31 -28 -24 -22 -21 -20 -19 -17 -15 -16 -19 -23 -26 -27 -24 -16 -6 2 -2 -9 -15 -20 -24 -27 -31 -34 -34 -34 -33 -31 -28 -24 -21 -21 -23 -28 -31 -31 -30 -30 -33 -33 -32 -29 -26 -26 -26 -28 -30 -31 -32 -32 -29 -33 -36 -37 -36 -34 -35 -37 -39 -40 -42 -43 -44 -43 -42 -41 -39 -37 -34 -32 -30 -28 -26 -24 -24 -24 -22 -21 -21 -21 -20 -18 -20 -22 -22 -19 -20 -23 -26 -27 -27 -28 -29 -29 -28 -26 -26 -27 -26 -26 -26 -27 -30