/*---------------------------------------------------------------------------* Source File *---------------------------------------------------------------------------*/ #include #include #include "patterns.h" PRCPoint PrototypeListPointArray[PDIC_WHOLE_POINT_NUM] = { {7, 9}, {54, 48}, {-1, -1}, {51, 9}, {13, 53}, {-1, -1}, {29, 0}, {33, 62}, {-1, -1}, {0, 31}, {60, 32}, {-1, -1}, {29, 0}, {31, 62}, {-1, -1}, {34, 0}, {38, 63}, {-1, -1}, {6, 32}, {52, 26}, {-1, -1}, {1, 32}, {62, 32}, {-1, -1}, {24, 1}, {11, 15}, {17, 52}, {36, 63}, {51, 37}, {43, 3}, {24, 0}, {-1, -1}, {32, 1}, {43, 8}, {50, 27}, {42, 62}, {26, 61}, {14, 39}, {12, 19}, {28, 3}, {-1, -1}, {31, 4}, {17, 22}, {19, 50}, {32, 59}, {45, 50}, {44, 11}, {32, 2}, {-1, -1}, {48, 0}, {15, 62}, {-1, -1}, {31, 0}, {32, 62}, {-1, -1}, {22, 10}, {36, 0}, {40, 63}, {-1, -1}, {18, 17}, {33, 0}, {33, 54}, {-1, -1}, {24, 63}, {42, 63}, {-1, -1}, {18, 19}, {13, 7}, {30, 0}, {47, 21}, {13, 63}, {50, 62}, {-1, -1}, {16, 11}, {24, 0}, {44, 5}, {46, 24}, {26, 28}, {51, 50}, {32, 63}, {11, 52}, {-1, -1}, {33, 0}, {12, 44}, {50, 44}, {-1, -1}, {34, 9}, {36, 63}, {-1, -1}, {57, 38}, {4, 40}, {29, 0}, {37, 63}, {-1, -1}, {14, 0}, {15, 35}, {33, 30}, {48, 45}, {37, 63}, {17, 55}, {-1, -1}, {16, 12}, {44, 12}, {-1, -1}, {15, 2}, {49, 0}, {-1, -1}, {12, 2}, {16, 31}, {34, 28}, {50, 44}, {36, 63}, {14, 57}, {-1, -1}, {29, 0}, {19, 30}, {20, 55}, {29, 63}, {44, 51}, {37, 36}, {19, 38}, {-1, -1}, {42, 9}, {37, 0}, {20, 4}, {14, 44}, {31, 63}, {49, 54}, {43, 34}, {18, 36}, {-1, -1}, {13, 0}, {15, 17}, {-1, -1}, {19, 4}, {50, 3}, {34, 63}, {-1, -1}, {10, 1}, {53, 0}, {25, 62}, {-1, -1}, {14, 1}, {49, 1}, {24, 62}, {-1, -1}, {25, 28}, {39, 37}, {-1, -1}, {39, 11}, {23, 0}, {14, 16}, {44, 37}, {48, 53}, {37, 63}, {19, 58}, {16, 38}, {43, 17}, {-1, -1}, {39, 21}, {45, 12}, {39, 1}, {20, 7}, {21, 23}, {44, 46}, {40, 62}, {28, 61}, {22, 42}, {40, 19}, {-1, -1}, {24, 27}, {16, 12}, {20, 1}, {35, 4}, {39, 17}, {20, 37}, {23, 62}, {46, 52}, {31, 30}, {-1, -1}, {46, 16}, {32, 0}, {15, 12}, {24, 31}, {46, 19}, {36, 61}, {-1, -1}, {46, 15}, {43, 28}, {29, 29}, {18, 22}, {15, 8}, {33, 0}, {45, 10}, {38, 62}, {-1, -1}, {61, 11}, {0, 31}, {61, 50}, {-1, -1}, {0, 21}, {61, 19}, {-1, -1}, {0, 43}, {60, 42}, {-1, -1}, {0, 8}, {63, 30}, {0, 54}, {-1, -1}, {45, 18}, {34, 0}, {15, 5}, {6, 20}, {4, 49}, {10, 60}, {25, 59}, {41, 24}, {42, 39}, {58, 62}, {-1, -1}, {15, 0}, {18, 58}, {16, 44}, {29, 33}, {39, 36}, {47, 52}, {32, 63}, {17, 56}, {-1, -1}, {19, 0}, {22, 60}, {-1, -1}, {22, 36}, {43, 45}, {36, 62}, {23, 61}, {-1, -1}, {12, 56}, {29, 40}, {34, 0}, {23, 53}, {29, 63}, {35, 58}, {32, 46}, {49, 52}, {-1, -1}, {55, 18}, {44, 4}, {23, 0}, {7, 15}, {6, 34}, {16, 54}, {35, 63}, {56, 49}, {-1, -1}, {35, 41}, {21, 26}, {7, 38}, {20, 63}, {32, 52}, {35, 0}, {40, 55}, {52, 60}, {-1, -1}, {40, 28}, {19, 25}, {10, 41}, {27, 56}, {41, 46}, {-1, -1}, {46, 0}, {42, 44}, {52, 61}, {-1, -1}, {10, 31}, {51, 27}, {52, 14}, {40, 3}, {23, 2}, {7, 16}, {5, 44}, {26, 62}, {59, 56}, {-1, -1}, {46, 22}, {39, 2}, {25, 5}, {36, 49}, {28, 62}, {-1, -1}, {14, 35}, {43, 36}, {-1, -1}, {18, 39}, {40, 19}, {39, 0}, {28, 56}, {37, 62}, {32, 33}, {43, 34}, {-1, -1}, {39, 13}, {36, 2}, {24, 0}, {15, 16}, {24, 24}, {41, 9}, {38, 56}, {24, 62}, {23, 44}, {46, 26}, {-1, -1}, {28, 0}, {34, 5}, {15, 13}, {16, 27}, {38, 25}, {47, 16}, {41, 8}, {-1, -1}, {24, 32}, {20, 40}, {47, 42}, {51, 54}, {21, 62}, {11, 51}, {21, 42}, {-1, -1}, {17, 0}, {19, 62}, {25, 33}, {32, 34}, {34, 53}, {43, 62}, {-1, -1}, {26, 0}, {33, 5}, {-1, -1}, {31, 20}, {35, 60}, {-1, -1}, {31, 21}, {31, 62}, {-1, -1}, {26, 0}, {37, 9}, {-1, -1}, {19, 24}, {34, 14}, {29, 56}, {36, 63}, {44, 51}, {-1, -1}, {29, 1}, {40, 10}, {-1, -1}, {25, 0}, {33, 6}, {-1, -1}, {19, 22}, {29, 19}, {28, 57}, {41, 60}, {-1, -1}, {12, 60}, {40, 16}, {32, 54}, {40, 63}, {51, 54}, {-1, -1}, {41, 1}, {48, 6}, {-1, -1}, {32, 0}, {38, 6}, {-1, -1}, {38, 17}, {40, 57}, {28, 62}, {20, 52}, {-1, -1}, {23, 18}, {36, 11}, {37, 40}, {31, 63}, {21, 60}, {21, 44}, {43, 30}, {-1, -1}, {26, 0}, {40, 8}, {-1, -1}, {26, 0}, {35, 5}, {-1, -1}, {20, 19}, {35, 20}, {38, 52}, {29, 63}, {27, 47}, {42, 33}, {-1, -1}, {21, 0}, {22, 60}, {-1, -1}, {41, 30}, {18, 42}, {43, 60}, {-1, -1}, {17, 0}, {18, 60}, {-1, -1}, {35, 31}, {17, 50}, {-1, -1}, {27, 46}, {47, 63}, {-1, -1}, {8, 27}, {32, 18}, {34, 1}, {23, 3}, {20, 13}, {22, 63}, {21, 36}, {39, 25}, {41, 36}, {22, 39}, {39, 58}, {53, 57}, {-1, -1}, {17, 61}, {38, 20}, {33, 0}, {29, 47}, {44, 62}, {-1, -1}, {2, 0}, {4, 62}, {8, 23}, {20, 5}, {27, 17}, {27, 55}, {29, 23}, {43, 4}, {58, 59}, {-1, -1}, {0, 21}, {4, 8}, {16, 9}, {18, 53}, {18, 21}, {30, 11}, {38, 56}, {35, 25}, {48, 12}, {58, 51}, {63, 50}, {-1, -1}, {3, 2}, {9, 62}, {13, 21}, {38, 0}, {48, 6}, {58, 58}, {-1, -1}, {0, 18}, {3, 3}, {19, 7}, {17, 59}, {29, 13}, {44, 10}, {50, 53}, {63, 58}, {-1, -1}, {29, 0}, {10, 9}, {1, 30}, {5, 45}, {25, 63}, {51, 56}, {61, 36}, {47, 9}, {29, 0}, {19, 9}, {26, 22}, {59, 17}, {-1, -1}, {31, 12}, {3, 20}, {0, 34}, {11, 47}, {44, 51}, {63, 31}, {54, 16}, {31, 10}, {-1, -1}, {19, 0}, {29, 60}, {-1, -1}, {22, 9}, {24, 3}, {36, 6}, {44, 19}, {34, 30}, {21, 30}, {-1, -1}, {17, 0}, {26, 63}, {20, 20}, {36, 3}, {45, 10}, {36, 34}, {21, 33}, {-1, -1}, {39, 16}, {37, 1}, {27, 0}, {17, 21}, {27, 26}, {36, 18}, {29, 37}, {34, 62}, {41, 63}, {44, 53}, {36, 32}, {44, 32}, {-1, -1}, {40, 11}, {24, 0}, {9, 16}, {21, 30}, {41, 26}, {-1, -1}, {44, 7}, {51, 63}, {-1, -1}, {9, 0}, {15, 63}, {21, 15}, {36, 10}, {53, 15}, {-1, -1}, {0, 57}, {9, 52}, {33, 2}, {32, 19}, {50, 27}, {46, 54}, {63, 57}, {-1, -1}, {47, 18}, {41, 2}, {19, 1}, {12, 13}, {16, 26}, {44, 35}, {49, 48}, {34, 63}, {17, 60}, {12, 48}, {-1, -1}, {0, 56}, {34, 4}, {29, 24}, {47, 30}, {52, 46}, {38, 57}, {13, 51}, {24, 58}, {62, 53}, {-1, -1}, {11, 20}, {49, 13}, {-1, -1}, {35, 0}, {27, 45}, {32, 59}, {42, 63}, {48, 56}, {-1, -1}, {32, 0}, {23, 56}, {34, 63}, {51, 49}, {-1, -1}, {12, 23}, {47, 21}, {-1, -1}, {11, 62}, {33, 21}, {36, 0}, {29, 50}, {35, 62}, {55, 53}, {-1, -1}, {6, 23}, {52, 22}, {-1, -1}, {6, 0}, {8, 52}, {22, 62}, {30, 57}, {46, 1}, {48, 46}, {59, 60}, {-1, -1}, {1, 20}, {2, 4}, {17, 2}, {14, 54}, {28, 61}, {52, 1}, {45, 38}, {49, 52}, {62, 58}, {-1, -1}, {6, 5}, {36, 62}, {55, 0}, {-1, -1}, {0, 21}, {12, 15}, {25, 51}, {61, 11}, {-1, -1}, {0, 7}, {24, 54}, {32, 10}, {54, 56}, {60, 7}, {-1, -1}, {6, 4}, {0, 30}, {10, 56}, {22, 48}, {25, 32}, {36, 53}, {53, 54}, {62, 30}, {47, 10}, {-1, -1}, {0, 18}, {7, 11}, {13, 15}, {10, 40}, {21, 52}, {32, 40}, {33, 23}, {40, 47}, {57, 46}, {61, 32}, {53, 10}, {63, 14}, {-1, -1}, {4, 0}, {55, 49}, {-1, -1}, {49, 1}, {13, 59}, {-1, -1}, {49, 1}, {14, 60}, {-1, -1}, {4, 7}, {55, 61}, {-1, -1}, {0, 3}, {18, 8}, {32, 25}, {31, 38}, {3, 56}, {-1, -1}, {51, 6}, {30, 32}, {31, 50}, {41, 57}, {62, 53}, {-1, -1}, {17, 0}, {33, 23}, {-1, -1}, {45, 4}, {18, 63}, {-1, -1}, {49, 0}, {16, 62}, {-1, -1}, {13, 5}, {33, 28}, {-1, -1}, {11, 9}, {15, 0}, {23, 4}, {29, 32}, {44, 13}, {46, 55}, {34, 63}, {21, 60}, {28, 44}, {52, 30}, {-1, -1}, {8, 3}, {54, 0}, {9, 59}, {53, 61}, {-1, -1}, {20, 27}, {41, 43}, {-1, -1}, {16, 4}, {34, 3}, {25, 23}, {34, 22}, {38, 33}, {32, 56}, {22, 62}, {24, 43}, {45, 26}, {-1, -1}, {7, 21}, {40, 5}, {-1, -1}, {29, 0}, {28, 51}, {-1, -1}, {39, 23}, {28, 52}, {14, 50}, {22, 30}, {40, 26}, {56, 43}, {47, 63}, {-1, -1}, {1, 10}, {2, 39}, {15, 52}, {-1, -1}, {47, 22}, {62, 38}, {-1, -1}, {27, 0}, {40, 8}, {-1, -1}, {13, 30}, {29, 21}, {49, 27}, {47, 45}, {27, 61}, {-1, -1}, {16, 0}, {29, 10}, {-1, -1}, {10, 26}, {29, 23}, {9, 63}, {20, 50}, {34, 61}, {53, 52}, {-1, -1}, {0, 18}, {24, 5}, {-1, -1}, {21, 0}, {23, 61}, {14, 53}, {31, 36}, {53, 31}, {63, 48}, {47, 62}, {-1, -1}, {50, 13}, {61, 19}, {-1, -1}, {0, 24}, {35, 25}, {36, 42}, {22, 57}, {-1, -1}, {21, 0}, {11, 59}, {-1, -1}, {40, 20}, {62, 43}, {-1, -1}, {17, 13}, {36, 5}, {-1, -1}, {19, 30}, {44, 13}, {-1, -1}, {28, 0}, {42, 32}, {-1, -1}, {22, 51}, {28, 60}, {41, 61}, {-1, -1}, {40, 0}, {21, 28}, {40, 61}, {-1, -1}, {9, 9}, {8, 48}, {-1, -1}, {26, 24}, {54, 21}, {-1, -1}, {32, 0}, {41, 42}, {29, 61}, {-1, -1}, {8, 3}, {39, 7}, {-1, -1}, {11, 54}, {31, 62}, {54, 48}, {-1, -1}, {4, 22}, {54, 6}, {-1, -1}, {32, 0}, {54, 29}, {-1, -1}, {25, 53}, {38, 63}, {57, 59}, {-1, -1}, {8, 0}, {9, 43}, {18, 61}, {39, 58}, {53, 40}, {-1, -1}, {9, 20}, {52, 9}, {-1, -1}, {42, 0}, {44, 30}, {39, 38}, {31, 34}, {36, 26}, {44, 29}, {45, 62}, {-1, -1}, {1, 36}, {30, 17}, {56, 11}, {-1, -1}, {40, 1}, {38, 37}, {-1, -1}, {16, 16}, {24, 56}, {37, 60}, {61, 53}, {-1, -1}, {18, 5}, {44, 0}, {7, 41}, {54, 20}, {37, 45}, {39, 57}, {51, 62}, {-1, -1}, {0, 18}, {28, 9}, {-1, -1}, {22, 0}, {13, 60}, {-1, -1}, {28, 32}, {47, 29}, {-1, -1}, {35, 49}, {45, 56}, {62, 50}, {-1, -1}, {5, 21}, {55, 8}, {-1, -1}, {33, 1}, {18, 38}, {38, 30}, {55, 42}, {44, 60}, {27, 62}, {-1, -1}, {0, 34}, {40, 13}, {56, 14}, {61, 29}, {44, 50}, {-1, -1}, {7, 24}, {55, 0}, {37, 38}, {48, 63}, {-1, -1}, {5, 1}, {19, 26}, {-1, -1}, {43, 13}, {21, 29}, {9, 52}, {29, 63}, {57, 49}, {-1, -1}, {3, 16}, {29, 6}, {-1, -1}, {26, 0}, {16, 47}, {-1, -1}, {42, 14}, {57, 26}, {-1, -1}, {47, 29}, {51, 60}, {32, 56}, {34, 45}, {60, 56}, {-1, -1}, {6, 0}, {2, 63}, {-1, -1}, {22, 18}, {56, 14}, {-1, -1}, {26, 52}, {42, 60}, {62, 52}, {-1, -1}, {8, 3}, {16, 51}, {-1, -1}, {33, 4}, {21, 39}, {10, 53}, {0, 52}, {11, 25}, {41, 15}, {53, 26}, {53, 53}, {37, 57}, {41, 47}, {62, 53}, {-1, -1}, {16, 1}, {18, 57}, {-1, -1}, {0, 30}, {14, 23}, {7, 56}, {23, 29}, {53, 23}, {52, 59}, {36, 54}, {45, 47}, {62, 56}, {-1, -1}, {21, 10}, {14, 54}, {2, 45}, {12, 16}, {49, 5}, {62, 21}, {63, 36}, {47, 56}, {-1, -1}, {4, 5}, {4, 60}, {-1, -1}, {21, 14}, {52, 10}, {-1, -1}, {43, 0}, {54, 54}, {46, 63}, {25, 55}, {31, 47}, {61, 55}, {-1, -1}, {0, 20}, {24, 6}, {12, 34}, {20, 56}, {34, 49}, {43, 20}, {63, 27}, {-1, -1}, {8, 3}, {27, 12}, {17, 25}, {32, 40}, {27, 55}, {14, 53}, {-1, -1}, {3, 34}, {2, 59}, {-1, -1}, {42, 36}, {62, 59}, {-1, -1}, {0, 41}, {13, 8}, {63, 52}, {-1, -1}, {0, 3}, {7, 57}, {-1, -1}, {18, 6}, {48, 3}, {-1, -1}, {19, 27}, {45, 19}, {-1, -1}, {37, 7}, {46, 56}, {35, 60}, {23, 49}, {22, 43}, {42, 42}, {62, 53}, {-1, -1}, {10, 10}, {44, 8}, {-1, -1}, {18, 27}, {41, 21}, {-1, -1}, {32, 0}, {39, 58}, {28, 62}, {14, 47}, {34, 42}, {52, 53}, {-1, -1}, {0, 11}, {22, 3}, {23, 28}, {11, 58}, {5, 45}, {17, 29}, {62, 25}, {-1, -1}, {47, 3}, {54, 34}, {46, 60}, {-1, -1}, {0, 23}, {26, 14}, {-1, -1}, {23, 4}, {23, 41}, {16, 45}, {14, 35}, {21, 33}, {24, 52}, {42, 59}, {54, 44}, {-1, -1}, {48, 21}, {62, 32}, {-1, -1}, {12, 1}, {23, 49}, {-1, -1}, {35, 6}, {19, 53}, {10, 60}, {3, 51}, {13, 27}, {45, 18}, {59, 33}, {51, 62}, {-1, -1}, {26, 0}, {28, 61}, {41, 61}, {50, 44}, {-1, -1}, {13, 20}, {37, 17}, {-1, -1}, {13, 38}, {39, 33}, {-1, -1}, {6, 32}, {25, 17}, {52, 11}, {55, 27}, {43, 35}, {-1, -1}, {40, 1}, {39, 12}, {-1, -1}, {16, 9}, {36, 59}, {-1, -1}, {5, 9}, {32, 0}, {17, 55}, {7, 62}, {7, 37}, {32, 24}, {48, 29}, {54, 41}, {46, 60}, {34, 59}, {41, 49}, {59, 54}, {-1, -1}, {9, 6}, {12, 42}, {14, 23}, {25, 14}, {42, 14}, {53, 23}, {51, 38}, {37, 42}, {-1, -1}, {29, 0}, {36, 28}, {30, 63}, {-1, -1}, {8, 7}, {27, 0}, {12, 29}, {23, 17}, {37, 22}, {29, 37}, {20, 35}, {27, 32}, {26, 40}, {6, 63}, {21, 48}, {28, 58}, {34, 48}, {55, 59}, {-1, -1}, {24, 14}, {45, 10}, {-1, -1}, {24, 0}, {33, 57}, {22, 63}, {9, 53}, {9, 46}, {20, 44}, {53, 57}, {-1, -1}, {21, 0}, {38, 18}, {-1, -1}, {25, 20}, {19, 37}, {36, 34}, {46, 48}, {36, 63}, {17, 52}, {-1, -1}, {21, 1}, {20, 30}, {-1, -1}, {37, 17}, {45, 44}, {30, 61}, {-1, -1}, {14, 7}, {36, 0}, {11, 42}, {20, 30}, {41, 27}, {51, 46}, {41, 62}, {29, 60}, {31, 52}, {47, 54}, {-1, -1}, {20, 0}, {22, 59}, {-1, -1}, {1, 32}, {21, 18}, {8, 59}, {51, 15}, {39, 42}, {48, 62}, {61, 63}, {-1, -1}, {16, 8}, {41, 0}, {12, 40}, {30, 24}, {50, 31}, {47, 52}, {29, 60}, {-1, -1}, {21, 0}, {25, 54}, {-1, -1}, {3, 29}, {17, 24}, {12, 57}, {12, 45}, {30, 27}, {44, 19}, {56, 26}, {57, 50}, {44, 61}, {-1, -1}, {11, 19}, {46, 6}, {-1, -1}, {30, 0}, {21, 25}, {32, 26}, {35, 39}, {-1, -1}, {43, 24}, {21, 58}, {32, 63}, {53, 54}, {-1, -1}, {18, 0}, {2, 63}, {14, 42}, {33, 60}, {58, 43}, {-1, -1}, {34, 0}, {11, 63}, {61, 25}, {1, 25}, {60, 60}, {32, 1}, {-1, -1}, {0, 35}, {4, 20}, {19, 18}, {49, 47}, {63, 34}, {57, 18}, {42, 18}, {15, 44}, {2, 36}, {-1, -1}, {0, 24}, {35, 25}, {36, 42}, {22, 57}, {-1, -1}, {21, 0}, {11, 59}, {-1, -1}, {40, 20}, {62, 43}, {-1, -1}, {41, 14}, {50, 27}, {-1, -1}, {51, 9}, {59, 25}, {-1, -1}, {0, 17}, {41, 9}, {-1, -1}, {19, 25}, {40, 20}, {-1, -1}, {26, 5}, {40, 33}, {-1, -1}, {15, 48}, {22, 59}, {41, 51}, {-1, -1}, {48, 16}, {55, 26}, {-1, -1}, {55, 13}, {63, 27}, {-1, -1}, {34, 0}, {3, 36}, {37, 61}, {-1, -1}, {41, 7}, {50, 16}, {-1, -1}, {50, 2}, {58, 14}, {-1, -1}, {9, 7}, {10, 45}, {-1, -1}, {22, 28}, {48, 25}, {-1, -1}, {30, 0}, {38, 25}, {29, 62}, {-1, -1}, {44, 9}, {49, 16}, {-1, -1}, {50, 5}, {56, 17}, {-1, -1}, {4, 4}, {19, 1}, {33, 9}, {-1, -1}, {6, 51}, {20, 63}, {45, 54}, {-1, -1}, {46, 2}, {51, 11}, {-1, -1}, {52, 0}, {58, 11}, {-1, -1}, {1, 24}, {46, 8}, {-1, -1}, {26, 4}, {44, 30}, {-1, -1}, {17, 53}, {27, 60}, {43, 53}, {-1, -1}, {51, 5}, {58, 16}, {-1, -1}, {56, 2}, {62, 11}, {-1, -1}, {11, 0}, {10, 42}, {17, 61}, {32, 60}, {46, 46}, {-1, -1}, {36, 13}, {43, 23}, {-1, -1}, {44, 11}, {52, 19}, {-1, -1}, {0, 25}, {45, 12}, {-1, -1}, {33, 4}, {35, 33}, {28, 40}, {21, 35}, {26, 28}, {33, 31}, {35, 58}, {-1, -1}, {52, 14}, {56, 23}, {-1, -1}, {58, 11}, {63, 22}, {-1, -1}, {0, 38}, {49, 16}, {-1, -1}, {39, 8}, {39, 33}, {-1, -1}, {20, 17}, {17, 40}, {24, 55}, {54, 48}, {-1, -1}, {45, 8}, {54, 20}, {-1, -1}, {55, 8}, {61, 19}, {-1, -1}, {18, 5}, {44, 0}, {7, 41}, {54, 20}, {37, 45}, {39, 57}, {51, 62}, {-1, -1}, {45, 16}, {56, 30}, {-1, -1}, {55, 13}, {61, 26}, {-1, -1}, {0, 22}, {28, 11}, {-1, -1}, {22, 3}, {16, 15}, {18, 58}, {-1, -1}, {32, 34}, {51, 33}, {-1, -1}, {36, 55}, {44, 61}, {59, 52}, {-1, -1}, {51, 17}, {56, 25}, {-1, -1}, {58, 14}, {63, 23}, {-1, -1}, {1, 20}, {44, 6}, {-1, -1}, {25, 0}, {12, 38}, {30, 31}, {47, 40}, {43, 55}, {25, 58}, {-1, -1}, {48, 18}, {52, 24}, {-1, -1}, {55, 12}, {63, 24}, {-1, -1}, {0, 44}, {26, 25}, {44, 23}, {53, 36}, {41, 49}, {-1, -1}, {51, 15}, {55, 25}, {-1, -1}, {58, 11}, {63, 24}, {-1, -1}, {0, 26}, {44, 5}, {30, 42}, {32, 53}, {46, 53}, {-1, -1}, {51, 11}, {57, 20}, {-1, -1}, {58, 7}, {63, 17}, {-1, -1}, {3, 0}, {18, 25}, {-1, -1}, {41, 9}, {16, 29}, {7, 55}, {16, 62}, {47, 50}, {-1, -1}, {43, 1}, {51, 16}, {-1, -1}, {54, 2}, {60, 14}, {-1, -1}, {2, 11}, {7, 56}, {-1, -1}, {17, 20}, {45, 13}, {-1, -1}, {36, 4}, {45, 55}, {33, 59}, {21, 44}, {33, 40}, {53, 48}, {-1, -1}, {51, 10}, {58, 19}, {-1, -1}, {57, 8}, {62, 21}, {-1, -1}, {0, 19}, {28, 5}, {13, 36}, {18, 58}, {38, 51}, {45, 27}, {58, 34}, {-1, -1}, {51, 13}, {57, 19}, {-1, -1}, {57, 11}, {62, 18}, {-1, -1}, {18, 5}, {32, 16}, {31, 27}, {23, 25}, {38, 49}, {32, 59}, {13, 45}, {-1, -1}, {2, 35}, {1, 57}, {-1, -1}, {46, 37}, {61, 58}, {-1, -1}, {50, 15}, {55, 22}, {-1, -1}, {56, 11}, {62, 24}, {-1, -1}, {0, 45}, {13, 8}, {61, 53}, {-1, -1}, {41, 8}, {49, 19}, {-1, -1}, {50, 5}, {57, 19}, {-1, -1}, {0, 2}, {5, 58}, {-1, -1}, {16, 4}, {42, 1}, {-1, -1}, {15, 22}, {43, 16}, {-1, -1}, {37, 5}, {45, 56}, {33, 62}, {21, 48}, {36, 42}, {54, 53}, {-1, -1}, {51, 7}, {58, 17}, {-1, -1}, {57, 1}, {63, 15}, {-1, -1}, {0, 8}, {4, 59}, {-1, -1}, {13, 21}, {45, 13}, {-1, -1}, {37, 2}, {41, 56}, {32, 61}, {19, 46}, {30, 42}, {50, 50}, {-1, -1}, {51, 5}, {50, 13}, {61, 12}, {63, 6}, {53, 2}, {-1, -1}, {0, 21}, {25, 1}, {12, 38}, {18, 61}, {31, 51}, {40, 25}, {55, 32}, {-1, -1}, {52, 6}, {48, 16}, {59, 20}, {63, 12}, {53, 5}, {-1, -1}, {17, 8}, {36, 16}, {35, 29}, {25, 28}, {40, 47}, {31, 54}, {16, 50}, {-1, -1}, {0, 32}, {4, 56}, {-1, -1}, {48, 40}, {62, 55}, {-1, -1}, {52, 10}, {51, 21}, {63, 17}, {50, 9}, {-1, -1}, {1, 37}, {6, 5}, {61, 60}, {-1, -1}, {43, 0}, {34, 11}, {43, 18}, {54, 7}, {41, 0}, {-1, -1}, {4, 0}, {4, 59}, {-1, -1}, {18, 3}, {45, 2}, {-1, -1}, {20, 24}, {45, 18}, {-1, -1}, {40, 9}, {45, 54}, {35, 62}, {18, 54}, {20, 46}, {34, 45}, {53, 55}, {-1, -1}, {53, 5}, {55, 17}, {63, 10}, {59, 1}, {53, 3}, {-1, -1}, }; PRCPrototypeEntry PrototypeListEntries[PDIC_PATTERN_NUM] = { { TRUE, 4, 0, 0, NULL, // '*' 0, 9, 3 }, { TRUE, 4, 1, 0, NULL, // '+' 9, 6, 2 }, { TRUE, 4, 1, 0, NULL, // '+' Different stroke order 15, 6, 2 }, { TRUE, 4, 2, 0, NULL, // '-' 21, 3, 1 }, { TRUE, 1, 3, 0, NULL, // '0' 24, 8, 1 }, { TRUE, 1, 3, 0, NULL, // '0' Counterclockwise 32, 9, 1 }, { TRUE, 1, 3, 0, NULL, // '0' With slash 41, 11, 2 }, { TRUE, 1, 4, 0, NULL, // '1' Vertical bar 52, 3, 1 }, { TRUE, 1, 4, 0, NULL, // '1' Serif 55, 4, 1 }, { TRUE, 1, 4, 0, NULL, // '1' 2 strokes 59, 7, 2 }, { TRUE, 1, 5, 0, NULL, // '2' 66, 7, 1 }, { TRUE, 1, 6, 0, NULL, // '3' 73, 9, 1 }, { TRUE, 1, 7, 0, NULL, // '4' 82, 7, 2 }, { TRUE, 1, 7, 0, NULL, // '4' 1 stroke 89, 5, 1 }, { TRUE, 1, 8, 0, NULL, // '5' 94, 10, 2 }, { TRUE, 1, 8, 0, NULL, // '5' Different stroke order 104, 10, 2 }, { TRUE, 1, 9, 0, NULL, // '6' 114, 8, 1 }, { TRUE, 1, 9, 0, NULL, // '6' Typeface variation 122, 9, 1 }, { TRUE, 1, 10, 0, NULL, // '7' 131, 7, 2 }, { TRUE, 1, 10, 0, NULL, // '7' 1 stroke 138, 4, 1 }, { TRUE, 1, 10, 0, NULL, // '7' With slash 142, 7, 2 }, { TRUE, 1, 11, 0, NULL, // '8' 149, 10, 1 }, { TRUE, 1, 11, 0, NULL, // '8' Difference in start location 159, 11, 1 }, { TRUE, 1, 11, 0, NULL, // '8' Counterclockwise 170, 10, 1 }, { TRUE, 1, 12, 0, NULL, // '9' 180, 7, 1 }, { TRUE, 1, 12, 0, NULL, // '9' Different stroke order 187, 9, 1 }, { TRUE, 4, 13, 0, NULL, // '<' 196, 4, 1 }, { TRUE, 4, 14, 0, NULL, // '=' 200, 6, 2 }, { TRUE, 4, 15, 0, NULL, // '>' 206, 4, 1 }, { TRUE, 2, 16, 0, NULL, // 'a' 210, 11, 1 }, { TRUE, 2, 17, 0, NULL, // 'b' 221, 9, 1 }, { TRUE, 2, 17, 0, NULL, // 'b' 2 strokes 230, 8, 2 }, { TRUE, 2, 17, 0, NULL, // 'b' Cursive 238, 9, 1 }, { TRUE, 2, 18, 0, NULL, // 'c' 247, 9, 1 }, { TRUE, 2, 19, 0, NULL, // 'd' 256, 9, 1 }, { TRUE, 2, 19, 0, NULL, // 'd' 2 strokes 265, 10, 2 }, { TRUE, 2, 20, 0, NULL, // 'e' 275, 10, 1 }, { TRUE, 2, 21, 0, NULL, // 'f' 285, 9, 2 }, { TRUE, 2, 21, 0, NULL, // 'f' Cursive 294, 8, 1 }, { TRUE, 2, 22, 0, NULL, // 'g' 302, 11, 1 }, { TRUE, 2, 22, 0, NULL, // 'g' 2 strokes 313, 16, 2 }, { TRUE, 2, 23, 0, NULL, // 'h' 329, 7, 1 }, { TRUE, 2, 24, 0, NULL, // 'i' 336, 6, 2 }, { TRUE, 2, 24, 0, NULL, // 'i' Different stroke order 342, 6, 2 }, { TRUE, 2, 24, 0, NULL, // 'i' Serif 348, 9, 2 }, { TRUE, 2, 24, 0, NULL, // 'i' Serif, different stroke order 357, 8, 2 }, { TRUE, 2, 24, 0, NULL, // 'i' Cursive 365, 9, 2 }, { TRUE, 2, 25, 0, NULL, // 'j' 374, 8, 2 }, { TRUE, 2, 25, 0, NULL, // 'j' Serif 382, 11, 2 }, { TRUE, 2, 25, 0, NULL, // 'j' Serif, different stroke order 393, 10, 2 }, { TRUE, 2, 26, 0, NULL, // 'k' 403, 7, 2 }, { TRUE, 2, 26, 0, NULL, // 'k' 3 strokes 410, 9, 3 }, { TRUE, 2, 26, 0, NULL, // 'k' Cursive 419, 13, 1 }, { TRUE, 2, 27, 0, NULL, // 'l' 432, 6, 1 }, { TRUE, 2, 28, 0, NULL, // 'm' 438, 10, 1 }, { TRUE, 2, 28, 0, NULL, // 'm' Serif 448, 12, 1 }, { TRUE, 2, 29, 0, NULL, // 'n' 460, 7, 1 }, { TRUE, 2, 29, 0, NULL, // 'n' Serif 467, 9, 1 }, { TRUE, 2, 30, 0, NULL, // 'o' Serif 476, 13, 1 }, { TRUE, 2, 30, 0, NULL, // 'o' Wide 489, 9, 1 }, { TRUE, 2, 31, 0, NULL, // 'p' 498, 10, 2 }, { TRUE, 2, 31, 0, NULL, // 'p' 1 stroke 508, 8, 1 }, { TRUE, 2, 32, 0, NULL, // 'q' 516, 13, 1 }, { TRUE, 2, 32, 0, NULL, // 'q' 2 strokes 529, 9, 2 }, { TRUE, 2, 33, 0, NULL, // 'r' 538, 6, 1 }, { TRUE, 2, 33, 0, NULL, // 'r' Cursive 544, 8, 1 }, { TRUE, 2, 34, 0, NULL, // 's' 552, 11, 1 }, { TRUE, 2, 34, 0, NULL, // 's' Cursive 563, 10, 1 }, { TRUE, 2, 35, 0, NULL, // 't' 573, 9, 2 }, { TRUE, 2, 35, 0, NULL, // 't' Different stroke order 582, 8, 2 }, { TRUE, 2, 35, 0, NULL, // 't' Cursive 590, 10, 2 }, { TRUE, 2, 36, 0, NULL, // 'u' 600, 8, 1 }, { TRUE, 2, 36, 0, NULL, // 'u' Serif 608, 10, 1 }, { TRUE, 2, 37, 0, NULL, // 'v' 618, 4, 1 }, { TRUE, 2, 37, 0, NULL, // 'v' Cursive 622, 5, 1 }, { TRUE, 2, 38, 0, NULL, // 'w' 627, 6, 1 }, { TRUE, 2, 38, 0, NULL, // 'w' Soft 633, 10, 1 }, { TRUE, 2, 38, 0, NULL, // 'w' Cursive 643, 13, 1 }, { TRUE, 2, 39, 0, NULL, // 'x' 656, 6, 2 }, { TRUE, 2, 39, 0, NULL, // 'x' Different stroke order 662, 6, 2 }, { TRUE, 2, 39, 0, NULL, // 'x' Cursive 668, 12, 2 }, { TRUE, 2, 40, 0, NULL, // 'y' 680, 6, 2 }, { TRUE, 2, 40, 0, NULL, // 'y' Different stroke order 686, 6, 2 }, { TRUE, 2, 40, 0, NULL, // 'y' Cursive 692, 11, 1 }, { TRUE, 2, 41, 0, NULL, // 'z' With slash 703, 8, 2 }, { TRUE, 2, 41, 0, NULL, // 'z' Cursive 711, 10, 1 }, { TRUE, 8, 42, 0, NULL, // 'あ' (Japanese phonetic symbol: 'a') 721, 14, 3 }, { TRUE, 8, 43, 0, NULL, // 'い' (Japanese phonetic symbol: 'i') 735, 7, 2 }, { TRUE, 8, 44, 0, NULL, // 'う' (Japanese phonetic symbol: 'u') 742, 9, 2 }, { TRUE, 8, 45, 0, NULL, // 'え' (Japanese phonetic symbol: 'e') 751, 10, 2 }, { TRUE, 8, 46, 0, NULL, // 'お' (Japanese phonetic symbol: 'o') 761, 14, 3 }, { TRUE, 8, 47, 0, NULL, // 'か' (Japanese phonetic symbol: 'ka') 775, 11, 3 }, { TRUE, 8, 48, 0, NULL, // 'き' (Japanese phonetic symbol: 'ki') 786, 13, 4 }, { TRUE, 8, 49, 0, NULL, // 'く' (Japanese phonetic symbol: 'ku') 799, 4, 1 }, { TRUE, 8, 50, 0, NULL, // 'け' (Japanese phonetic symbol: 'ke') 803, 10, 3 }, { TRUE, 8, 51, 0, NULL, // 'こ' (Japanese phonetic symbol: 'ko') 813, 7, 2 }, { TRUE, 8, 52, 0, NULL, // 'さ' (Japanese phonetic symbol: 'sa') 820, 10, 3 }, { TRUE, 8, 53, 0, NULL, // 'し' (Japanese phonetic symbol: 'shi') 830, 6, 1 }, { TRUE, 8, 54, 0, NULL, // 'す' (Japanese phonetic symbol: 'su') 836, 11, 2 }, { TRUE, 8, 55, 0, NULL, // 'せ' (Japanese phonetic symbol: 'se') 847, 12, 3 }, { TRUE, 8, 56, 0, NULL, // 'そ' (Japanese phonetic symbol: 'so') 859, 8, 1 }, { TRUE, 8, 57, 0, NULL, // 'た' (Japanese phonetic symbol: 'ta') 867, 13, 4 }, { TRUE, 8, 58, 0, NULL, // 'ち' (Japanese phonetic symbol: 'chi') 880, 10, 2 }, { TRUE, 8, 59, 0, NULL, // 'つ' (Japanese phonetic symbol: 'tsu') 890, 6, 1 }, { TRUE, 8, 60, 0, NULL, // 'て' (Japanese phonetic symbol: 'te') 896, 5, 1 }, { TRUE, 8, 61, 0, NULL, // 'と' (Japanese phonetic symbol: 'to') 901, 9, 2 }, { TRUE, 8, 62, 0, NULL, // 'な' (Japanese phonetic symbol: 'na') 910, 15, 4 }, { TRUE, 8, 63, 0, NULL, // 'に' (Japanese phonetic symbol: 'ni') 925, 10, 3 }, { TRUE, 8, 64, 0, NULL, // 'ぬ' (Japanese phonetic symbol: 'nu') 935, 15, 2 }, { TRUE, 8, 65, 0, NULL, // 'ね' (Japanese phonetic symbol: 'ne') 950, 13, 2 }, { TRUE, 8, 66, 0, NULL, // 'の' (Japanese phonetic symbol: 'no') 963, 9, 1 }, { TRUE, 8, 67, 0, NULL, // 'は' (Japanese phonetic symbol: 'ha') 972, 13, 3 }, { TRUE, 8, 68, 0, NULL, // 'ひ' (Japanese phonetic symbol: 'hi') 985, 8, 1 }, { TRUE, 8, 69, 0, NULL, // 'ふ' (Japanese phonetic symbol: 'fu') 993, 13, 3 }, { TRUE, 8, 70, 0, NULL, // 'へ' (Japanese phonetic symbol: 'he') 1006, 4, 1 }, { TRUE, 8, 71, 0, NULL, // 'ほ' (Japanese phonetic symbol: 'ho') 1010, 17, 4 }, { TRUE, 8, 72, 0, NULL, // 'ま' (Japanese phonetic symbol: 'ma') 1027, 13, 3 }, { TRUE, 8, 73, 0, NULL, // 'み' (Japanese phonetic symbol: 'mi') 1040, 12, 2 }, { TRUE, 8, 74, 0, NULL, // 'む' (Japanese phonetic symbol: 'mu') 1052, 15, 3 }, { TRUE, 8, 75, 0, NULL, // 'め' (Japanese phonetic symbol: 'me') 1067, 12, 2 }, { TRUE, 8, 76, 0, NULL, // 'も' (Japanese phonetic symbol: 'mo') 1079, 11, 3 }, { TRUE, 8, 77, 0, NULL, // 'や' (Japanese phonetic symbol: 'ya') 1090, 12, 3 }, { TRUE, 8, 78, 0, NULL, // 'ゐ' (Japanese phonetic symbol: 'yi') 1102, 13, 1 }, { TRUE, 8, 79, 0, NULL, // 'ゆ' (Japanese phonetic symbol: 'yu') 1115, 13, 2 }, { TRUE, 8, 80, 0, NULL, // 'ゑ' (Japanese phonetic symbol: 'ye') 1128, 15, 1 }, { TRUE, 8, 81, 0, NULL, // 'よ' (Japanese phonetic symbol: 'yo') 1143, 11, 2 }, { TRUE, 8, 82, 0, NULL, // 'ら' (Japanese phonetic symbol: 'ra') 1154, 10, 2 }, { TRUE, 8, 83, 0, NULL, // 'り' (Japanese phonetic symbol: 'ri') 1164, 7, 2 }, { TRUE, 8, 84, 0, NULL, // 'る' (Japanese phonetic symbol: 'ru') 1171, 11, 1 }, { TRUE, 8, 85, 0, NULL, // 'れ' (Japanese phonetic symbol: 're') 1182, 11, 2 }, { TRUE, 8, 86, 0, NULL, // 'ろ' (Japanese phonetic symbol: 'ro') 1193, 8, 1 }, { TRUE, 8, 87, 0, NULL, // 'わ' (Japanese phonetic symbol: 'wa') 1201, 13, 2 }, { TRUE, 8, 88, 0, NULL, // 'を' (Japanese phonetic symbol: 'wo') 1214, 13, 3 }, { TRUE, 8, 89, 0, NULL, // 'ん' (Japanese phonetic symbol: 'n') 1227, 6, 1 }, { TRUE, 16, 90, 0, NULL, // '☆' 1233, 7, 1 }, { TRUE, 16, 91, 0, NULL, // '∞' 1240, 10, 1 }, { TRUE, 8, 92, 0, NULL, // 'が' (Japanese phonetic symbol: 'ga') 1250, 17, 5 }, { TRUE, 8, 93, 0, NULL, // 'ぎ' (Japanese phonetic symbol: 'gi') 1267, 19, 6 }, { TRUE, 8, 94, 0, NULL, // 'ぐ' (Japanese phonetic symbol: 'gu') 1286, 10, 3 }, { TRUE, 8, 95, 0, NULL, // 'げ' (Japanese phonetic symbol: 'ge') 1296, 16, 5 }, { TRUE, 8, 96, 0, NULL, // 'ご' (Japanese phonetic symbol: 'go') 1312, 14, 4 }, { TRUE, 8, 97, 0, NULL, // 'ざ' (Japanese phonetic symbol: 'za') 1326, 16, 5 }, { TRUE, 8, 98, 0, NULL, // 'じ' (Japanese phonetic symbol: 'ji') 1342, 12, 3 }, { TRUE, 8, 99, 0, NULL, // 'ず' (Japanese phonetic symbol: 'zu') 1354, 17, 4 }, { TRUE, 8, 100, 0, NULL, // 'ぜ' (Japanese phonetic symbol: 'ze') 1371, 17, 5 }, { TRUE, 8, 101, 0, NULL, // 'ぞ' (Japanese phonetic symbol: 'zo') 1388, 14, 3 }, { TRUE, 8, 102, 0, NULL, // 'だ' (Japanese phonetic symbol: 'da') 1402, 20, 6 }, { TRUE, 8, 103, 0, NULL, // 'ぢ' (Japanese phonetic symbol: 'zi') 1422, 16, 4 }, { TRUE, 8, 104, 0, NULL, // 'づ' (Japanese phonetic symbol: 'dzu') 1438, 12, 3 }, { TRUE, 8, 105, 0, NULL, // 'で' (Japanese phonetic symbol: 'de') 1450, 12, 3 }, { TRUE, 8, 106, 0, NULL, // 'ど' (Japanese phonetic symbol: 'do') 1462, 15, 4 }, { TRUE, 8, 107, 0, NULL, // 'ば' (Japanese phonetic symbol: 'ba') 1477, 19, 5 }, { TRUE, 8, 108, 0, NULL, // 'び' (Japanese phonetic symbol: 'bi') 1496, 14, 3 }, { TRUE, 8, 109, 0, NULL, // 'ぶ' (Japanese phonetic symbol: 'bu') 1510, 20, 5 }, { TRUE, 8, 110, 0, NULL, // 'べ' (Japanese phonetic symbol: 'be') 1530, 10, 3 }, { TRUE, 8, 111, 0, NULL, // 'ぼ' (Japanese phonetic symbol: 'bo') 1540, 22, 6 }, { TRUE, 8, 112, 0, NULL, // 'ぱ' (Japanese phonetic symbol: 'pa') 1562, 19, 4 }, { TRUE, 8, 113, 0, NULL, // 'ぴ' (Japanese phonetic symbol: 'pi') 1581, 14, 2 }, { TRUE, 8, 114, 0, NULL, // 'ぷ' (Japanese phonetic symbol: 'pu') 1595, 19, 4 }, { TRUE, 8, 115, 0, NULL, // 'ぺ' (Japanese phonetic symbol: 'pe') 1614, 10, 2 }, { TRUE, 8, 116, 0, NULL, // 'ぽ' (Japanese phonetic symbol: 'po') 1624, 23, 5 }, }; PRCPrototypeList PrototypeList = { PrototypeListEntries, /* entries */ PDIC_PATTERN_NUM, /* entrySize */ PrototypeListPointArray, /* pointArray */ PDIC_WHOLE_POINT_NUM, /* pointArraySize */ PDIC_NORMALIZE_SIZE, /* normalizeSize */ }; char *PatternName[PDIC_CODE_NUM] = { "*", "+", "-", "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "<", "=", ">", "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "あ", "い", "う", "え", "お", "か", "き", "く", "け", "こ", "さ", "し", "す", "せ", "そ", "た", "ち", "つ", "て", "と", "な", "に", "ぬ", "ね", "の", "は", "ひ", "ふ", "へ", "ほ", "ま", "み", "む", "め", "も", "や", "ゐ", "ゆ", "ゑ", "よ", "ら", "り", "る", "れ", "ろ", "わ", "を", "ん", "☆", "∞", "が", "ぎ", "ぐ", "げ", "ご", "ざ", "じ", "ず", "ぜ", "ぞ", "だ", "ぢ", "づ", "で", "ど", "ば", "び", "ぶ", "べ", "ぼ", "ぱ", "ぴ", "ぷ", "ぺ", "ぽ", }; /*---------------------------------------------------------------------------* End of File *---------------------------------------------------------------------------*/