aboutsummaryrefslogtreecommitdiff
path: root/c/simd-unicode/unicode.h
diff options
context:
space:
mode:
Diffstat (limited to 'c/simd-unicode/unicode.h')
-rw-r--r--c/simd-unicode/unicode.h3038
1 files changed, 3038 insertions, 0 deletions
diff --git a/c/simd-unicode/unicode.h b/c/simd-unicode/unicode.h
new file mode 100644
index 0000000..7bcc70d
--- /dev/null
+++ b/c/simd-unicode/unicode.h
@@ -0,0 +1,3038 @@
+#ifndef UNICODE_H
+#define UNICODE_H
+
+#include <stdint.h>
+
+#define CCCBLKSIZ (64)
+#define CCCBLKSIZ_LOG2 (6)
+
+typedef uint_least32_t rune;
+typedef uint8_t uprop_ccc_t;
+
+#define CCC_NR ((uprop_ccc_t)0) /* Not Reordered */
+#define CCC_OV ((uprop_ccc_t)1) /* Overlay */
+#define CCC_HANR ((uprop_ccc_t)6) /* Han Reading */
+#define CCC_NK ((uprop_ccc_t)7) /* Nukta */
+#define CCC_KV ((uprop_ccc_t)8) /* Kana Voicing */
+#define CCC_VR ((uprop_ccc_t)9) /* Virama */
+#define CCC_10 ((uprop_ccc_t)10) /* CCC10 */
+#define CCC_11 ((uprop_ccc_t)11) /* CCC11 */
+#define CCC_12 ((uprop_ccc_t)12) /* CCC12 */
+#define CCC_13 ((uprop_ccc_t)13) /* CCC13 */
+#define CCC_14 ((uprop_ccc_t)14) /* CCC14 */
+#define CCC_15 ((uprop_ccc_t)15) /* CCC15 */
+#define CCC_16 ((uprop_ccc_t)16) /* CCC16 */
+#define CCC_17 ((uprop_ccc_t)17) /* CCC17 */
+#define CCC_18 ((uprop_ccc_t)18) /* CCC18 */
+#define CCC_19 ((uprop_ccc_t)19) /* CCC19 */
+#define CCC_20 ((uprop_ccc_t)20) /* CCC20 */
+#define CCC_21 ((uprop_ccc_t)21) /* CCC21 */
+#define CCC_22 ((uprop_ccc_t)22) /* CCC22 */
+#define CCC_23 ((uprop_ccc_t)23) /* CCC23 */
+#define CCC_24 ((uprop_ccc_t)24) /* CCC24 */
+#define CCC_25 ((uprop_ccc_t)25) /* CCC25 */
+#define CCC_26 ((uprop_ccc_t)26) /* CCC26 */
+#define CCC_27 ((uprop_ccc_t)27) /* CCC27 */
+#define CCC_28 ((uprop_ccc_t)28) /* CCC28 */
+#define CCC_29 ((uprop_ccc_t)29) /* CCC29 */
+#define CCC_30 ((uprop_ccc_t)30) /* CCC30 */
+#define CCC_31 ((uprop_ccc_t)31) /* CCC31 */
+#define CCC_32 ((uprop_ccc_t)32) /* CCC32 */
+#define CCC_33 ((uprop_ccc_t)33) /* CCC33 */
+#define CCC_34 ((uprop_ccc_t)34) /* CCC34 */
+#define CCC_35 ((uprop_ccc_t)35) /* CCC35 */
+#define CCC_36 ((uprop_ccc_t)36) /* CCC36 */
+#define CCC_84 ((uprop_ccc_t)84) /* CCC84 */
+#define CCC_91 ((uprop_ccc_t)91) /* CCC91 */
+#define CCC_103 ((uprop_ccc_t)103) /* CCC103 */
+#define CCC_107 ((uprop_ccc_t)107) /* CCC107 */
+#define CCC_118 ((uprop_ccc_t)118) /* CCC118 */
+#define CCC_122 ((uprop_ccc_t)122) /* CCC122 */
+#define CCC_129 ((uprop_ccc_t)129) /* CCC129 */
+#define CCC_130 ((uprop_ccc_t)130) /* CCC130 */
+#define CCC_132 ((uprop_ccc_t)132) /* CCC132 */
+#define CCC_133 ((uprop_ccc_t)133) /* CCC133 */
+#define CCC_ATBL ((uprop_ccc_t)200) /* Attached Below Left */
+#define CCC_ATB ((uprop_ccc_t)202) /* Attached Below */
+#define CCC_ATA ((uprop_ccc_t)214) /* Attached Above */
+#define CCC_ATAR ((uprop_ccc_t)216) /* Attached Above Right */
+#define CCC_BL ((uprop_ccc_t)218) /* Below Left */
+#define CCC_B ((uprop_ccc_t)220) /* Below */
+#define CCC_BR ((uprop_ccc_t)222) /* Below Right */
+#define CCC_L ((uprop_ccc_t)224) /* Left */
+#define CCC_R ((uprop_ccc_t)226) /* Right */
+#define CCC_AL ((uprop_ccc_t)228) /* Above Left */
+#define CCC_A ((uprop_ccc_t)230) /* Above */
+#define CCC_AR ((uprop_ccc_t)232) /* Above Right */
+#define CCC_DB ((uprop_ccc_t)233) /* Double Below */
+#define CCC_DA ((uprop_ccc_t)234) /* Double Above */
+#define CCC_IS ((uprop_ccc_t)240) /* Iota Subscript */
+
+static const uint8_t stage1[] = {
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 2, 0, 0,
+ 0, 0, 3, 0, 0, 0, 4, 5, 6, 7, 0, 8, 9, 10, 0, 11,
+ 12, 13, 14, 15, 16, 17, 16, 18, 16, 19, 16, 19, 16, 19, 0, 19,
+ 16, 20, 16, 19, 21, 19, 0, 22, 23, 24, 25, 26, 27, 28, 29, 30,
+ 31, 0, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 33, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 0, 35,
+ 0, 0, 36, 0, 37, 0, 0, 0, 38, 39, 40, 41, 42, 43, 44, 45,
+ 46, 0, 0, 47, 0, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 49, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 50, 0, 51, 0, 52, 0, 0, 0, 0, 0, 0, 0, 0,
+ 53, 0, 54, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 55, 56, 57, 0, 0, 0, 0,
+ 58, 0, 0, 59, 60, 61, 62, 63, 0, 0, 64, 65, 0, 0, 0, 66,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 67, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 68, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 69, 0, 0, 0, 70, 0, 71, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 72, 0, 0, 73, 0, 0, 0, 0,
+ 0, 0, 0, 0, 74, 0, 0, 0, 0, 0, 75, 76, 0, 77, 78, 0,
+ 0, 79, 80, 0, 81, 62, 0, 82, 83, 0, 0, 84, 85, 86, 0, 0,
+ 0, 87, 0, 88, 0, 0, 51, 89, 51, 0, 90, 0, 91, 0, 0, 0,
+ 80, 0, 0, 0, 92, 93, 0, 94, 95, 96, 97, 0, 0, 0, 0, 0,
+ 51, 0, 0, 0, 0, 98, 99, 0, 0, 0, 0, 0, 0, 100, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101, 102, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 103,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 104, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 105, 106, 0, 0, 107, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 108, 0, 109, 0, 102, 0, 0, 0, 0, 0, 110, 111, 0, 0, 0, 0,
+ 0, 0, 0, 112, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 113, 0, 114, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+};
+
+static const uprop_ccc_t stage2[][64] = {
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_AR, CCC_B, CCC_B,
+ CCC_B, CCC_B, CCC_AR, CCC_ATAR,
+ CCC_B, CCC_B, CCC_B, CCC_B,
+ CCC_B, CCC_ATB, CCC_ATB, CCC_B,
+ CCC_B, CCC_B, CCC_B, CCC_ATB,
+ CCC_ATB, CCC_B, CCC_B, CCC_B,
+ CCC_B, CCC_B, CCC_B, CCC_B,
+ CCC_B, CCC_B, CCC_B, CCC_B,
+ CCC_OV, CCC_OV, CCC_OV, CCC_OV,
+ CCC_OV, CCC_B, CCC_B, CCC_B,
+ CCC_B, CCC_A, CCC_A, CCC_A},
+ {CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_IS, CCC_A, CCC_B,
+ CCC_B, CCC_B, CCC_A, CCC_A,
+ CCC_A, CCC_B, CCC_B, CCC_NR,
+ CCC_A, CCC_A, CCC_A, CCC_B,
+ CCC_B, CCC_B, CCC_B, CCC_A,
+ CCC_AR, CCC_B, CCC_B, CCC_A,
+ CCC_DB, CCC_DA, CCC_DA, CCC_DB,
+ CCC_DA, CCC_DA, CCC_DB, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_B, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_B, CCC_A,
+ CCC_A, CCC_A, CCC_BR, CCC_B,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_B, CCC_B,
+ CCC_B, CCC_B, CCC_B, CCC_B,
+ CCC_A, CCC_A, CCC_B, CCC_A,
+ CCC_A, CCC_BR, CCC_AL, CCC_A,
+ CCC_10, CCC_11, CCC_12, CCC_13,
+ CCC_14, CCC_15, CCC_16, CCC_17,
+ CCC_18, CCC_19, CCC_19, CCC_20,
+ CCC_21, CCC_22, CCC_NR, CCC_23},
+ {CCC_NR, CCC_24, CCC_25, CCC_NR,
+ CCC_A, CCC_B, CCC_NR, CCC_18,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_30, CCC_31, CCC_32, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_27,
+ CCC_28, CCC_29, CCC_30, CCC_31,
+ CCC_32, CCC_33, CCC_34, CCC_A,
+ CCC_A, CCC_B, CCC_B, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_B, CCC_A, CCC_A, CCC_B,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_35, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_NR, CCC_NR, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_B,
+ CCC_A, CCC_NR, CCC_NR, CCC_A,
+ CCC_A, CCC_NR, CCC_B, CCC_A,
+ CCC_A, CCC_B, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_36, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_A, CCC_B, CCC_A, CCC_A,
+ CCC_B, CCC_A, CCC_A, CCC_B,
+ CCC_B, CCC_B, CCC_A, CCC_B,
+ CCC_B, CCC_A, CCC_B, CCC_A},
+ {CCC_A, CCC_A, CCC_B, CCC_A,
+ CCC_B, CCC_A, CCC_B, CCC_A,
+ CCC_B, CCC_A, CCC_A, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_B, CCC_A,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_B, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_NR, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_NR, CCC_A, CCC_A, CCC_A,
+ CCC_NR, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_B, CCC_B, CCC_B,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_A, CCC_B, CCC_B, CCC_B,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_B,
+ CCC_B, CCC_B, CCC_B, CCC_B,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_NR, CCC_B,
+ CCC_A, CCC_A, CCC_B, CCC_A,
+ CCC_A, CCC_B, CCC_A, CCC_A,
+ CCC_A, CCC_B, CCC_B, CCC_B,
+ CCC_27, CCC_28, CCC_29, CCC_A,
+ CCC_A, CCC_A, CCC_B, CCC_A,
+ CCC_A, CCC_B, CCC_B, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NK, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_VR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_A, CCC_B, CCC_A,
+ CCC_A, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_VR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_A, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_VR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_VR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_84, CCC_91, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_VR,
+ CCC_VR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_VR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_103, CCC_103, CCC_VR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_107, CCC_107, CCC_107, CCC_107,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_118, CCC_118, CCC_VR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_122, CCC_122, CCC_122, CCC_122,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_B, CCC_B, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_B, CCC_NR, CCC_B,
+ CCC_NR, CCC_ATAR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_129, CCC_130, CCC_NR,
+ CCC_132, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_130, CCC_130,
+ CCC_130, CCC_130, CCC_NR, CCC_NR},
+ {CCC_130, CCC_NR, CCC_A, CCC_A,
+ CCC_VR, CCC_NR, CCC_A, CCC_A,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_B, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NK,
+ CCC_NR, CCC_VR, CCC_VR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_B, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_A, CCC_A, CCC_A,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_VR, CCC_VR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_VR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_VR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_A, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_AL, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_BR, CCC_A, CCC_B,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_A,
+ CCC_B, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_VR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_NR, CCC_NR, CCC_B},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_B, CCC_B, CCC_B,
+ CCC_B, CCC_B, CCC_B, CCC_A,
+ CCC_A, CCC_B, CCC_NR, CCC_B},
+ {CCC_B, CCC_A, CCC_A, CCC_B,
+ CCC_B, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_B, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NK, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_VR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_A,
+ CCC_B, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_VR, CCC_VR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NK, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_VR, CCC_VR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NK,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_A, CCC_A, CCC_A, CCC_NR,
+ CCC_OV, CCC_B, CCC_B, CCC_B,
+ CCC_B, CCC_B, CCC_A, CCC_A,
+ CCC_B, CCC_B, CCC_B, CCC_B,
+ CCC_A, CCC_NR, CCC_OV, CCC_OV,
+ CCC_OV, CCC_OV, CCC_OV, CCC_OV,
+ CCC_OV, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_B, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_A, CCC_NR, CCC_NR, CCC_NR,
+ CCC_A, CCC_A, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_A, CCC_A, CCC_B, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_B, CCC_A,
+ CCC_A, CCC_DA, CCC_ATA, CCC_B,
+ CCC_ATB, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_AR, CCC_AL,
+ CCC_AL, CCC_B, CCC_BL, CCC_A,
+ CCC_DB, CCC_B, CCC_A, CCC_B},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_A, CCC_A, CCC_OV, CCC_OV,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_OV, CCC_OV, CCC_OV, CCC_A,
+ CCC_A, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_A, CCC_NR, CCC_NR,
+ CCC_NR, CCC_OV, CCC_OV, CCC_A,
+ CCC_B, CCC_A, CCC_OV, CCC_OV,
+ CCC_B, CCC_B, CCC_B, CCC_B,
+ CCC_A, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_A,
+ CCC_A, CCC_A, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_VR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_BL, CCC_AL,
+ CCC_AR, CCC_BR, CCC_L, CCC_L,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_KV, CCC_KV, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_A,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_A, CCC_A,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_A, CCC_A, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_VR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_VR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_VR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_B,
+ CCC_B, CCC_B, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_VR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NK,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_VR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_A, CCC_NR, CCC_A, CCC_A,
+ CCC_B, CCC_NR, CCC_NR, CCC_A,
+ CCC_A, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_A, CCC_A},
+ {CCC_NR, CCC_A, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_VR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_VR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_26, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_B,
+ CCC_B, CCC_B, CCC_B, CCC_B,
+ CCC_B, CCC_B, CCC_A, CCC_A,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_B, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_B, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_B, CCC_NR, CCC_A,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_A, CCC_OV, CCC_B, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_VR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_A, CCC_B, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_A,
+ CCC_A, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_B, CCC_B, CCC_B},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_B, CCC_B,
+ CCC_A, CCC_A, CCC_A, CCC_B,
+ CCC_A, CCC_B, CCC_B, CCC_B,
+ CCC_B, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_A, CCC_B,
+ CCC_A, CCC_B, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_VR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_VR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_VR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_VR, CCC_NK, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_A, CCC_A, CCC_A, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_VR,
+ CCC_VR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_VR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NK, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_VR, CCC_NK, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NK, CCC_VR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NK,
+ CCC_NK, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_VR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_NR, CCC_NR, CCC_NR,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_VR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NK, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_A, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_VR, CCC_NK,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NK, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_VR, CCC_NK,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_VR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_VR, CCC_VR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NK,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_VR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_VR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_VR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_VR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NK, CCC_NR,
+ CCC_VR, CCC_VR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_VR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_VR, CCC_VR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_OV, CCC_OV, CCC_OV, CCC_OV,
+ CCC_OV, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_HANR, CCC_HANR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_OV, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_ATAR, CCC_ATAR, CCC_OV,
+ CCC_OV, CCC_OV, CCC_NR, CCC_NR,
+ CCC_NR, CCC_R, CCC_ATAR, CCC_ATAR,
+ CCC_ATAR, CCC_ATAR, CCC_ATAR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_B,
+ CCC_B, CCC_B, CCC_B, CCC_B},
+ {CCC_B, CCC_B, CCC_B, CCC_NR,
+ CCC_NR, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_B, CCC_B,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_A, CCC_A,
+ CCC_A, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_NR,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_NR, CCC_NR, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_NR, CCC_A,
+ CCC_A, CCC_NR, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_A, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_A,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_A, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_AR, CCC_AR, CCC_B, CCC_A,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_B, CCC_B, CCC_B, CCC_B,
+ CCC_B, CCC_B, CCC_B, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+ {CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_A, CCC_A, CCC_A, CCC_A,
+ CCC_A, CCC_A, CCC_NK, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR,
+ CCC_NR, CCC_NR, CCC_NR, CCC_NR},
+};
+
+#define u8byte1(x) (((x) & 0x80) == 0x00)
+#define u8byte2(x) (((x) & 0xE0) == 0xC0)
+#define u8byte3(x) (((x) & 0xF0) == 0xE0)
+#define u8byte4(x) (((x) & 0xF8) == 0xF0)
+
+static int
+u8tor(rune *ch, const char *s)
+{
+ if (s[0] == 0) {
+ *ch = 0;
+ return 0;
+ } else if (u8byte1(s[0])) {
+ *ch = s[0];
+ return 1;
+ } else if (u8byte2(s[0])) {
+ *ch = ((s[0] & 0x1F) << 6)
+ | ((s[1] & 0x3F) << 0);
+ return 2;
+ } else if (u8byte3(s[0])) {
+ *ch = ((s[0] & 0x0F) << 12)
+ | ((s[1] & 0x3F) << 6)
+ | ((s[2] & 0x3F) << 0);
+ return 3;
+ } else if (u8byte4(s[0])) {
+ *ch = ((s[0] & 0x07) << 18)
+ | ((s[1] & 0x3F) << 12)
+ | ((s[2] & 0x3F) << 6)
+ | ((s[3] & 0x3F) << 0);
+ return 4;
+ }
+ __builtin_unreachable();
+}
+
+#endif /* !UNICODE_H */