diff --git a/BMGEditor/BMG.cs b/BMGEditor/BMG.cs index 6411449..f40fa28 100644 --- a/BMGEditor/BMG.cs +++ b/BMGEditor/BMG.cs @@ -9,6 +9,7 @@ namespace BMGEditor public class BMG { private FileBase m_File; + private Bcsv m_File_Tbl; private const Int32 m_Signature = 0x4D455347; private const Int32 m_FileType = 0x626D6731; private const Byte m_ExpectedEncoding = 0x02; @@ -18,32 +19,1133 @@ namespace BMGEditor private const Int32 FLW1magic = 0x464C5731; private const Int32 FLI1magic = 0x464C4931; + //Header + private Int32 fileMagic1; + private Int32 fileMagic2; + private UInt32 fileSize; + private UInt32 numberOfSections; + private Byte fileEncoding; + + //INF1 + private Int32 INF1sectionMagic; + private UInt32 INF1sectionSize; + private UInt16 INF1itemNumber; + private UInt16 INF1itemLength; + + //DAT1 + private Int64 DAT1sectionStart; + private Int32 DAT1sectionMagic; + private UInt32 DAT1sectionSize; + private Int64 strPoolStart; + + //FLW1 + private Int64 FLW1sectionStart; + private Int32 FLW1sectionMagic; + private UInt32 FLW1sectionSize; + private Byte[] FLW1sectionContent = { + 0x05, 0x24, 0x02, 0x78, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x19, + 0x00, 0x04, 0x00, 0x00, 0x01, 0x00, 0x01, 0x1F, 0x00, 0x02, 0x00, 0x00, + 0x01, 0x00, 0x01, 0x20, 0x00, 0x02, 0x00, 0x00, 0x02, 0x02, 0x00, 0x0B, + 0x00, 0x0F, 0x00, 0x00, 0x02, 0x02, 0x00, 0x0B, 0x00, 0x10, 0x00, 0x02, + 0x01, 0x00, 0x01, 0x21, 0x00, 0x06, 0x00, 0x00, 0x01, 0x00, 0x01, 0x22, + 0x00, 0x06, 0x00, 0x00, 0x01, 0x00, 0x01, 0x1C, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x02, 0x3D, 0x00, 0x09, 0x00, 0x00, 0x02, 0x02, 0x00, 0x06, + 0x00, 0x00, 0x00, 0x04, 0x01, 0x00, 0x02, 0x44, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x02, 0x56, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x02, 0x46, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x02, 0x59, 0xFF, 0xFF, 0xFF, 0x00, + 0x02, 0x02, 0x00, 0x06, 0x00, 0x00, 0x00, 0x06, 0x01, 0x00, 0x02, 0x45, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x02, 0x59, 0xFF, 0xFF, 0xFF, 0x00, + 0x02, 0x02, 0x00, 0x06, 0x00, 0x00, 0x00, 0x08, 0x01, 0x00, 0x02, 0x5A, + 0x00, 0x13, 0x00, 0x00, 0x02, 0x02, 0x00, 0x09, 0x00, 0x00, 0x00, 0x0A, + 0x01, 0x00, 0x02, 0x3E, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x02, 0x5B, + 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x06, 0x00, 0x00, 0x00, 0x0C, + 0x01, 0x00, 0x02, 0x5C, 0x00, 0x16, 0x00, 0x00, 0x01, 0x00, 0x07, 0x5B, + 0x00, 0x19, 0x00, 0x00, 0x01, 0x00, 0x07, 0x5C, 0x00, 0x1A, 0x00, 0x00, + 0x01, 0x00, 0x07, 0x5D, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x70, + 0x00, 0x1C, 0x00, 0x00, 0x01, 0x00, 0x03, 0x72, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x03, 0xC2, 0x00, 0x1E, 0x00, 0x00, 0x01, 0x00, 0x03, 0xC7, + 0x00, 0x22, 0x00, 0x00, 0x01, 0x00, 0x03, 0xC4, 0x00, 0x26, 0x00, 0x00, + 0x01, 0x00, 0x03, 0xC3, 0x00, 0x1E, 0x00, 0x00, 0x01, 0x00, 0x03, 0xC1, + 0x00, 0x21, 0x00, 0x00, 0x02, 0x02, 0x00, 0x00, 0x00, 0x01, 0x00, 0x0E, + 0x01, 0x00, 0x03, 0xBE, 0x00, 0x25, 0x00, 0x00, 0x01, 0x00, 0x03, 0xBF, + 0x00, 0x27, 0x00, 0x00, 0x02, 0x02, 0x00, 0x01, 0x00, 0x01, 0x00, 0x10, + 0x03, 0x01, 0x00, 0x12, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x13, + 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x05, 0xFC, 0x00, 0x29, 0x00, 0x00, + 0x01, 0x00, 0x05, 0xFE, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x05, 0xF2, + 0x00, 0x30, 0x00, 0x00, 0x01, 0x00, 0x05, 0xF3, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x05, 0xF4, 0x00, 0x32, 0x00, 0x00, 0x01, 0x00, 0x05, 0xF7, + 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x00, 0x00, 0x02, 0x00, 0x14, + 0x01, 0x00, 0x05, 0xF6, 0x00, 0x31, 0x00, 0x00, 0x01, 0x00, 0x05, 0xF9, + 0x00, 0x2E, 0x00, 0x00, 0x02, 0x02, 0x00, 0x01, 0x00, 0x01, 0x00, 0x16, + 0x03, 0x01, 0x00, 0x18, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x05, 0xF3, + 0x00, 0x33, 0x00, 0x00, 0x01, 0x00, 0x06, 0xD0, 0x00, 0x35, 0x00, 0x00, + 0x01, 0x00, 0x06, 0xD1, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x06, 0xC5, + 0x00, 0x37, 0x00, 0x00, 0x01, 0x00, 0x06, 0xC7, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x07, 0x58, 0x00, 0x39, 0x00, 0x00, 0x01, 0x00, 0x07, 0x59, + 0x00, 0x3A, 0x00, 0x00, 0x01, 0x00, 0x07, 0x5A, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x02, 0x68, 0x00, 0x3E, 0x00, 0x00, 0x01, 0x00, 0x02, 0x6A, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x02, 0x69, 0xFF, 0xFF, 0xFF, 0x00, + 0x02, 0x02, 0x00, 0x03, 0x00, 0x00, 0x00, 0x19, 0x01, 0x00, 0x09, 0x36, + 0x00, 0x42, 0x00, 0x00, 0x01, 0x00, 0x09, 0x37, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x09, 0x38, 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x07, + 0x00, 0x00, 0x00, 0x1B, 0x01, 0x00, 0x02, 0x6B, 0x00, 0x44, 0x00, 0x00, + 0x02, 0x02, 0x00, 0x06, 0x00, 0x00, 0x00, 0x1D, 0x01, 0x00, 0x02, 0x6C, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x02, 0x6D, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x02, 0x5E, 0x00, 0x4A, 0x00, 0x00, 0x01, 0x00, 0x02, 0x60, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x02, 0x5F, 0xFF, 0xFF, 0xFF, 0x00, + 0x02, 0x02, 0x00, 0x03, 0x00, 0x00, 0x00, 0x1F, 0x01, 0x00, 0x02, 0x61, + 0x00, 0x4E, 0x00, 0x00, 0x01, 0x00, 0x02, 0x63, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x02, 0x62, 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x03, + 0x00, 0x00, 0x00, 0x21, 0x01, 0x00, 0x02, 0x64, 0x00, 0x52, 0x00, 0x00, + 0x01, 0x00, 0x02, 0x66, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x02, 0x65, + 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x03, 0x00, 0x00, 0x00, 0x23, + 0x01, 0x00, 0x01, 0x1A, 0x00, 0x55, 0x00, 0x00, 0x01, 0x00, 0x01, 0x1D, + 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x0B, 0x00, 0x10, 0x00, 0x25, + 0x01, 0x00, 0x01, 0x1E, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x02, 0x6E, + 0x00, 0x5B, 0x00, 0x00, 0x02, 0x02, 0x00, 0x06, 0x00, 0x00, 0x00, 0x27, + 0x01, 0x00, 0x02, 0x6F, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x02, 0x70, + 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x0A, 0x00, 0x00, 0x00, 0x29, + 0x02, 0x02, 0x00, 0x06, 0x00, 0x00, 0x00, 0x2B, 0x01, 0x00, 0x02, 0x71, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x09, 0x2F, 0x00, 0x5F, 0x00, 0x00, + 0x02, 0x02, 0x00, 0x07, 0x00, 0x00, 0x00, 0x2D, 0x01, 0x00, 0x09, 0x30, + 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x2F, + 0x01, 0x00, 0x09, 0x31, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x09, 0x32, + 0x00, 0x65, 0x00, 0x00, 0x01, 0x00, 0x09, 0x34, 0x00, 0x64, 0x00, 0x00, + 0x03, 0x00, 0x00, 0x31, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x00, 0x0A, + 0x00, 0x00, 0x00, 0x32, 0x01, 0x00, 0x09, 0x33, 0x00, 0x65, 0x00, 0x00, + 0x01, 0x00, 0x01, 0x1B, 0x00, 0x69, 0x00, 0x00, 0x01, 0x00, 0x01, 0x23, + 0x00, 0x69, 0x00, 0x00, 0x01, 0x00, 0x01, 0xA0, 0x00, 0x6B, 0x00, 0x00, + 0x01, 0x00, 0x01, 0xA1, 0x00, 0x6C, 0x00, 0x00, 0x01, 0x00, 0x01, 0xA2, + 0x00, 0x6C, 0x00, 0x00, 0x01, 0x00, 0x03, 0xBD, 0x00, 0x6E, 0x00, 0x00, + 0x01, 0x00, 0x03, 0xCC, 0x00, 0x6F, 0x00, 0x00, 0x01, 0x00, 0x03, 0xCD, + 0x00, 0x6F, 0x00, 0x00, 0x01, 0x00, 0x02, 0x76, 0x00, 0x71, 0x00, 0x00, + 0x01, 0x00, 0x02, 0x77, 0x00, 0x72, 0x00, 0x00, 0x03, 0x05, 0x00, 0x34, + 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x02, 0x90, 0x00, 0x74, 0x00, 0x00, + 0x02, 0x02, 0x00, 0x03, 0x00, 0x00, 0x00, 0x35, 0x01, 0x00, 0x02, 0x91, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x02, 0x92, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x02, 0x94, 0x00, 0x7B, 0x00, 0x00, 0x01, 0x00, 0x02, 0x95, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x02, 0x93, 0x00, 0x7A, 0x00, 0x00, + 0x02, 0x02, 0x00, 0x03, 0x00, 0x00, 0x00, 0x37, 0x01, 0x00, 0x02, 0x95, + 0x00, 0x7B, 0x00, 0x00, 0x01, 0x00, 0x08, 0x7D, 0x00, 0x7D, 0x00, 0x00, + 0x01, 0x00, 0x08, 0x80, 0x00, 0x7E, 0x00, 0x00, 0x01, 0x00, 0x08, 0x82, + 0x00, 0x7E, 0x00, 0x00, 0x01, 0x00, 0x03, 0xCF, 0x00, 0x80, 0x00, 0x00, + 0x01, 0x00, 0x03, 0xD0, 0x00, 0x80, 0x00, 0x00, 0x01, 0x00, 0x03, 0xCE, + 0x00, 0x7F, 0x00, 0x00, 0x01, 0x00, 0x02, 0x98, 0x00, 0x83, 0x00, 0x00, + 0x01, 0x00, 0x02, 0x99, 0x00, 0x84, 0x00, 0x00, 0x01, 0x00, 0x02, 0x9A, + 0x00, 0x84, 0x00, 0x00, 0x01, 0x00, 0x04, 0x34, 0x00, 0x87, 0x00, 0x00, + 0x01, 0x00, 0x04, 0x35, 0x00, 0x88, 0x00, 0x00, 0x01, 0x00, 0x04, 0x36, + 0x00, 0x88, 0x00, 0x00, 0x02, 0x02, 0x00, 0x03, 0x00, 0x00, 0x00, 0x39, + 0x01, 0x00, 0x04, 0x37, 0x00, 0x8B, 0x00, 0x00, 0x01, 0x00, 0x04, 0x38, + 0x00, 0x8C, 0x00, 0x00, 0x02, 0x02, 0x00, 0x03, 0x00, 0x00, 0x00, 0x3B, + 0x02, 0x02, 0x00, 0x03, 0x00, 0x00, 0x00, 0x3D, 0x01, 0x00, 0x04, 0x39, + 0x00, 0x8E, 0x00, 0x00, 0x02, 0x02, 0x00, 0x03, 0x00, 0x00, 0x00, 0x3F, + 0x01, 0x00, 0x03, 0x33, 0x00, 0x90, 0x00, 0x00, 0x01, 0x00, 0x03, 0x34, + 0x00, 0x91, 0x00, 0x00, 0x01, 0x00, 0x03, 0x35, 0x00, 0x91, 0x00, 0x00, + 0x01, 0x00, 0x03, 0x3A, 0x00, 0x95, 0x00, 0x00, 0x01, 0x00, 0x03, 0x3B, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x3C, 0xFF, 0xFF, 0xFF, 0x00, + 0x02, 0x02, 0x00, 0x03, 0x00, 0x00, 0x00, 0x41, 0x03, 0x04, 0x00, 0x43, + 0x00, 0x00, 0x00, 0x00, 0x03, 0x04, 0x00, 0x44, 0x00, 0x00, 0x00, 0x00, + 0x03, 0x04, 0x00, 0x45, 0x00, 0x00, 0x00, 0x01, 0x03, 0x04, 0x00, 0x46, + 0x00, 0x00, 0x00, 0x02, 0x03, 0x04, 0x00, 0x47, 0x00, 0x00, 0x00, 0x01, + 0x03, 0x03, 0x00, 0x48, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x7E, + 0x00, 0x9A, 0x00, 0x00, 0x01, 0x00, 0x01, 0x7F, 0x00, 0xA4, 0x00, 0x00, + 0x01, 0x00, 0x01, 0x80, 0x00, 0xA8, 0x00, 0x00, 0x01, 0x00, 0x01, 0x81, + 0x00, 0x96, 0x00, 0x00, 0x01, 0x00, 0x01, 0x82, 0x00, 0x97, 0x00, 0x00, + 0x01, 0x00, 0x01, 0x83, 0x00, 0xA5, 0x00, 0x00, 0x01, 0x00, 0x01, 0x84, + 0x00, 0x9B, 0x00, 0x00, 0x01, 0x00, 0x01, 0x85, 0x00, 0xA3, 0x00, 0x00, + 0x02, 0x02, 0x00, 0x00, 0x00, 0x03, 0x00, 0x49, 0x02, 0x02, 0x00, 0x01, + 0x00, 0x00, 0x00, 0x4B, 0x01, 0x00, 0x01, 0x86, 0x00, 0xA4, 0x00, 0x00, + 0x01, 0x00, 0x01, 0x87, 0x00, 0x9B, 0x00, 0x00, 0x03, 0x01, 0x00, 0x4D, + 0x00, 0x00, 0x00, 0x00, 0x03, 0x04, 0x00, 0x4E, 0x00, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x09, 0x4E, 0x00, 0xAB, 0x00, 0x00, 0x01, 0x00, 0x09, 0x4F, + 0x00, 0xB1, 0x00, 0x00, 0x01, 0x00, 0x09, 0x50, 0x00, 0xB2, 0x00, 0x00, + 0x01, 0x00, 0x09, 0x51, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x09, 0x52, + 0x00, 0xB7, 0x00, 0x00, 0x01, 0x00, 0x09, 0x53, 0x00, 0xAF, 0x00, 0x00, + 0x01, 0x00, 0x09, 0x54, 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x00, + 0x00, 0x04, 0x00, 0x4F, 0x02, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x51, + 0x03, 0x04, 0x00, 0x53, 0x00, 0x00, 0x00, 0x00, 0x03, 0x04, 0x00, 0x54, + 0x00, 0x00, 0x00, 0x01, 0x03, 0x04, 0x00, 0x55, 0x00, 0x00, 0x00, 0x02, + 0x03, 0x01, 0x00, 0x56, 0x00, 0x00, 0x00, 0x00, 0x03, 0x04, 0x00, 0x57, + 0x00, 0x00, 0x00, 0x03, 0x01, 0x00, 0x01, 0x74, 0x00, 0xC2, 0x00, 0x00, + 0x01, 0x00, 0x01, 0x75, 0x00, 0xC0, 0x00, 0x00, 0x01, 0x00, 0x01, 0x76, + 0x00, 0xCA, 0x00, 0x00, 0x01, 0x00, 0x01, 0x77, 0x00, 0xC9, 0x00, 0x00, + 0x01, 0x00, 0x01, 0x78, 0x00, 0xC5, 0x00, 0x00, 0x01, 0x00, 0x01, 0x79, + 0x00, 0xC1, 0x00, 0x00, 0x01, 0x00, 0x01, 0x7A, 0x00, 0xC3, 0x00, 0x00, + 0x01, 0x00, 0x01, 0x7B, 0x00, 0xBF, 0x00, 0x00, 0x02, 0x02, 0x00, 0x00, + 0x00, 0x05, 0x00, 0x58, 0x02, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x5A, + 0x03, 0x04, 0x00, 0x5C, 0x00, 0x00, 0x00, 0x01, 0x03, 0x03, 0x00, 0x5D, + 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x7C, 0x00, 0xC0, 0x00, 0x00, + 0x03, 0x04, 0x00, 0x5E, 0x00, 0x00, 0x00, 0x00, 0x03, 0x04, 0x00, 0x5F, + 0x00, 0x00, 0x00, 0x02, 0x01, 0x00, 0x01, 0x7D, 0x00, 0xC3, 0x00, 0x00, + 0x03, 0x04, 0x00, 0x60, 0x00, 0x00, 0x00, 0x01, 0x03, 0x04, 0x00, 0x61, + 0x00, 0x00, 0x00, 0x00, 0x03, 0x01, 0x00, 0x62, 0x00, 0x00, 0x00, 0x00, + 0x03, 0x04, 0x00, 0x63, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x09, 0x56, + 0x00, 0xCF, 0x00, 0x00, 0x01, 0x00, 0x09, 0x57, 0x00, 0xD0, 0x00, 0x00, + 0x01, 0x00, 0x09, 0x58, 0x00, 0xD0, 0x00, 0x00, 0x02, 0x02, 0x00, 0x03, + 0x00, 0x00, 0x00, 0x64, 0x02, 0x02, 0x00, 0x03, 0x00, 0x00, 0x00, 0x66, + 0x01, 0x00, 0x09, 0x5B, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x01, 0xC3, + 0x00, 0xDB, 0x00, 0x00, 0x01, 0x00, 0x01, 0xC4, 0x00, 0xDD, 0x00, 0x00, + 0x01, 0x00, 0x01, 0xC5, 0x00, 0xDC, 0x00, 0x00, 0x01, 0x00, 0x01, 0xC6, + 0x00, 0xD6, 0x00, 0x00, 0x01, 0x00, 0x01, 0xC7, 0x00, 0xD7, 0x00, 0x00, + 0x01, 0x00, 0x01, 0xC8, 0x00, 0xD8, 0x00, 0x00, 0x01, 0x00, 0x01, 0xC9, + 0x00, 0xD9, 0x00, 0x00, 0x01, 0x00, 0x01, 0xCA, 0x00, 0xDA, 0x00, 0x00, + 0x01, 0x00, 0x01, 0xCB, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x01, 0xCC, + 0x00, 0xD5, 0x00, 0x00, 0x03, 0x01, 0x00, 0x68, 0x00, 0x00, 0x00, 0x00, + 0x03, 0x02, 0x00, 0x69, 0x00, 0x00, 0x00, 0x00, 0x03, 0x01, 0x00, 0x6A, + 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x01, 0xCD, 0x00, 0xDE, 0x00, 0x00, + 0x01, 0x00, 0x04, 0x3A, 0x00, 0xE3, 0x00, 0x00, 0x01, 0x00, 0x04, 0x3B, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x04, 0x3C, 0xFF, 0xFF, 0xFF, 0x00, + 0x02, 0x02, 0x00, 0x05, 0x00, 0x00, 0x00, 0x6B, 0x01, 0x00, 0x04, 0x4A, + 0x00, 0xE5, 0x00, 0x00, 0x01, 0x00, 0x04, 0x4B, 0x00, 0xE6, 0x00, 0x00, + 0x01, 0x00, 0x04, 0x4C, 0x00, 0xE7, 0x00, 0x00, 0x01, 0x00, 0x04, 0x4D, + 0x00, 0xE8, 0x00, 0x00, 0x01, 0x00, 0x04, 0x4E, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x07, 0x7F, 0x00, 0xEC, 0x00, 0x00, 0x01, 0x00, 0x07, 0x80, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x07, 0x83, 0xFF, 0xFF, 0xFF, 0x00, + 0x02, 0x02, 0x00, 0x03, 0x00, 0x00, 0x00, 0x6D, 0x01, 0x00, 0x01, 0xAF, + 0x00, 0xEE, 0x00, 0x00, 0x01, 0x00, 0x01, 0xB0, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x01, 0xAC, 0x00, 0xF0, 0x00, 0x00, 0x01, 0x00, 0x01, 0xAD, + 0x00, 0xF1, 0x00, 0x00, 0x01, 0x00, 0x01, 0xAE, 0x00, 0xED, 0x00, 0x00, + 0x01, 0x00, 0x01, 0xAA, 0x00, 0xF3, 0x00, 0x00, 0x01, 0x00, 0x01, 0xAB, + 0x00, 0xEF, 0x00, 0x00, 0x01, 0x00, 0x01, 0xA9, 0x00, 0xF2, 0x00, 0x00, + 0x01, 0x00, 0x08, 0x8D, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x08, 0x8E, + 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x00, 0x00, 0x06, 0x00, 0x6F, + 0x01, 0x00, 0x08, 0x8F, 0x01, 0x01, 0x00, 0x00, 0x01, 0x00, 0x08, 0x8B, + 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x08, 0x8C, 0x00, 0xF7, 0x00, 0x00, + 0x02, 0x02, 0x00, 0x01, 0x00, 0x02, 0x00, 0x71, 0x01, 0x00, 0x08, 0x90, + 0x00, 0xFD, 0x00, 0x00, 0x02, 0x02, 0x00, 0x00, 0x00, 0x07, 0x00, 0x73, + 0x01, 0x00, 0x08, 0x91, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x08, 0x92, + 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x01, 0x00, 0x03, 0x00, 0x75, + 0x03, 0x01, 0x00, 0x77, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x03, 0xD1, + 0x01, 0x03, 0x00, 0x00, 0x01, 0x00, 0x03, 0xD2, 0x01, 0x04, 0x00, 0x00, + 0x01, 0x00, 0x03, 0xD3, 0x01, 0x04, 0x00, 0x00, 0x01, 0x00, 0x04, 0x29, + 0x01, 0x06, 0x00, 0x00, 0x02, 0x02, 0x00, 0x03, 0x00, 0x00, 0x00, 0x78, + 0x01, 0x00, 0x04, 0x2A, 0x01, 0x0A, 0x00, 0x00, 0x01, 0x00, 0x04, 0x2B, + 0x01, 0x09, 0x00, 0x00, 0x03, 0x06, 0x00, 0x7A, 0x00, 0x00, 0x00, 0x00, + 0x03, 0x07, 0x00, 0x7B, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x03, 0xFD, + 0x01, 0x0C, 0x00, 0x00, 0x01, 0x00, 0x03, 0xFE, 0x01, 0x0D, 0x00, 0x00, + 0x01, 0x00, 0x03, 0xFF, 0x01, 0x0E, 0x00, 0x00, 0x01, 0x00, 0x04, 0x00, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x04, 0x01, 0x01, 0x10, 0x00, 0x00, + 0x01, 0x00, 0x04, 0x02, 0x01, 0x11, 0x00, 0x00, 0x01, 0x00, 0x04, 0x03, + 0x01, 0x12, 0x00, 0x00, 0x01, 0x00, 0x04, 0x04, 0x01, 0x13, 0x00, 0x00, + 0x01, 0x00, 0x04, 0x05, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x01, 0xE7, + 0x01, 0x15, 0x00, 0x00, 0x01, 0x00, 0x01, 0xEB, 0x01, 0x16, 0x00, 0x00, + 0x01, 0x00, 0x01, 0xEC, 0x01, 0x16, 0x00, 0x00, 0x01, 0x00, 0x01, 0xED, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x01, 0xE6, 0x01, 0x17, 0x00, 0x00, + 0x01, 0x00, 0x04, 0x10, 0x01, 0x1B, 0x00, 0x00, 0x01, 0x00, 0x04, 0x17, + 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x7C, + 0x01, 0x00, 0x04, 0x19, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x04, 0x1A, + 0x01, 0x1F, 0x00, 0x00, 0x01, 0x00, 0x04, 0x1B, 0x01, 0x1C, 0x00, 0x00, + 0x02, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x7E, 0x01, 0x00, 0x04, 0x15, + 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x80, + 0x01, 0x00, 0x04, 0x13, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x04, 0x17, + 0x01, 0x2B, 0x00, 0x00, 0x02, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x82, + 0x01, 0x00, 0x04, 0x15, 0x01, 0x2B, 0x00, 0x00, 0x02, 0x02, 0x00, 0x01, + 0x00, 0x00, 0x00, 0x84, 0x01, 0x00, 0x04, 0x13, 0x01, 0x2B, 0x00, 0x00, + 0x02, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x86, 0x01, 0x00, 0x04, 0x19, + 0x01, 0x2B, 0x00, 0x00, 0x01, 0x00, 0x04, 0x11, 0x01, 0x28, 0x00, 0x00, + 0x01, 0x00, 0x04, 0x16, 0x01, 0x2E, 0x00, 0x00, 0x01, 0x00, 0x04, 0x1A, + 0x01, 0x24, 0x00, 0x00, 0x01, 0x00, 0x04, 0x1B, 0x01, 0x29, 0x00, 0x00, + 0x01, 0x00, 0x04, 0x1C, 0x01, 0x2E, 0x00, 0x00, 0x01, 0x00, 0x04, 0x1A, + 0x01, 0x31, 0x00, 0x00, 0x01, 0x00, 0x04, 0x17, 0x01, 0x38, 0x00, 0x00, + 0x02, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x88, 0x01, 0x00, 0x04, 0x15, + 0x01, 0x38, 0x00, 0x00, 0x02, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x8A, + 0x01, 0x00, 0x04, 0x13, 0x01, 0x38, 0x00, 0x00, 0x02, 0x02, 0x00, 0x01, + 0x00, 0x00, 0x00, 0x8C, 0x01, 0x00, 0x04, 0x19, 0x01, 0x38, 0x00, 0x00, + 0x01, 0x00, 0x04, 0x12, 0x01, 0x35, 0x00, 0x00, 0x01, 0x00, 0x04, 0x18, + 0x01, 0x3A, 0x00, 0x00, 0x01, 0x00, 0x04, 0x1B, 0x01, 0x36, 0x00, 0x00, + 0x01, 0x00, 0x04, 0x1D, 0x01, 0x3A, 0x00, 0x00, 0x01, 0x00, 0x01, 0xF4, + 0x01, 0x3C, 0x00, 0x00, 0x01, 0x00, 0x01, 0xF5, 0x01, 0x3D, 0x00, 0x00, + 0x01, 0x00, 0x01, 0xF6, 0x01, 0x3E, 0x00, 0x00, 0x01, 0x00, 0x01, 0xF7, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x04, 0x74, 0x01, 0x40, 0x00, 0x00, + 0x01, 0x00, 0x04, 0x75, 0x01, 0x41, 0x00, 0x00, 0x01, 0x00, 0x04, 0x76, + 0x01, 0x41, 0x00, 0x00, 0x01, 0x00, 0x03, 0x76, 0x01, 0x43, 0x00, 0x00, + 0x01, 0x00, 0x03, 0x84, 0x01, 0x44, 0x00, 0x00, 0x01, 0x00, 0x03, 0x85, + 0x01, 0x44, 0x00, 0x00, 0x01, 0x00, 0x03, 0x8C, 0x01, 0x46, 0x00, 0x00, + 0x01, 0x00, 0x03, 0x9B, 0x01, 0x47, 0x00, 0x00, 0x01, 0x00, 0x03, 0x9C, + 0x01, 0x47, 0x00, 0x00, 0x01, 0x00, 0x09, 0x40, 0x01, 0x49, 0x00, 0x00, + 0x01, 0x00, 0x09, 0x41, 0x01, 0x4A, 0x00, 0x00, 0x02, 0x02, 0x00, 0x00, + 0x00, 0x08, 0x00, 0x8E, 0x01, 0x00, 0x09, 0x42, 0x01, 0x4E, 0x00, 0x00, + 0x01, 0x00, 0x09, 0x43, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x09, 0x44, + 0x01, 0x55, 0x00, 0x00, 0x02, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x90, + 0x01, 0x00, 0x09, 0x45, 0x01, 0x4F, 0x00, 0x00, 0x01, 0x00, 0x09, 0x46, + 0xFF, 0xFF, 0xFF, 0x00, 0x03, 0x04, 0x00, 0x92, 0x00, 0x00, 0x00, 0x00, + 0x03, 0x04, 0x00, 0x93, 0x00, 0x00, 0x00, 0x02, 0x03, 0x04, 0x00, 0x94, + 0x00, 0x00, 0x00, 0x01, 0x03, 0x01, 0x00, 0x95, 0x00, 0x00, 0x00, 0x00, + 0x03, 0x04, 0x00, 0x96, 0x00, 0x00, 0x00, 0x03, 0x01, 0x00, 0x05, 0x9B, + 0x01, 0x57, 0x00, 0x00, 0x01, 0x00, 0x05, 0xA0, 0x01, 0x58, 0x00, 0x00, + 0x01, 0x00, 0x05, 0xA1, 0x01, 0x58, 0x00, 0x00, 0x01, 0x00, 0x03, 0x88, + 0x01, 0x5A, 0x00, 0x00, 0x01, 0x00, 0x03, 0x89, 0x01, 0x5A, 0x00, 0x00, + 0x01, 0x00, 0x03, 0x8A, 0x01, 0x59, 0x00, 0x00, 0x01, 0x00, 0x09, 0x94, + 0x01, 0x5D, 0x00, 0x00, 0x02, 0x02, 0x00, 0x05, 0x00, 0x00, 0x00, 0x97, + 0x01, 0x00, 0x09, 0x98, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x09, 0x97, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x09, 0x95, 0x01, 0x61, 0x00, 0x00, + 0x02, 0x02, 0x00, 0x07, 0x00, 0x00, 0x00, 0x99, 0x01, 0x00, 0x09, 0x99, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x09, 0x9A, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x09, 0x9B, 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x06, + 0x00, 0x00, 0x00, 0x9B, 0x01, 0x00, 0x09, 0x24, 0x01, 0x69, 0x00, 0x00, + 0x01, 0x00, 0x09, 0x25, 0x01, 0x6A, 0x00, 0x00, 0x01, 0x00, 0x09, 0x26, + 0x01, 0x6A, 0x00, 0x00, 0x02, 0x02, 0x00, 0x08, 0x00, 0x00, 0x00, 0x9D, + 0x02, 0x02, 0x00, 0x08, 0x00, 0x00, 0x00, 0x9F, 0x01, 0x00, 0x09, 0x27, + 0x01, 0x6C, 0x00, 0x00, 0x01, 0x00, 0x09, 0x28, 0x01, 0x6C, 0x00, 0x00, + 0x01, 0x00, 0x05, 0x92, 0x01, 0x70, 0x00, 0x00, 0x01, 0x00, 0x05, 0xA8, + 0x01, 0x71, 0x00, 0x00, 0x01, 0x00, 0x05, 0xA9, 0xFF, 0xFF, 0xFF, 0x00, + 0x02, 0x02, 0x00, 0x08, 0x00, 0x00, 0x00, 0xA1, 0x02, 0x02, 0x00, 0x08, + 0x00, 0x00, 0x00, 0xA3, 0x01, 0x00, 0x05, 0xB6, 0x01, 0x71, 0x00, 0x00, + 0x01, 0x00, 0x05, 0x93, 0x01, 0x76, 0x00, 0x00, 0x01, 0x00, 0x05, 0xA2, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x05, 0xA3, 0xFF, 0xFF, 0xFF, 0x00, + 0x02, 0x02, 0x00, 0x08, 0x00, 0x00, 0x00, 0xA5, 0x01, 0x00, 0x05, 0x94, + 0x01, 0x7A, 0x00, 0x00, 0x01, 0x00, 0x05, 0xA4, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x05, 0xA5, 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x08, + 0x00, 0x00, 0x00, 0xA7, 0x01, 0x00, 0x05, 0x95, 0x01, 0x7E, 0x00, 0x00, + 0x01, 0x00, 0x05, 0xA6, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x05, 0xA7, + 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x08, 0x00, 0x00, 0x00, 0xA9, + 0x01, 0x00, 0x05, 0xDF, 0x01, 0x82, 0x00, 0x00, 0x01, 0x00, 0x05, 0xE4, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x05, 0xE5, 0xFF, 0xFF, 0xFF, 0x00, + 0x02, 0x02, 0x00, 0x08, 0x00, 0x00, 0x00, 0xAB, 0x01, 0x00, 0x09, 0x47, + 0x01, 0x86, 0x00, 0x00, 0x01, 0x00, 0x09, 0x49, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x09, 0x4A, 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x08, + 0x00, 0x00, 0x00, 0xAD, 0x01, 0x00, 0x09, 0x48, 0x01, 0x8A, 0x00, 0x00, + 0x01, 0x00, 0x09, 0x4B, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x09, 0x4C, + 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x08, 0x00, 0x00, 0x00, 0xAF, + 0x01, 0x00, 0x05, 0x8C, 0x01, 0x8E, 0x00, 0x00, 0x01, 0x00, 0x05, 0xAA, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x05, 0xAB, 0xFF, 0xFF, 0xFF, 0x00, + 0x02, 0x02, 0x00, 0x08, 0x00, 0x00, 0x00, 0xB1, 0x01, 0x00, 0x05, 0xAC, + 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x03, 0x00, 0x00, 0x00, 0xB3, + 0x01, 0x00, 0x05, 0xAD, 0x01, 0x96, 0x00, 0x00, 0x01, 0x00, 0x05, 0xAE, + 0x01, 0x96, 0x00, 0x00, 0x01, 0x00, 0x05, 0x8F, 0x01, 0x94, 0x00, 0x00, + 0x02, 0x02, 0x00, 0x08, 0x00, 0x00, 0x00, 0xB5, 0x01, 0x00, 0x05, 0xB1, + 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x08, 0x00, 0x00, 0x00, 0xB7, + 0x01, 0x00, 0x05, 0x90, 0x01, 0x98, 0x00, 0x00, 0x02, 0x02, 0x00, 0x08, + 0x00, 0x00, 0x00, 0xB9, 0x01, 0x00, 0x05, 0xAF, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x05, 0xB0, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x03, 0xE5, + 0x01, 0x9E, 0x00, 0x00, 0x01, 0x00, 0x03, 0xE6, 0x01, 0xA1, 0x00, 0x00, + 0x01, 0x00, 0x03, 0xE8, 0x01, 0xA0, 0x00, 0x00, 0x02, 0x02, 0x00, 0x03, + 0x00, 0x00, 0x00, 0xBB, 0x01, 0x00, 0x03, 0xE7, 0x01, 0xA1, 0x00, 0x00, + 0x01, 0x00, 0x03, 0xE9, 0x01, 0xA0, 0x00, 0x00, 0x02, 0x02, 0x00, 0x03, + 0x00, 0x00, 0x00, 0xBD, 0x01, 0x00, 0x03, 0xEA, 0x01, 0xA1, 0x00, 0x00, + 0x02, 0x02, 0x00, 0x09, 0x00, 0x00, 0x00, 0xBF, 0x01, 0x00, 0x01, 0xD9, + 0x01, 0xA5, 0x00, 0x00, 0x01, 0x00, 0x01, 0xDA, 0x01, 0xA6, 0x00, 0x00, + 0x01, 0x00, 0x01, 0xDB, 0x01, 0xA6, 0x00, 0x00, 0x01, 0x00, 0x01, 0x9C, + 0x01, 0xA8, 0x00, 0x00, 0x02, 0x02, 0x00, 0x05, 0x00, 0x00, 0x00, 0xC1, + 0x01, 0x00, 0x01, 0x9D, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x01, 0x9E, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x05, 0xDD, 0x01, 0xAE, 0x00, 0x00, + 0x01, 0x00, 0x05, 0xE0, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x05, 0xE1, + 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x08, 0x00, 0x00, 0x00, 0xC3, + 0x01, 0x00, 0x05, 0xDE, 0x01, 0xB0, 0x00, 0x00, 0x02, 0x02, 0x00, 0x08, + 0x00, 0x00, 0x00, 0xC5, 0x01, 0x00, 0x05, 0xE2, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x05, 0xE3, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x05, 0xCF, + 0x01, 0xB6, 0x00, 0x00, 0x01, 0x00, 0x05, 0xD5, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x05, 0xD6, 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x08, + 0x00, 0x00, 0x00, 0xC7, 0x01, 0x00, 0x05, 0xD0, 0x01, 0xBA, 0x00, 0x00, + 0x01, 0x00, 0x05, 0xD7, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x05, 0xD8, + 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x08, 0x00, 0x00, 0x00, 0xC9, + 0x01, 0x00, 0x05, 0xD1, 0x01, 0xBE, 0x00, 0x00, 0x01, 0x00, 0x05, 0xD9, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x05, 0xDA, 0xFF, 0xFF, 0xFF, 0x00, + 0x02, 0x02, 0x00, 0x08, 0x00, 0x00, 0x00, 0xCB, 0x01, 0x00, 0x05, 0xB2, + 0x01, 0xC0, 0x00, 0x00, 0x02, 0x02, 0x00, 0x08, 0x00, 0x00, 0x00, 0xCD, + 0x01, 0x00, 0x05, 0xB3, 0x01, 0xC4, 0x00, 0x00, 0x01, 0x00, 0x05, 0xB3, + 0x01, 0xC4, 0x00, 0x00, 0x01, 0x00, 0x05, 0xB5, 0xFF, 0xFF, 0xFF, 0x00, + 0x02, 0x02, 0x00, 0x08, 0x00, 0x00, 0x00, 0xCF, 0x01, 0x00, 0x05, 0xFF, + 0x01, 0xC8, 0x00, 0x00, 0x01, 0x00, 0x06, 0x00, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x06, 0x01, 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x08, + 0x00, 0x00, 0x00, 0xD1, 0x01, 0x00, 0x05, 0x97, 0x01, 0xCA, 0x00, 0x00, + 0x02, 0x02, 0x00, 0x08, 0x00, 0x00, 0x00, 0xD3, 0x01, 0x00, 0x05, 0xB9, + 0x01, 0xCC, 0x00, 0x00, 0x01, 0x00, 0x05, 0xBA, 0x01, 0xCC, 0x00, 0x00, + 0x01, 0x00, 0x05, 0xB7, 0x01, 0xCF, 0x00, 0x00, 0x01, 0x00, 0x05, 0xB8, + 0x01, 0xCF, 0x00, 0x00, 0x02, 0x02, 0x00, 0x08, 0x00, 0x00, 0x00, 0xD5, + 0x01, 0x00, 0x05, 0xE6, 0x01, 0xD1, 0x00, 0x00, 0x02, 0x02, 0x00, 0x08, + 0x00, 0x00, 0x00, 0xD7, 0x01, 0x00, 0x05, 0xEA, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x05, 0xEB, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x05, 0xE7, + 0x01, 0xD5, 0x00, 0x00, 0x02, 0x02, 0x00, 0x08, 0x00, 0x00, 0x00, 0xD9, + 0x01, 0x00, 0x05, 0xEC, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x05, 0xED, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x05, 0xE8, 0x01, 0xD9, 0x00, 0x00, + 0x02, 0x02, 0x00, 0x08, 0x00, 0x00, 0x00, 0xDB, 0x01, 0x00, 0x05, 0xEE, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x05, 0xEF, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x05, 0xE9, 0x01, 0xDD, 0x00, 0x00, 0x02, 0x02, 0x00, 0x08, + 0x00, 0x00, 0x00, 0xDD, 0x01, 0x00, 0x05, 0xF0, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x05, 0xF1, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x05, 0xC2, + 0x01, 0xE1, 0x00, 0x00, 0x02, 0x02, 0x00, 0x08, 0x00, 0x00, 0x00, 0xDF, + 0x01, 0x00, 0x05, 0xC3, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x05, 0xC4, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x04, 0x1F, 0x01, 0xE5, 0x00, 0x00, + 0x01, 0x00, 0x04, 0x20, 0x01, 0xE6, 0x00, 0x00, 0x01, 0x00, 0x04, 0x21, + 0x01, 0xE7, 0x00, 0x00, 0x01, 0x00, 0x04, 0x22, 0x01, 0xE8, 0x00, 0x00, + 0x01, 0x00, 0x04, 0x23, 0x01, 0xE8, 0x00, 0x00, 0x01, 0x00, 0x06, 0x02, + 0x01, 0xEA, 0x00, 0x00, 0x02, 0x02, 0x00, 0x08, 0x00, 0x00, 0x00, 0xE1, + 0x01, 0x00, 0x06, 0x03, 0x01, 0xEC, 0x00, 0x00, 0x02, 0x02, 0x00, 0x08, + 0x00, 0x00, 0x00, 0xE3, 0x01, 0x00, 0x06, 0x04, 0x01, 0xEC, 0x00, 0x00, + 0x01, 0x00, 0x06, 0x05, 0x01, 0xEE, 0x00, 0x00, 0x01, 0x00, 0x09, 0x39, + 0x01, 0xF0, 0x00, 0x00, 0x02, 0x02, 0x00, 0x07, 0x00, 0x00, 0x00, 0xE5, + 0x01, 0x00, 0x09, 0x3A, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x09, 0x3B, + 0x01, 0xF4, 0x00, 0x00, 0x01, 0x00, 0x09, 0x3C, 0x01, 0xF4, 0x00, 0x00, + 0x02, 0x02, 0x00, 0x07, 0x00, 0x00, 0x00, 0xE7, 0x01, 0x00, 0x09, 0x3A, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x04, 0x63, 0x01, 0xF7, 0x00, 0x00, + 0x01, 0x00, 0x04, 0x64, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x04, 0x6F, + 0x01, 0xF9, 0x00, 0x00, 0x01, 0x00, 0x04, 0x70, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x03, 0xEC, 0x02, 0x02, 0x00, 0x00, 0x01, 0x00, 0x03, 0xED, + 0x01, 0xFE, 0x00, 0x00, 0x01, 0x00, 0x03, 0xEE, 0x01, 0xFF, 0x00, 0x00, + 0x01, 0x00, 0x03, 0xEF, 0x02, 0x01, 0x00, 0x00, 0x03, 0x02, 0x00, 0xE9, + 0x00, 0x00, 0x00, 0x00, 0x03, 0x02, 0x00, 0xEA, 0x00, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x03, 0xF0, 0x02, 0x04, 0x00, 0x00, 0x03, 0x02, 0x00, 0xEB, + 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x00, 0x03, 0x00, 0x00, 0x00, 0xEC, + 0x01, 0x00, 0x03, 0xF1, 0x02, 0x04, 0x00, 0x00, 0x02, 0x02, 0x00, 0x03, + 0x00, 0x00, 0x00, 0xEE, 0x01, 0x00, 0x03, 0xF2, 0x02, 0x06, 0x00, 0x00, + 0x01, 0x00, 0x03, 0xF3, 0x02, 0x06, 0x00, 0x00, 0x01, 0x00, 0x03, 0xEB, + 0x02, 0x0B, 0x00, 0x00, 0x01, 0x00, 0x03, 0xF4, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x03, 0xF5, 0x02, 0x0A, 0x00, 0x00, 0x01, 0x00, 0x03, 0xF6, + 0x02, 0x0A, 0x00, 0x00, 0x02, 0x02, 0x00, 0x03, 0x00, 0x00, 0x00, 0xF0, + 0x01, 0x00, 0x03, 0xF7, 0x02, 0x10, 0x00, 0x00, 0x01, 0x00, 0x03, 0xF8, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x03, 0xF9, 0x02, 0x0F, 0x00, 0x00, + 0x03, 0x07, 0x00, 0xF2, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x00, 0x03, + 0x00, 0x00, 0x00, 0xF3, 0x01, 0x00, 0x02, 0x14, 0x02, 0x15, 0x00, 0x00, + 0x01, 0x00, 0x02, 0x15, 0x02, 0x16, 0x00, 0x00, 0x01, 0x00, 0x02, 0x16, + 0x02, 0x16, 0x00, 0x00, 0x01, 0x00, 0x02, 0x17, 0xFF, 0xFF, 0xFF, 0x00, + 0x02, 0x02, 0x00, 0x03, 0x00, 0x00, 0x00, 0xF5, 0x02, 0x02, 0x00, 0x03, + 0x00, 0x00, 0x00, 0xF7, 0x01, 0x00, 0x02, 0x18, 0x02, 0x1A, 0x00, 0x00, + 0x01, 0x00, 0x02, 0x19, 0x02, 0x1A, 0x00, 0x00, 0x01, 0x00, 0x02, 0x1A, + 0x02, 0x1B, 0x00, 0x00, 0x02, 0x02, 0x00, 0x03, 0x00, 0x00, 0x00, 0xF9, + 0x03, 0x07, 0x00, 0xFB, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x02, 0x4F, + 0x02, 0x1D, 0x00, 0x00, 0x01, 0x00, 0x02, 0x50, 0x02, 0x1E, 0x00, 0x00, + 0x01, 0x00, 0x02, 0x51, 0x02, 0x1E, 0x00, 0x00, 0x01, 0x00, 0x00, 0x17, + 0x02, 0x21, 0x00, 0x00, 0x01, 0x00, 0x00, 0x20, 0xFF, 0xFF, 0xFF, 0x00, + 0x02, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0xFC, 0x01, 0x00, 0x00, 0x21, + 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x01, 0x00, 0x01, 0x00, 0xFE, + 0x01, 0x00, 0x00, 0x2D, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x09, 0x00, + 0x02, 0x26, 0x00, 0x00, 0x02, 0x02, 0x00, 0x08, 0x00, 0x00, 0x01, 0x00, + 0x01, 0x00, 0x09, 0x01, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x09, 0x02, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x09, 0x03, 0x02, 0x2C, 0x00, 0x00, + 0x01, 0x00, 0x09, 0x04, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x09, 0x05, + 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x08, 0x00, 0x00, 0x01, 0x02, + 0x01, 0x00, 0x09, 0x06, 0x02, 0x30, 0x00, 0x00, 0x01, 0x00, 0x09, 0x07, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x09, 0x08, 0xFF, 0xFF, 0xFF, 0x00, + 0x02, 0x02, 0x00, 0x08, 0x00, 0x00, 0x01, 0x04, 0x01, 0x00, 0x09, 0x09, + 0x02, 0x34, 0x00, 0x00, 0x01, 0x00, 0x09, 0x0A, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x09, 0x0B, 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x08, + 0x00, 0x00, 0x01, 0x06, 0x01, 0x00, 0x09, 0x0C, 0x02, 0x38, 0x00, 0x00, + 0x01, 0x00, 0x09, 0x0D, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x09, 0x0E, + 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x08, 0x00, 0x00, 0x01, 0x08, + 0x01, 0x00, 0x09, 0x0F, 0x02, 0x3C, 0x00, 0x00, 0x01, 0x00, 0x09, 0x10, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x09, 0x11, 0xFF, 0xFF, 0xFF, 0x00, + 0x02, 0x02, 0x00, 0x08, 0x00, 0x00, 0x01, 0x0A, 0x01, 0x00, 0x09, 0x12, + 0x02, 0x40, 0x00, 0x00, 0x01, 0x00, 0x09, 0x13, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x09, 0x14, 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x08, + 0x00, 0x00, 0x01, 0x0C, 0x01, 0x00, 0x09, 0x15, 0x02, 0x44, 0x00, 0x00, + 0x01, 0x00, 0x09, 0x16, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x09, 0x17, + 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x08, 0x00, 0x00, 0x01, 0x0E, + 0x01, 0x00, 0x09, 0x18, 0x02, 0x48, 0x00, 0x00, 0x01, 0x00, 0x09, 0x19, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x09, 0x1A, 0xFF, 0xFF, 0xFF, 0x00, + 0x02, 0x02, 0x00, 0x08, 0x00, 0x00, 0x01, 0x10, 0x01, 0x00, 0x09, 0x1B, + 0x02, 0x4C, 0x00, 0x00, 0x01, 0x00, 0x09, 0x1C, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x09, 0x1D, 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x08, + 0x00, 0x00, 0x01, 0x12, 0x01, 0x00, 0x02, 0x01, 0x02, 0x50, 0x00, 0x00, + 0x01, 0x00, 0x02, 0x02, 0x02, 0x52, 0x00, 0x00, 0x01, 0x00, 0x02, 0x06, + 0x02, 0x4F, 0x00, 0x00, 0x02, 0x02, 0x00, 0x09, 0x00, 0x00, 0x01, 0x14, + 0x01, 0x00, 0x02, 0x04, 0x02, 0x52, 0x00, 0x00, 0x03, 0x00, 0x01, 0x16, + 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x00, 0x0A, 0x00, 0x00, 0x01, 0x17, + 0x02, 0x02, 0x00, 0x0A, 0x00, 0x00, 0x01, 0x19, 0x01, 0x00, 0x02, 0x03, + 0x02, 0x52, 0x00, 0x00, 0x01, 0x00, 0x02, 0x05, 0x02, 0x52, 0x00, 0x00, + 0x01, 0x00, 0x02, 0x84, 0x02, 0x58, 0x00, 0x00, 0x02, 0x02, 0x00, 0x09, + 0x00, 0x00, 0x01, 0x1B, 0x01, 0x00, 0x02, 0x85, 0x02, 0x5C, 0x00, 0x00, + 0x01, 0x00, 0x02, 0x89, 0x02, 0x5A, 0x00, 0x00, 0x01, 0x00, 0x02, 0x87, + 0x02, 0x5C, 0x00, 0x00, 0x03, 0x00, 0x01, 0x1D, 0x00, 0x00, 0x00, 0x00, + 0x02, 0x02, 0x00, 0x0A, 0x00, 0x00, 0x01, 0x1E, 0x01, 0x00, 0x02, 0x86, + 0x02, 0x5C, 0x00, 0x00, 0x02, 0x02, 0x00, 0x0A, 0x00, 0x00, 0x01, 0x20, + 0x01, 0x00, 0x02, 0x88, 0x02, 0x5C, 0x00, 0x00, 0x01, 0x00, 0x09, 0x84, + 0x02, 0x66, 0x00, 0x00, 0x01, 0x00, 0x09, 0x85, 0x02, 0x68, 0x00, 0x00, + 0x01, 0x00, 0x09, 0x89, 0x02, 0x63, 0x00, 0x00, 0x01, 0x00, 0x09, 0x87, + 0x02, 0x68, 0x00, 0x00, 0x02, 0x02, 0x00, 0x09, 0x00, 0x00, 0x01, 0x22, + 0x02, 0x02, 0x00, 0x03, 0x00, 0x00, 0x01, 0x24, 0x01, 0x00, 0x09, 0x8A, + 0x02, 0x66, 0x00, 0x00, 0x03, 0x00, 0x01, 0x26, 0x00, 0x00, 0x00, 0x00, + 0x02, 0x02, 0x00, 0x0A, 0x00, 0x00, 0x01, 0x27, 0x01, 0x00, 0x09, 0x86, + 0x02, 0x68, 0x00, 0x00, 0x01, 0x00, 0x09, 0x88, 0x02, 0x68, 0x00, 0x00, + 0x02, 0x02, 0x00, 0x0A, 0x00, 0x00, 0x01, 0x29, 0x01, 0x00, 0x05, 0x86, + 0x02, 0x6E, 0x00, 0x00, 0x01, 0x00, 0x05, 0x87, 0x02, 0x6F, 0x00, 0x00, + 0x01, 0x00, 0x05, 0x88, 0x02, 0x6F, 0x00, 0x00, 0x01, 0x00, 0x05, 0x89, + 0x02, 0x71, 0x00, 0x00, 0x02, 0x02, 0x00, 0x06, 0x00, 0x00, 0x01, 0x2B, + 0x01, 0x00, 0x05, 0x8A, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x05, 0x8B, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x03, 0xA9, 0x02, 0x77, 0x00, 0x00, + 0x01, 0x00, 0x03, 0xBB, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x03, 0xBC, + 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x03, 0x00, 0x00, 0x01, 0x2D, + 0x01, 0x00, 0x05, 0x5B, 0x02, 0x79, 0x00, 0x00, 0x01, 0x00, 0x05, 0x5C, + 0x02, 0x7A, 0x00, 0x00, 0x01, 0x00, 0x05, 0x5D, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x00, 0xF4, 0x02, 0x7C, 0x00, 0x00, 0x01, 0x00, 0x00, 0xF5, + 0x02, 0x7D, 0x00, 0x00, 0x01, 0x00, 0x00, 0xF6, 0x02, 0x7E, 0x00, 0x00, + 0x01, 0x00, 0x00, 0xF7, 0x02, 0x7F, 0x00, 0x00, 0x01, 0x00, 0x00, 0xF8, + 0x02, 0x80, 0x00, 0x00, 0x01, 0x00, 0x00, 0xF9, 0x02, 0x82, 0x00, 0x00, + 0x01, 0x00, 0x00, 0xFA, 0x02, 0x83, 0x00, 0x00, 0x01, 0x00, 0x00, 0xFB, + 0x02, 0x81, 0x00, 0x00, 0x01, 0x00, 0x00, 0xCC, 0x02, 0x83, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x48, 0x02, 0x85, 0x00, 0x00, 0x01, 0x00, 0x00, 0x49, + 0x02, 0x86, 0x00, 0x00, 0x01, 0x00, 0x00, 0x4A, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x06, 0xC1, 0x02, 0x88, 0x00, 0x00, 0x01, 0x00, 0x06, 0xC2, + 0x02, 0x89, 0x00, 0x00, 0x01, 0x00, 0x06, 0xC3, 0x02, 0x89, 0x00, 0x00, + 0x01, 0x00, 0x02, 0x0A, 0x02, 0x8B, 0x00, 0x00, 0x01, 0x00, 0x02, 0x0B, + 0x02, 0x8C, 0x00, 0x00, 0x01, 0x00, 0x02, 0x0C, 0x02, 0x8C, 0x00, 0x00, + 0x01, 0x00, 0x02, 0x0F, 0x02, 0x8E, 0x00, 0x00, 0x01, 0x00, 0x02, 0x10, + 0x02, 0x8F, 0x00, 0x00, 0x01, 0x00, 0x02, 0x11, 0x02, 0x8F, 0x00, 0x00, + 0x01, 0x00, 0x02, 0x2A, 0x02, 0x91, 0x00, 0x00, 0x01, 0x00, 0x02, 0x2B, + 0x02, 0x92, 0x00, 0x00, 0x01, 0x00, 0x02, 0x2C, 0x02, 0x92, 0x00, 0x00, + 0x01, 0x00, 0x02, 0x2D, 0x02, 0x97, 0x00, 0x00, 0x01, 0x00, 0x02, 0x2E, + 0x02, 0x98, 0x00, 0x00, 0x01, 0x00, 0x02, 0x2F, 0x02, 0x98, 0x00, 0x00, + 0x01, 0x00, 0x02, 0x30, 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x03, + 0x00, 0x00, 0x01, 0x2F, 0x02, 0x02, 0x00, 0x03, 0x00, 0x00, 0x01, 0x31, + 0x01, 0x00, 0x09, 0x1E, 0x02, 0x9A, 0x00, 0x00, 0x02, 0x02, 0x00, 0x08, + 0x00, 0x00, 0x01, 0x33, 0x01, 0x00, 0x09, 0x1F, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x09, 0x20, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x09, 0x21, + 0x02, 0x9E, 0x00, 0x00, 0x02, 0x02, 0x00, 0x08, 0x00, 0x00, 0x01, 0x35, + 0x01, 0x00, 0x09, 0x22, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x09, 0x23, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x01, 0xEF, 0x02, 0xA2, 0x00, 0x00, + 0x02, 0x02, 0x00, 0x09, 0x00, 0x00, 0x01, 0x37, 0x01, 0x00, 0x01, 0xF0, + 0x02, 0xA4, 0x00, 0x00, 0x01, 0x00, 0x01, 0xF1, 0x02, 0xA4, 0x00, 0x00, + 0x01, 0x00, 0x03, 0xD4, 0x02, 0xAA, 0x00, 0x00, 0x02, 0x02, 0x00, 0x01, + 0x00, 0x00, 0x01, 0x39, 0x01, 0x00, 0x03, 0xD5, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x03, 0xD6, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x03, 0xD7, + 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x03, 0x00, 0x00, 0x01, 0x3B, + 0x01, 0x00, 0x03, 0xD8, 0x02, 0xB0, 0x00, 0x00, 0x02, 0x02, 0x00, 0x01, + 0x00, 0x00, 0x01, 0x3D, 0x01, 0x00, 0x03, 0xD9, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x03, 0xDA, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x03, 0xDB, + 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x03, 0x00, 0x00, 0x01, 0x3F, + 0x01, 0x00, 0x03, 0xDC, 0x02, 0xB6, 0x00, 0x00, 0x02, 0x02, 0x00, 0x01, + 0x00, 0x00, 0x01, 0x41, 0x01, 0x00, 0x03, 0xDD, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x03, 0xDE, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x03, 0xDF, + 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x03, 0x00, 0x00, 0x01, 0x43, + 0x01, 0x00, 0x03, 0xE0, 0x02, 0xBC, 0x00, 0x00, 0x02, 0x02, 0x00, 0x01, + 0x00, 0x00, 0x01, 0x45, 0x01, 0x00, 0x03, 0xE1, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x03, 0xE2, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x03, 0xE3, + 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x03, 0x00, 0x00, 0x01, 0x47, + 0x01, 0x00, 0x05, 0xBD, 0x02, 0xBE, 0x00, 0x00, 0x02, 0x02, 0x00, 0x08, + 0x00, 0x00, 0x01, 0x49, 0x01, 0x00, 0x05, 0xBE, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x05, 0xBF, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x06, 0x06, + 0x02, 0xC2, 0x00, 0x00, 0x02, 0x02, 0x00, 0x03, 0x00, 0x00, 0x01, 0x4B, + 0x01, 0x00, 0x06, 0x07, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x06, 0x08, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x06, 0x0C, 0x02, 0xC6, 0x00, 0x00, + 0x01, 0x00, 0x06, 0x0D, 0x02, 0xC7, 0x00, 0x00, 0x01, 0x00, 0x06, 0x0E, + 0x02, 0xC7, 0x00, 0x00, 0x01, 0x00, 0x02, 0x1B, 0x02, 0xC9, 0x00, 0x00, + 0x01, 0x00, 0x02, 0x1C, 0x02, 0xCA, 0x00, 0x00, 0x01, 0x00, 0x02, 0x1D, + 0x02, 0xCB, 0x00, 0x00, 0x01, 0x00, 0x02, 0x1E, 0x02, 0xCC, 0x00, 0x00, + 0x01, 0x00, 0x02, 0x1F, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x00, 0x22, + 0x02, 0xCE, 0x00, 0x00, 0x01, 0x00, 0x00, 0x23, 0x02, 0xCF, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x24, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x00, 0x25, + 0x02, 0xD1, 0x00, 0x00, 0x01, 0x00, 0x00, 0x26, 0x02, 0xD2, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x27, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x03, 0x3D, + 0x02, 0xD6, 0x00, 0x00, 0x01, 0x00, 0x03, 0x3E, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x03, 0x3F, 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x03, + 0x00, 0x00, 0x01, 0x4D, 0x01, 0x00, 0x03, 0x43, 0x02, 0xD8, 0x00, 0x00, + 0x01, 0x00, 0x03, 0x44, 0x02, 0xD9, 0x00, 0x00, 0x01, 0x00, 0x03, 0x45, + 0x02, 0xD9, 0x00, 0x00, 0x01, 0x00, 0x03, 0x49, 0x02, 0xDB, 0x00, 0x00, + 0x01, 0x00, 0x03, 0x4A, 0x02, 0xDC, 0x00, 0x00, 0x01, 0x00, 0x03, 0x4B, + 0x02, 0xDC, 0x00, 0x00, 0x01, 0x00, 0x01, 0x05, 0x02, 0xE2, 0x00, 0x00, + 0x01, 0x00, 0x01, 0x06, 0x02, 0xE1, 0x00, 0x00, 0x01, 0x00, 0x01, 0x07, + 0x02, 0xEE, 0x00, 0x00, 0x01, 0x00, 0x01, 0x08, 0x02, 0xE5, 0x00, 0x00, + 0x02, 0x02, 0x00, 0x00, 0x00, 0x09, 0x01, 0x4F, 0x03, 0x00, 0x01, 0x51, + 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x01, 0x52, 0x00, 0x00, 0x00, 0x01, + 0x03, 0x00, 0x01, 0x53, 0x00, 0x00, 0x00, 0x02, 0x03, 0x01, 0x01, 0x54, + 0x00, 0x00, 0x00, 0x03, 0x01, 0x00, 0x01, 0x09, 0x02, 0xEA, 0x00, 0x00, + 0x01, 0x00, 0x01, 0x0C, 0x02, 0xDE, 0x00, 0x00, 0x01, 0x00, 0x01, 0x0B, + 0x02, 0xE9, 0x00, 0x00, 0x03, 0x00, 0x01, 0x55, 0x00, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x01, 0x0A, 0x02, 0xED, 0x00, 0x00, 0x02, 0x02, 0x00, 0x0B, + 0x00, 0x1B, 0x01, 0x56, 0x02, 0x02, 0x00, 0x0B, 0x00, 0x1B, 0x01, 0x58, + 0x02, 0x02, 0x00, 0x00, 0x00, 0x12, 0x01, 0x5A, 0x03, 0x01, 0x01, 0x5C, + 0x00, 0x00, 0x00, 0x04, 0x01, 0x00, 0x00, 0xCD, 0x02, 0xFC, 0x00, 0x00, + 0x01, 0x00, 0x00, 0xD3, 0x02, 0xFE, 0x00, 0x00, 0x01, 0x00, 0x00, 0xEE, + 0x03, 0x01, 0x00, 0x00, 0x01, 0x00, 0x00, 0xCA, 0x03, 0x0D, 0x00, 0x00, + 0x01, 0x00, 0x00, 0xCC, 0x02, 0xF3, 0x00, 0x00, 0x01, 0x00, 0x00, 0xCE, + 0x02, 0xF4, 0x00, 0x00, 0x01, 0x00, 0x00, 0xD4, 0x02, 0xF5, 0x00, 0x00, + 0x01, 0x00, 0x00, 0xD6, 0x03, 0x0E, 0x00, 0x00, 0x01, 0x00, 0x00, 0xE7, + 0x03, 0x00, 0x00, 0x00, 0x02, 0x02, 0x00, 0x0B, 0x00, 0x16, 0x01, 0x5D, + 0x02, 0x02, 0x00, 0x0B, 0x00, 0x15, 0x01, 0x5F, 0x01, 0x00, 0x00, 0xEA, + 0x02, 0xFB, 0x00, 0x00, 0x01, 0x00, 0x00, 0xEB, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x00, 0xD0, 0x02, 0xFD, 0x00, 0x00, 0x01, 0x00, 0x00, 0xD1, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x00, 0xD5, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x00, 0xE8, 0x02, 0xFF, 0x00, 0x00, 0x03, 0x02, 0x01, 0x61, + 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0xEF, 0xFF, 0xFF, 0xFF, 0x00, + 0x02, 0x02, 0x00, 0x0B, 0x00, 0x00, 0x01, 0x62, 0x01, 0x00, 0x00, 0xEC, + 0x03, 0x03, 0x00, 0x00, 0x02, 0x02, 0x00, 0x0B, 0x00, 0x18, 0x01, 0x64, + 0x01, 0x00, 0x00, 0xE9, 0x03, 0x05, 0x00, 0x00, 0x01, 0x00, 0x00, 0xE4, + 0x03, 0x07, 0x00, 0x00, 0x01, 0x00, 0x00, 0xE5, 0x03, 0x08, 0x00, 0x00, + 0x01, 0x00, 0x00, 0xE6, 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x0B, + 0x00, 0x04, 0x01, 0x66, 0x01, 0x00, 0x00, 0xD9, 0x03, 0x0A, 0x00, 0x00, + 0x01, 0x00, 0x00, 0xDD, 0x03, 0x0B, 0x00, 0x00, 0x02, 0x02, 0x00, 0x0B, + 0x00, 0x06, 0x01, 0x68, 0x02, 0x02, 0x00, 0x0B, 0x00, 0x08, 0x01, 0x6A, + 0x01, 0x00, 0x00, 0xD7, 0x03, 0x0F, 0x00, 0x00, 0x01, 0x00, 0x00, 0xD8, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x00, 0xDA, 0x03, 0x11, 0x00, 0x00, + 0x01, 0x00, 0x00, 0xDB, 0x03, 0x12, 0x00, 0x00, 0x01, 0x00, 0x00, 0xDC, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x00, 0xDE, 0x03, 0x15, 0x00, 0x00, + 0x01, 0x00, 0x00, 0xDF, 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x0A, + 0x00, 0x00, 0x01, 0x6C, 0x01, 0x00, 0x00, 0xE0, 0x03, 0x14, 0x00, 0x00, + 0x01, 0x00, 0x00, 0xE1, 0x03, 0x14, 0x00, 0x00, 0x01, 0x00, 0x04, 0x06, + 0x03, 0x19, 0x00, 0x00, 0x01, 0x00, 0x04, 0x07, 0x03, 0x1A, 0x00, 0x00, + 0x01, 0x00, 0x04, 0x08, 0x03, 0x1B, 0x00, 0x00, 0x01, 0x00, 0x04, 0x09, + 0x03, 0x1C, 0x00, 0x00, 0x01, 0x00, 0x04, 0x0A, 0x03, 0x1D, 0x00, 0x00, + 0x01, 0x00, 0x04, 0x0B, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x04, 0x24, + 0x03, 0x1F, 0x00, 0x00, 0x01, 0x00, 0x04, 0x25, 0x03, 0x20, 0x00, 0x00, + 0x01, 0x00, 0x04, 0x26, 0x03, 0x24, 0x00, 0x00, 0x01, 0x00, 0x04, 0x27, + 0x03, 0x21, 0x00, 0x00, 0x01, 0x00, 0x04, 0x28, 0x03, 0x23, 0x00, 0x00, + 0x02, 0x02, 0x00, 0x08, 0x00, 0x00, 0x01, 0x6E, 0x01, 0x00, 0x04, 0x28, + 0x03, 0x23, 0x00, 0x00, 0x01, 0x00, 0x07, 0x84, 0x03, 0x28, 0x00, 0x00, + 0x01, 0x00, 0x07, 0x85, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x07, 0x86, + 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x03, 0x00, 0x00, 0x01, 0x70, + 0x01, 0x00, 0x07, 0x87, 0x03, 0x2C, 0x00, 0x00, 0x01, 0x00, 0x07, 0x88, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x07, 0x89, 0xFF, 0xFF, 0xFF, 0x00, + 0x02, 0x02, 0x00, 0x03, 0x00, 0x00, 0x01, 0x72, 0x01, 0x00, 0x07, 0x8A, + 0x03, 0x30, 0x00, 0x00, 0x01, 0x00, 0x07, 0x8B, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x07, 0x8C, 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x03, + 0x00, 0x00, 0x01, 0x74, 0x01, 0x00, 0x07, 0x8D, 0x03, 0x34, 0x00, 0x00, + 0x01, 0x00, 0x07, 0x8E, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x07, 0x8F, + 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x03, 0x00, 0x00, 0x01, 0x76, + 0x01, 0x00, 0x07, 0x90, 0x03, 0x38, 0x00, 0x00, 0x01, 0x00, 0x07, 0x91, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x07, 0x92, 0xFF, 0xFF, 0xFF, 0x00, + 0x02, 0x02, 0x00, 0x03, 0x00, 0x00, 0x01, 0x78, 0x01, 0x00, 0x05, 0x91, + 0x03, 0x3A, 0x00, 0x00, 0x02, 0x02, 0x00, 0x06, 0x00, 0x00, 0x01, 0x7A, + 0x01, 0x00, 0x05, 0xBB, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x05, 0xBC, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x00, 0x28, 0x03, 0x3E, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x29, 0x03, 0x3F, 0x00, 0x00, 0x01, 0x00, 0x00, 0x2A, + 0x03, 0x40, 0x00, 0x00, 0x01, 0x00, 0x00, 0x2B, 0x03, 0x41, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x2C, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x00, 0x5C, + 0x03, 0x43, 0x00, 0x00, 0x01, 0x00, 0x00, 0x5D, 0x03, 0x43, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x5E, 0x03, 0x45, 0x00, 0x00, 0x01, 0x00, 0x00, 0x5F, + 0x03, 0x45, 0x00, 0x00, 0x01, 0x00, 0x00, 0x62, 0x03, 0x47, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x63, 0x03, 0x47, 0x00, 0x00, 0x01, 0x00, 0x00, 0x6A, + 0x03, 0x49, 0x00, 0x00, 0x01, 0x00, 0x00, 0x6B, 0x03, 0x49, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x68, 0x03, 0x4B, 0x00, 0x00, 0x01, 0x00, 0x00, 0x69, + 0x03, 0x4B, 0x00, 0x00, 0x01, 0x00, 0x00, 0x6C, 0x03, 0x4D, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x6D, 0x03, 0x4D, 0x00, 0x00, 0x02, 0x02, 0x00, 0x0B, + 0x00, 0x09, 0x01, 0x7C, 0x02, 0x02, 0x00, 0x0B, 0x00, 0x08, 0x01, 0x7E, + 0x02, 0x02, 0x00, 0x0B, 0x00, 0x07, 0x01, 0x80, 0x02, 0x02, 0x00, 0x0B, + 0x00, 0x04, 0x01, 0x82, 0x01, 0x00, 0x00, 0x59, 0x03, 0x4E, 0x00, 0x00, + 0x02, 0x02, 0x00, 0x0B, 0x00, 0x01, 0x01, 0x84, 0x02, 0x02, 0x00, 0x0B, + 0x00, 0x05, 0x01, 0x86, 0x01, 0x00, 0x00, 0x64, 0x03, 0x56, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x65, 0x03, 0x56, 0x00, 0x00, 0x02, 0x02, 0x00, 0x0B, + 0x00, 0x06, 0x01, 0x88, 0x01, 0x00, 0x00, 0x66, 0x03, 0x59, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x67, 0x03, 0x59, 0x00, 0x00, 0x01, 0x00, 0x00, 0x7D, + 0x03, 0x5B, 0x00, 0x00, 0x01, 0x00, 0x00, 0x7E, 0x03, 0x5B, 0x00, 0x00, + 0x02, 0x02, 0x00, 0x0B, 0x00, 0x06, 0x01, 0x8A, 0x01, 0x00, 0x00, 0x7F, + 0x03, 0x5E, 0x00, 0x00, 0x01, 0x00, 0x00, 0x80, 0x03, 0x5E, 0x00, 0x00, + 0x02, 0x02, 0x00, 0x0B, 0x00, 0x07, 0x01, 0x8C, 0x01, 0x00, 0x00, 0x6F, + 0x03, 0x61, 0x00, 0x00, 0x01, 0x00, 0x00, 0x70, 0x03, 0x61, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x73, 0x03, 0x63, 0x00, 0x00, 0x01, 0x00, 0x00, 0x74, + 0x03, 0x63, 0x00, 0x00, 0x01, 0x00, 0x00, 0x78, 0x03, 0x65, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x79, 0x03, 0x65, 0x00, 0x00, 0x01, 0x00, 0x00, 0x76, + 0x03, 0x67, 0x00, 0x00, 0x01, 0x00, 0x00, 0x77, 0x03, 0x67, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x81, 0x03, 0x69, 0x00, 0x00, 0x01, 0x00, 0x00, 0x82, + 0x03, 0x69, 0x00, 0x00, 0x01, 0x00, 0x00, 0x7B, 0x03, 0x6B, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x7C, 0x03, 0x6B, 0x00, 0x00, 0x01, 0x00, 0x00, 0x83, + 0x03, 0x6D, 0x00, 0x00, 0x01, 0x00, 0x00, 0x84, 0x03, 0x6D, 0x00, 0x00, + 0x02, 0x02, 0x00, 0x0B, 0x00, 0x09, 0x01, 0x8E, 0x02, 0x02, 0x00, 0x0B, + 0x00, 0x08, 0x01, 0x90, 0x02, 0x02, 0x00, 0x0B, 0x00, 0x05, 0x01, 0x92, + 0x02, 0x02, 0x00, 0x0B, 0x00, 0x04, 0x01, 0x94, 0x02, 0x02, 0x00, 0x0B, + 0x00, 0x03, 0x01, 0x96, 0x02, 0x02, 0x00, 0x0B, 0x00, 0x02, 0x01, 0x98, + 0x01, 0x00, 0x00, 0x56, 0x03, 0x6E, 0x00, 0x00, 0x02, 0x02, 0x00, 0x0A, + 0x00, 0x00, 0x01, 0x9A, 0x01, 0x00, 0x00, 0x7A, 0x03, 0x6B, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x88, 0x03, 0x78, 0x00, 0x00, 0x01, 0x00, 0x00, 0x89, + 0x03, 0x78, 0x00, 0x00, 0x01, 0x00, 0x00, 0x8A, 0x03, 0x7A, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x8B, 0x03, 0x7A, 0x00, 0x00, 0x01, 0x00, 0x00, 0x91, + 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x0B, 0x00, 0x09, 0x01, 0x9C, + 0x02, 0x02, 0x00, 0x0B, 0x00, 0x02, 0x01, 0x9E, 0x01, 0x00, 0x00, 0x5A, + 0x03, 0x7C, 0x00, 0x00, 0x02, 0x02, 0x00, 0x0B, 0x00, 0x06, 0x01, 0xA0, + 0x02, 0x02, 0x00, 0x0B, 0x00, 0x07, 0x01, 0xA2, 0x01, 0x00, 0x00, 0x8E, + 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x0B, 0x00, 0x04, 0x01, 0xA4, + 0x01, 0x00, 0x00, 0x8D, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x00, 0x8F, + 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x0B, 0x00, 0x08, 0x01, 0xA6, + 0x01, 0x00, 0x00, 0x90, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x00, 0x98, + 0x03, 0x88, 0x00, 0x00, 0x01, 0x00, 0x00, 0x99, 0x03, 0x88, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x92, 0x03, 0x8A, 0x00, 0x00, 0x01, 0x00, 0x00, 0x93, + 0x03, 0x8A, 0x00, 0x00, 0x01, 0x00, 0x00, 0x94, 0x03, 0x8C, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x95, 0x03, 0x8C, 0x00, 0x00, 0x02, 0x02, 0x00, 0x0B, + 0x00, 0x01, 0x01, 0xA8, 0x01, 0x00, 0x00, 0x57, 0x03, 0x92, 0x00, 0x00, + 0x02, 0x02, 0x00, 0x0B, 0x00, 0x0E, 0x01, 0xAA, 0x02, 0x02, 0x00, 0x0B, + 0x00, 0x04, 0x01, 0xAC, 0x02, 0x02, 0x00, 0x0B, 0x00, 0x0F, 0x01, 0xAE, + 0x02, 0x02, 0x00, 0x0B, 0x00, 0x10, 0x01, 0xB0, 0x01, 0x00, 0x00, 0x9A, + 0x03, 0x94, 0x00, 0x00, 0x01, 0x00, 0x00, 0x9B, 0x03, 0x94, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x9C, 0x03, 0x96, 0x00, 0x00, 0x01, 0x00, 0x00, 0x9D, + 0x03, 0x96, 0x00, 0x00, 0x01, 0x00, 0x00, 0x9E, 0x03, 0x98, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x9F, 0x03, 0x98, 0x00, 0x00, 0x01, 0x00, 0x00, 0xAA, + 0x03, 0x9B, 0x00, 0x00, 0x01, 0x00, 0x00, 0xAB, 0x03, 0xBB, 0x00, 0x00, + 0x03, 0x00, 0x01, 0xB2, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0xB4, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x00, 0xB5, 0x03, 0x9B, 0x00, 0x00, + 0x02, 0x02, 0x00, 0x0D, 0x00, 0x01, 0x01, 0xB3, 0x01, 0x00, 0x00, 0xB5, + 0x03, 0xAF, 0x00, 0x00, 0x01, 0x00, 0x00, 0xA6, 0x03, 0xA0, 0x00, 0x00, + 0x01, 0x00, 0x00, 0xA7, 0x03, 0xA2, 0x00, 0x00, 0x01, 0x00, 0x00, 0xA8, + 0x03, 0xA2, 0x00, 0x00, 0x01, 0x00, 0x00, 0xA9, 0x03, 0xA4, 0x00, 0x00, + 0x01, 0x00, 0x00, 0xAC, 0x03, 0xA4, 0x00, 0x00, 0x01, 0x00, 0x00, 0xAD, + 0x03, 0xAA, 0x00, 0x00, 0x02, 0x02, 0x00, 0x0B, 0x00, 0x0A, 0x01, 0xB5, + 0x02, 0x02, 0x00, 0x0B, 0x00, 0x02, 0x01, 0xB7, 0x02, 0x02, 0x00, 0x0B, + 0x00, 0x01, 0x01, 0xB9, 0x01, 0x00, 0x00, 0x58, 0x03, 0xB6, 0x00, 0x00, + 0x01, 0x00, 0x00, 0xAE, 0x03, 0xAA, 0x00, 0x00, 0x01, 0x00, 0x00, 0xAF, + 0x03, 0xAB, 0x00, 0x00, 0x02, 0x02, 0x00, 0x0B, 0x00, 0x0D, 0x01, 0xBB, + 0x01, 0x00, 0x00, 0xB0, 0x03, 0xAF, 0x00, 0x00, 0x01, 0x00, 0x00, 0xB1, + 0x03, 0xB1, 0x00, 0x00, 0x03, 0x00, 0x01, 0xBD, 0x00, 0x00, 0x00, 0x01, + 0x02, 0x02, 0x00, 0x0B, 0x00, 0x12, 0x01, 0xBE, 0x02, 0x02, 0x00, 0x00, + 0x00, 0x0F, 0x01, 0xC0, 0x01, 0x00, 0x00, 0xB2, 0x03, 0xB4, 0x00, 0x00, + 0x01, 0x00, 0x00, 0xB3, 0x03, 0xB5, 0x00, 0x00, 0x03, 0x01, 0x01, 0xC2, + 0x00, 0x00, 0x00, 0x02, 0x03, 0x01, 0x01, 0xC3, 0x00, 0x00, 0x00, 0x03, + 0x02, 0x02, 0x00, 0x0B, 0x00, 0x0C, 0x01, 0xC4, 0x02, 0x02, 0x00, 0x0D, + 0x00, 0x01, 0x01, 0xC6, 0x01, 0x00, 0x00, 0xB6, 0x03, 0xBA, 0x00, 0x00, + 0x02, 0x02, 0x00, 0x0A, 0x00, 0x00, 0x01, 0xC8, 0x03, 0x02, 0x01, 0xCA, + 0x00, 0x00, 0x00, 0x00, 0x03, 0x02, 0x01, 0xCB, 0x00, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x00, 0xBF, 0x03, 0xBD, 0x00, 0x00, 0x01, 0x00, 0x00, 0xC0, + 0x03, 0xBD, 0x00, 0x00, 0x01, 0x00, 0x00, 0xB9, 0x03, 0xC7, 0x00, 0x00, + 0x01, 0x00, 0x00, 0xBB, 0x03, 0xBF, 0x00, 0x00, 0x01, 0x00, 0x00, 0xBD, + 0x03, 0xC1, 0x00, 0x00, 0x01, 0x00, 0x00, 0xBE, 0x03, 0xC1, 0x00, 0x00, + 0x02, 0x02, 0x00, 0x0B, 0x00, 0x13, 0x01, 0xCC, 0x01, 0x00, 0x00, 0xB8, + 0x03, 0xC4, 0x00, 0x00, 0x02, 0x02, 0x00, 0x0B, 0x00, 0x0A, 0x01, 0xCE, + 0x02, 0x02, 0x00, 0x0A, 0x00, 0x00, 0x01, 0xD0, 0x01, 0x00, 0x00, 0xBA, + 0x03, 0xC7, 0x00, 0x00, 0x03, 0x01, 0x01, 0xD2, 0x00, 0x00, 0x00, 0x01, + 0x01, 0x00, 0x08, 0x67, 0x03, 0xC9, 0x00, 0x00, 0x01, 0x00, 0x08, 0x68, + 0x03, 0xCC, 0x00, 0x00, 0x01, 0x00, 0x08, 0x69, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x08, 0x6B, 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x01, + 0x00, 0x00, 0x01, 0xD3, 0x01, 0x00, 0x01, 0xDC, 0x03, 0xCE, 0x00, 0x00, + 0x02, 0x02, 0x00, 0x09, 0x00, 0x00, 0x01, 0xD5, 0x01, 0x00, 0x01, 0xDD, + 0x03, 0xD0, 0x00, 0x00, 0x01, 0x00, 0x01, 0xDE, 0x03, 0xD0, 0x00, 0x00, + 0x01, 0x00, 0x08, 0x53, 0x03, 0xD2, 0x00, 0x00, 0x01, 0x00, 0x08, 0x58, + 0x03, 0xD3, 0x00, 0x00, 0x01, 0x00, 0x08, 0x5D, 0x03, 0xD4, 0x00, 0x00, + 0x01, 0x00, 0x08, 0x62, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x08, 0x54, + 0x03, 0xD6, 0x00, 0x00, 0x01, 0x00, 0x08, 0x59, 0x03, 0xD7, 0x00, 0x00, + 0x01, 0x00, 0x08, 0x5E, 0x03, 0xD8, 0x00, 0x00, 0x01, 0x00, 0x08, 0x63, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x08, 0x55, 0x03, 0xDA, 0x00, 0x00, + 0x01, 0x00, 0x08, 0x5A, 0x03, 0xDB, 0x00, 0x00, 0x01, 0x00, 0x08, 0x5F, + 0x03, 0xDC, 0x00, 0x00, 0x01, 0x00, 0x08, 0x64, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x09, 0x62, 0x03, 0xE1, 0x00, 0x00, 0x01, 0x00, 0x09, 0x63, + 0x03, 0xE2, 0x00, 0x00, 0x01, 0x00, 0x09, 0x64, 0x03, 0xE2, 0x00, 0x00, + 0x01, 0x00, 0x09, 0x65, 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x03, + 0x00, 0x00, 0x01, 0xD7, 0x02, 0x02, 0x00, 0x03, 0x00, 0x00, 0x01, 0xD9, + 0x01, 0x00, 0x09, 0x66, 0x03, 0xE6, 0x00, 0x00, 0x01, 0x00, 0x09, 0x67, + 0x03, 0xE6, 0x00, 0x00, 0x01, 0x00, 0x09, 0x68, 0x03, 0xE7, 0x00, 0x00, + 0x02, 0x02, 0x00, 0x03, 0x00, 0x00, 0x01, 0xDB, 0x03, 0x07, 0x01, 0xDD, + 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x26, 0x03, 0xED, 0x00, 0x00, + 0x01, 0x00, 0x01, 0x28, 0x03, 0xEA, 0x00, 0x00, 0x01, 0x00, 0x01, 0x29, + 0x03, 0xEA, 0x00, 0x00, 0x02, 0x02, 0x00, 0x0B, 0x00, 0x11, 0x01, 0xDE, + 0x01, 0x00, 0x01, 0x25, 0x03, 0xEB, 0x00, 0x00, 0x01, 0x00, 0x01, 0x27, + 0x03, 0xED, 0x00, 0x00, 0x01, 0x00, 0x00, 0x4C, 0x03, 0xEF, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x4D, 0x03, 0xF0, 0x00, 0x00, 0x01, 0x00, 0x00, 0x4E, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x01, 0x2D, 0x03, 0xF5, 0x00, 0x00, + 0x01, 0x00, 0x01, 0x2E, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x01, 0x2F, + 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x0B, 0x00, 0x02, 0x01, 0xE0, + 0x02, 0x02, 0x00, 0x0B, 0x00, 0x09, 0x01, 0xE2, 0x01, 0x00, 0x01, 0x30, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x01, 0x31, 0xFF, 0xFF, 0xFF, 0x00, + 0x02, 0x02, 0x00, 0x0B, 0x00, 0x04, 0x01, 0xE4, 0x01, 0x00, 0x01, 0x3A, + 0x03, 0xFA, 0x00, 0x00, 0x01, 0x00, 0x01, 0x3B, 0x03, 0xFB, 0x00, 0x00, + 0x01, 0x00, 0x01, 0x3C, 0x03, 0xFB, 0x00, 0x00, 0x01, 0x00, 0x01, 0x3F, + 0x03, 0xFF, 0x00, 0x00, 0x01, 0x00, 0x01, 0x40, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x01, 0x41, 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x0B, + 0x00, 0x07, 0x01, 0xE6, 0x01, 0x00, 0x02, 0x78, 0x04, 0x06, 0x00, 0x00, + 0x01, 0x00, 0x02, 0x79, 0x04, 0x05, 0x00, 0x00, 0x01, 0x00, 0x02, 0x7A, + 0x04, 0x05, 0x00, 0x00, 0x01, 0x00, 0x02, 0x83, 0x04, 0x03, 0x00, 0x00, + 0x02, 0x02, 0x00, 0x06, 0x00, 0x00, 0x01, 0xE8, 0x03, 0x01, 0x01, 0xEA, + 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x00, 0x0A, 0x00, 0x00, 0x01, 0xEB, + 0x01, 0x00, 0x02, 0x81, 0x04, 0x05, 0x00, 0x00, 0x01, 0x00, 0x02, 0x82, + 0x04, 0x05, 0x00, 0x00, 0x02, 0x02, 0x00, 0x06, 0x00, 0x00, 0x01, 0xED, + 0x03, 0x01, 0x01, 0xEF, 0x00, 0x00, 0x00, 0x02, 0x01, 0x00, 0x01, 0x54, + 0x04, 0x17, 0x00, 0x00, 0x01, 0x00, 0x01, 0x55, 0x04, 0x11, 0x00, 0x00, + 0x01, 0x00, 0x01, 0x56, 0x04, 0x10, 0x00, 0x00, 0x01, 0x00, 0x01, 0x57, + 0x04, 0x15, 0x00, 0x00, 0x01, 0x00, 0x01, 0x53, 0x04, 0x0B, 0x00, 0x00, + 0x03, 0x00, 0x01, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x00, 0x00, + 0x00, 0x0A, 0x01, 0xF1, 0x01, 0x00, 0x01, 0x58, 0x04, 0x0A, 0x00, 0x00, + 0x02, 0x02, 0x00, 0x01, 0x00, 0x00, 0x01, 0xF3, 0x01, 0x00, 0x01, 0x59, + 0x04, 0x0A, 0x00, 0x00, 0x03, 0x00, 0x01, 0xF5, 0x00, 0x00, 0x00, 0x03, + 0x01, 0x00, 0x01, 0x5A, 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x00, + 0x00, 0x10, 0x01, 0xF6, 0x01, 0x00, 0x01, 0x5B, 0xFF, 0xFF, 0xFF, 0x00, + 0x02, 0x02, 0x00, 0x0B, 0x00, 0x14, 0x01, 0xF8, 0x01, 0x00, 0x01, 0x5C, + 0xFF, 0xFF, 0xFF, 0x00, 0x03, 0x00, 0x01, 0xFA, 0x00, 0x00, 0x00, 0x01, + 0x03, 0x00, 0x01, 0xFB, 0x00, 0x00, 0x00, 0x02, 0x01, 0x00, 0x01, 0x42, + 0x04, 0x20, 0x00, 0x00, 0x01, 0x00, 0x01, 0x43, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x01, 0x44, 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x0B, + 0x00, 0x02, 0x01, 0xFC, 0x01, 0x00, 0x01, 0xB2, 0x04, 0x22, 0x00, 0x00, + 0x01, 0x00, 0x01, 0xB3, 0x04, 0x23, 0x00, 0x00, 0x01, 0x00, 0x01, 0xB4, + 0x04, 0x27, 0x00, 0x00, 0x01, 0x00, 0x01, 0xB6, 0x04, 0x25, 0x00, 0x00, + 0x01, 0x00, 0x01, 0xB7, 0x04, 0x26, 0x00, 0x00, 0x01, 0x00, 0x01, 0xB8, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x01, 0xB5, 0x04, 0x24, 0x00, 0x00, + 0x01, 0x00, 0x01, 0xBD, 0x04, 0x29, 0x00, 0x00, 0x01, 0x00, 0x01, 0xBE, + 0x04, 0x2A, 0x00, 0x00, 0x01, 0x00, 0x01, 0xBF, 0x04, 0x2B, 0x00, 0x00, + 0x01, 0x00, 0x01, 0xC0, 0x04, 0x2C, 0x00, 0x00, 0x01, 0x00, 0x01, 0xC1, + 0x04, 0x2D, 0x00, 0x00, 0x01, 0x00, 0x01, 0xC2, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x01, 0x5E, 0x04, 0x2F, 0x00, 0x00, 0x01, 0x00, 0x01, 0x5F, + 0x04, 0x32, 0x00, 0x00, 0x01, 0x00, 0x01, 0x60, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x01, 0x61, 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x00, + 0x00, 0x0B, 0x01, 0xFE, 0x01, 0x00, 0x05, 0xC5, 0x04, 0x36, 0x00, 0x00, + 0x01, 0x00, 0x05, 0xCA, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x05, 0xCB, + 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x08, 0x00, 0x00, 0x02, 0x00, + 0x01, 0x00, 0x09, 0x7B, 0x04, 0x48, 0x00, 0x00, 0x01, 0x00, 0x09, 0x7C, + 0x04, 0x46, 0x00, 0x00, 0x01, 0x00, 0x09, 0x7D, 0x04, 0x47, 0x00, 0x00, + 0x01, 0x00, 0x09, 0x7E, 0x04, 0x47, 0x00, 0x00, 0x01, 0x00, 0x09, 0x7F, + 0x04, 0x47, 0x00, 0x00, 0x01, 0x00, 0x09, 0x80, 0x04, 0x47, 0x00, 0x00, + 0x01, 0x00, 0x09, 0x81, 0x04, 0x47, 0x00, 0x00, 0x01, 0x00, 0x09, 0x82, + 0x04, 0x47, 0x00, 0x00, 0x01, 0x00, 0x09, 0x83, 0x04, 0x3F, 0x00, 0x00, + 0x02, 0x02, 0x00, 0x01, 0x00, 0x00, 0x02, 0x02, 0x02, 0x02, 0x00, 0x01, + 0x00, 0x01, 0x02, 0x04, 0x02, 0x02, 0x00, 0x01, 0x00, 0x02, 0x02, 0x06, + 0x02, 0x02, 0x00, 0x01, 0x00, 0x03, 0x02, 0x08, 0x02, 0x02, 0x00, 0x01, + 0x00, 0x04, 0x02, 0x0A, 0x02, 0x02, 0x00, 0x01, 0x00, 0x05, 0x02, 0x0C, + 0x03, 0x01, 0x02, 0x0E, 0x00, 0x00, 0x00, 0x01, 0x03, 0x02, 0x02, 0x0F, + 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x02, 0x10, 0x00, 0x00, 0x00, 0x02, + 0x02, 0x02, 0x00, 0x01, 0x00, 0x00, 0x02, 0x11, 0x02, 0x02, 0x00, 0x01, + 0x00, 0x01, 0x02, 0x13, 0x02, 0x02, 0x00, 0x01, 0x00, 0x02, 0x02, 0x15, + 0x02, 0x02, 0x00, 0x01, 0x00, 0x03, 0x02, 0x17, 0x02, 0x02, 0x00, 0x01, + 0x00, 0x04, 0x02, 0x19, 0x02, 0x02, 0x00, 0x01, 0x00, 0x05, 0x02, 0x1B, + 0x01, 0x00, 0x01, 0x91, 0x04, 0x5A, 0x00, 0x00, 0x01, 0x00, 0x01, 0x92, + 0x04, 0x59, 0x00, 0x00, 0x01, 0x00, 0x01, 0x93, 0x04, 0x58, 0x00, 0x00, + 0x01, 0x00, 0x01, 0x94, 0x04, 0x58, 0x00, 0x00, 0x01, 0x00, 0x01, 0x95, + 0x04, 0x58, 0x00, 0x00, 0x01, 0x00, 0x01, 0x96, 0x04, 0x58, 0x00, 0x00, + 0x01, 0x00, 0x01, 0x97, 0x04, 0x58, 0x00, 0x00, 0x01, 0x00, 0x01, 0x98, + 0x04, 0x58, 0x00, 0x00, 0x01, 0x00, 0x01, 0x99, 0x04, 0x57, 0x00, 0x00, + 0x03, 0x02, 0x02, 0x1D, 0x00, 0x00, 0x00, 0x00, 0x03, 0x01, 0x02, 0x1E, + 0x00, 0x00, 0x00, 0x01, 0x03, 0x00, 0x02, 0x1F, 0x00, 0x00, 0x00, 0x02, + 0x01, 0x00, 0x01, 0xCE, 0x04, 0x6B, 0x00, 0x00, 0x01, 0x00, 0x01, 0xCF, + 0x04, 0x62, 0x00, 0x00, 0x01, 0x00, 0x01, 0xD0, 0x04, 0x65, 0x00, 0x00, + 0x01, 0x00, 0x01, 0xD1, 0x04, 0x6C, 0x00, 0x00, 0x01, 0x00, 0x01, 0xD2, + 0x04, 0x64, 0x00, 0x00, 0x01, 0x00, 0x01, 0xD3, 0x04, 0x66, 0x00, 0x00, + 0x01, 0x00, 0x01, 0xD5, 0x04, 0x69, 0x00, 0x00, 0x02, 0x02, 0x00, 0x00, + 0x00, 0x0D, 0x02, 0x20, 0x02, 0x02, 0x00, 0x01, 0x00, 0x00, 0x02, 0x22, + 0x02, 0x02, 0x00, 0x00, 0x00, 0x0E, 0x02, 0x24, 0x03, 0x02, 0x02, 0x26, + 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x02, 0x27, 0x00, 0x00, 0x00, 0x00, + 0x03, 0x00, 0x02, 0x28, 0x00, 0x00, 0x00, 0x03, 0x03, 0x00, 0x02, 0x29, + 0x00, 0x00, 0x00, 0x04, 0x03, 0x07, 0x02, 0x2A, 0x00, 0x00, 0x00, 0x00, + 0x03, 0x00, 0x02, 0x2B, 0x00, 0x00, 0x00, 0x02, 0x03, 0x00, 0x02, 0x2C, + 0x00, 0x00, 0x00, 0x01, 0x03, 0x01, 0x02, 0x2D, 0x00, 0x00, 0x00, 0x02, + 0x01, 0x00, 0x08, 0xA4, 0x04, 0x7B, 0x00, 0x00, 0x01, 0x00, 0x08, 0xA5, + 0x04, 0x6F, 0x00, 0x00, 0x02, 0x02, 0x00, 0x00, 0x00, 0x0C, 0x02, 0x2E, + 0x01, 0x00, 0x08, 0xA7, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x08, 0xA8, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x08, 0xA9, 0x04, 0x77, 0x00, 0x00, + 0x01, 0x00, 0x08, 0xAA, 0x04, 0x79, 0x00, 0x00, 0x01, 0x00, 0x08, 0xAB, + 0x04, 0x7A, 0x00, 0x00, 0x02, 0x02, 0x00, 0x01, 0x00, 0x04, 0x02, 0x30, + 0x02, 0x02, 0x00, 0x01, 0x00, 0x05, 0x02, 0x32, 0x03, 0x05, 0x02, 0x34, + 0x00, 0x00, 0x00, 0x00, 0x03, 0x01, 0x02, 0x35, 0x00, 0x00, 0x00, 0x01, + 0x03, 0x01, 0x02, 0x36, 0x00, 0x00, 0x00, 0x01, 0x03, 0x01, 0x02, 0x37, + 0x00, 0x00, 0x00, 0x02, 0x02, 0x02, 0x00, 0x01, 0x00, 0x03, 0x02, 0x38, + 0x01, 0x00, 0x02, 0x20, 0x04, 0x7D, 0x00, 0x00, 0x01, 0x00, 0x02, 0x21, + 0x04, 0x7E, 0x00, 0x00, 0x01, 0x00, 0x02, 0x22, 0x04, 0x7E, 0x00, 0x00, + 0x01, 0x00, 0x01, 0x2A, 0x04, 0x82, 0x00, 0x00, 0x01, 0x00, 0x01, 0x2B, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x01, 0x2C, 0xFF, 0xFF, 0xFF, 0x00, + 0x02, 0x02, 0x00, 0x0B, 0x00, 0x01, 0x02, 0x3A, 0x01, 0x00, 0x03, 0xFA, + 0x04, 0x84, 0x00, 0x00, 0x01, 0x00, 0x03, 0xFB, 0x04, 0x85, 0x00, 0x00, + 0x01, 0x00, 0x03, 0xFC, 0x04, 0x85, 0x00, 0x00, 0x01, 0x00, 0x00, 0x3B, + 0x04, 0x87, 0x00, 0x00, 0x01, 0x00, 0x00, 0x3C, 0x04, 0x88, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x3D, 0x04, 0x89, 0x00, 0x00, 0x01, 0x00, 0x00, 0x3E, + 0x04, 0x8A, 0x00, 0x00, 0x01, 0x00, 0x00, 0x3F, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x01, 0x47, 0x04, 0x8E, 0x00, 0x00, 0x01, 0x00, 0x01, 0x48, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x01, 0x49, 0xFF, 0xFF, 0xFF, 0x00, + 0x02, 0x02, 0x00, 0x0B, 0x00, 0x04, 0x02, 0x3C, 0x01, 0x00, 0x01, 0x4A, + 0x04, 0x93, 0x00, 0x00, 0x01, 0x00, 0x01, 0x4B, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x01, 0x4C, 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x0B, + 0x00, 0x00, 0x02, 0x3E, 0x02, 0x02, 0x00, 0x0B, 0x00, 0x01, 0x02, 0x40, + 0x01, 0x00, 0x01, 0x4D, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x01, 0x4E, + 0x04, 0x99, 0x00, 0x00, 0x01, 0x00, 0x01, 0x4F, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x01, 0x50, 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x0B, + 0x00, 0x00, 0x02, 0x42, 0x02, 0x02, 0x00, 0x0B, 0x00, 0x01, 0x02, 0x44, + 0x01, 0x00, 0x01, 0x51, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x01, 0x0C, + 0x04, 0x9C, 0x00, 0x00, 0x01, 0x00, 0x01, 0x06, 0x04, 0x9F, 0x00, 0x00, + 0x01, 0x00, 0x01, 0x07, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x01, 0x08, + 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x00, 0x00, 0x09, 0x02, 0x46, + 0x01, 0x00, 0x09, 0x69, 0x04, 0xA1, 0x00, 0x00, 0x01, 0x00, 0x09, 0x6A, + 0x04, 0xA3, 0x00, 0x00, 0x01, 0x00, 0x09, 0x6B, 0x04, 0xA2, 0x00, 0x00, + 0x03, 0x00, 0x02, 0x48, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x03, 0x5B, + 0x04, 0xAA, 0x00, 0x00, 0x01, 0x00, 0x03, 0x61, 0x04, 0xAA, 0x00, 0x00, + 0x01, 0x00, 0x03, 0x60, 0x04, 0xA9, 0x00, 0x00, 0x02, 0x02, 0x00, 0x03, + 0x00, 0x00, 0x02, 0x49, 0x01, 0x00, 0x03, 0x62, 0xFF, 0xFF, 0xFF, 0x00, + 0x02, 0x02, 0x00, 0x03, 0x00, 0x00, 0x02, 0x4B, 0x02, 0x02, 0x00, 0x04, + 0x00, 0x00, 0x02, 0x4D, 0x01, 0x00, 0x03, 0x63, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x09, 0x6E, 0x04, 0xAD, 0x00, 0x00, 0x02, 0x02, 0x00, 0x03, + 0x00, 0x00, 0x02, 0x4F, 0x01, 0x00, 0x09, 0x6F, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x09, 0x70, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x01, 0xF9, + 0x04, 0xB3, 0x00, 0x00, 0x01, 0x00, 0x01, 0xFE, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x01, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x03, + 0x00, 0x00, 0x02, 0x51, 0x01, 0x00, 0x06, 0x52, 0x04, 0xB5, 0x00, 0x00, + 0x01, 0x00, 0x06, 0x57, 0x04, 0xB6, 0x00, 0x00, 0x01, 0x00, 0x06, 0x58, + 0x04, 0xB6, 0x00, 0x00, 0x01, 0x00, 0x06, 0x53, 0x04, 0xB8, 0x00, 0x00, + 0x01, 0x00, 0x06, 0x59, 0x04, 0xB9, 0x00, 0x00, 0x01, 0x00, 0x06, 0x5A, + 0x04, 0xB9, 0x00, 0x00, 0x01, 0x00, 0x06, 0x56, 0x04, 0xBC, 0x00, 0x00, + 0x01, 0x00, 0x06, 0x5B, 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x08, + 0x00, 0x00, 0x02, 0x53, 0x01, 0x00, 0x06, 0x5C, 0x04, 0xBE, 0x00, 0x00, + 0x02, 0x02, 0x00, 0x00, 0x00, 0x0F, 0x02, 0x55, 0x01, 0x00, 0x06, 0x5D, + 0x04, 0xBF, 0x00, 0x00, 0x01, 0x00, 0x06, 0x5E, 0x04, 0xC0, 0x00, 0x00, + 0x03, 0x00, 0x02, 0x57, 0x00, 0x00, 0x00, 0x04, 0x02, 0x02, 0x00, 0x01, + 0x00, 0x00, 0x02, 0x58, 0x01, 0x00, 0x06, 0x5F, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x00, 0x40, 0x04, 0xC5, 0x00, 0x00, 0x01, 0x00, 0x00, 0x42, + 0x04, 0xC7, 0x00, 0x00, 0x01, 0x00, 0x00, 0x46, 0x04, 0xC6, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x43, 0x04, 0xC6, 0x00, 0x00, 0x01, 0x00, 0x00, 0x41, + 0x04, 0xC9, 0x00, 0x00, 0x01, 0x00, 0x00, 0x44, 0x04, 0xCA, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x45, 0x04, 0xCA, 0x00, 0x00, 0x01, 0x00, 0x00, 0x34, + 0x04, 0xCC, 0x00, 0x00, 0x01, 0x00, 0x00, 0x35, 0x04, 0xCD, 0x00, 0x00, + 0x01, 0x00, 0x00, 0x36, 0x04, 0xCD, 0x00, 0x00, 0x01, 0x00, 0x08, 0x94, + 0x04, 0xD1, 0x00, 0x00, 0x01, 0x00, 0x08, 0x95, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x08, 0x96, 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x08, + 0x00, 0x00, 0x02, 0x5A, 0x01, 0x00, 0x08, 0x97, 0x04, 0xD5, 0x00, 0x00, + 0x01, 0x00, 0x08, 0x98, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x08, 0x99, + 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x08, 0x00, 0x00, 0x02, 0x5C, + 0x01, 0x00, 0x08, 0x9A, 0x04, 0xD9, 0x00, 0x00, 0x01, 0x00, 0x08, 0x9B, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x08, 0x9C, 0xFF, 0xFF, 0xFF, 0x00, + 0x02, 0x02, 0x00, 0x08, 0x00, 0x00, 0x02, 0x5E, 0x01, 0x00, 0x06, 0x7F, + 0x04, 0xDB, 0x00, 0x00, 0x01, 0x00, 0x06, 0x80, 0x04, 0xDC, 0x00, 0x00, + 0x01, 0x00, 0x06, 0x81, 0x04, 0xDC, 0x00, 0x00, 0x01, 0x00, 0x06, 0x6A, + 0x04, 0xDE, 0x00, 0x00, 0x01, 0x00, 0x06, 0x6B, 0x04, 0xDF, 0x00, 0x00, + 0x01, 0x00, 0x06, 0x6C, 0x04, 0xDF, 0x00, 0x00, 0x01, 0x00, 0x06, 0x75, + 0x04, 0xE1, 0x00, 0x00, 0x01, 0x00, 0x06, 0x76, 0x04, 0xE2, 0x00, 0x00, + 0x01, 0x00, 0x06, 0x77, 0x04, 0xE2, 0x00, 0x00, 0x01, 0x00, 0x06, 0x6F, + 0x04, 0xE4, 0x00, 0x00, 0x01, 0x00, 0x06, 0x70, 0x04, 0xE5, 0x00, 0x00, + 0x01, 0x00, 0x06, 0x71, 0x04, 0xE5, 0x00, 0x00, 0x01, 0x00, 0x06, 0x78, + 0x04, 0xE7, 0x00, 0x00, 0x01, 0x00, 0x06, 0x79, 0x04, 0xE8, 0x00, 0x00, + 0x01, 0x00, 0x06, 0x7A, 0x04, 0xE8, 0x00, 0x00, 0x01, 0x00, 0x01, 0xE1, + 0x04, 0xEC, 0x00, 0x00, 0x01, 0x00, 0x01, 0xE2, 0x04, 0xEB, 0x00, 0x00, + 0x01, 0x00, 0x01, 0xE3, 0x04, 0xEB, 0x00, 0x00, 0x02, 0x02, 0x00, 0x09, + 0x00, 0x00, 0x02, 0x60, 0x01, 0x00, 0x08, 0xFC, 0x04, 0xF0, 0x00, 0x00, + 0x01, 0x00, 0x08, 0xFD, 0x04, 0xF1, 0x00, 0x00, 0x01, 0x00, 0x08, 0xFE, + 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x09, 0x00, 0x00, 0x02, 0x62, + 0x01, 0x00, 0x08, 0xFE, 0x04, 0xF1, 0x00, 0x00, 0x01, 0x00, 0x02, 0x32, + 0x04, 0xF5, 0x00, 0x00, 0x01, 0x00, 0x02, 0x33, 0xFF, 0xFF, 0xFF, 0x00, + 0x01, 0x00, 0x02, 0x34, 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x03, + 0x00, 0x00, 0x02, 0x64, 0x01, 0x00, 0x09, 0x5C, 0x04, 0xF7, 0x00, 0x00, + 0x01, 0x00, 0x09, 0x5D, 0x04, 0xF8, 0x00, 0x00, 0x01, 0x00, 0x09, 0x5E, + 0x04, 0xF8, 0x00, 0x00, 0x01, 0x00, 0x05, 0x5E, 0x04, 0xFB, 0x00, 0x00, + 0x01, 0x00, 0x05, 0x5F, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x05, 0x5C, + 0x04, 0xFA, 0x00, 0x00, 0x01, 0x00, 0x01, 0x0F, 0x04, 0xFD, 0x00, 0x00, + 0x01, 0x00, 0x01, 0x10, 0x04, 0xFE, 0x00, 0x00, 0x01, 0x00, 0x01, 0x11, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x02, 0x8D, 0x05, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x02, 0x8E, 0x05, 0x01, 0x00, 0x00, 0x01, 0x00, 0x02, 0x8F, + 0x05, 0x01, 0x00, 0x00, 0x01, 0x00, 0x01, 0xB9, 0x05, 0x03, 0x00, 0x00, + 0x01, 0x00, 0x01, 0xBA, 0x05, 0x06, 0x00, 0x00, 0x01, 0x00, 0x01, 0xBB, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x01, 0xB4, 0xFF, 0xFF, 0xFF, 0x00, + 0x02, 0x02, 0x00, 0x00, 0x00, 0x11, 0x02, 0x66, 0x01, 0x00, 0x01, 0x88, + 0x05, 0x0A, 0x00, 0x00, 0x01, 0x00, 0x01, 0x89, 0x05, 0x0A, 0x00, 0x00, + 0x01, 0x00, 0x01, 0x8A, 0x05, 0x0B, 0x00, 0x00, 0x02, 0x02, 0x00, 0x03, + 0x00, 0x00, 0x02, 0x68, 0x03, 0x07, 0x02, 0x6A, 0x00, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x04, 0x2C, 0x05, 0x0F, 0x00, 0x00, 0x01, 0x00, 0x04, 0x2D, + 0x05, 0x10, 0x00, 0x00, 0x01, 0x00, 0x04, 0x2E, 0xFF, 0xFF, 0xFF, 0x00, + 0x02, 0x02, 0x00, 0x09, 0x00, 0x00, 0x02, 0x6B, 0x01, 0x00, 0x04, 0x2E, + 0x05, 0x10, 0x00, 0x00, 0x01, 0x00, 0x05, 0xC1, 0x05, 0x14, 0x00, 0x00, + 0x01, 0x00, 0x05, 0xCC, 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x05, 0xCD, + 0xFF, 0xFF, 0xFF, 0x00, 0x02, 0x02, 0x00, 0x08, 0x00, 0x00, 0x02, 0x6D, + 0x01, 0x00, 0x08, 0xA1, 0x05, 0x18, 0x00, 0x00, 0x01, 0x00, 0x08, 0xA2, + 0xFF, 0xFF, 0xFF, 0x00, 0x01, 0x00, 0x08, 0xA3, 0xFF, 0xFF, 0xFF, 0x00, + 0x02, 0x02, 0x00, 0x08, 0x00, 0x00, 0x02, 0x6F, 0x01, 0x00, 0x00, 0xB4, + 0xFF, 0xFF, 0xFF, 0x00, 0x03, 0x02, 0x02, 0x71, 0x00, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x00, 0xAA, 0x05, 0x1D, 0x00, 0x00, 0x01, 0x00, 0x00, 0xAB, + 0x05, 0x1A, 0x00, 0x00, 0x03, 0x00, 0x02, 0x72, 0x00, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x00, 0xB5, 0x05, 0x1D, 0x00, 0x00, 0x02, 0x02, 0x00, 0x0D, + 0x00, 0x01, 0x02, 0x73, 0x01, 0x00, 0x00, 0xB7, 0x05, 0x1F, 0x00, 0x00, + 0x01, 0x00, 0x04, 0x42, 0x05, 0x22, 0x00, 0x00, 0x01, 0x00, 0x04, 0x47, + 0x05, 0x23, 0x00, 0x00, 0x01, 0x00, 0x04, 0x48, 0x05, 0x23, 0x00, 0x00, + 0x00, 0x05, 0x00, 0x01, 0x00, 0x07, 0x00, 0x03, 0x00, 0x0B, 0x00, 0x0A, + 0x00, 0x0D, 0x00, 0x0C, 0x00, 0x10, 0x00, 0x0F, 0x00, 0x0E, 0x00, 0x11, + 0x00, 0x15, 0x00, 0x14, 0x00, 0x1F, 0x00, 0x20, 0x00, 0x24, 0x00, 0x23, + 0x00, 0x25, 0x00, 0x21, 0x00, 0x2F, 0x00, 0x2B, 0x00, 0x2C, 0x00, 0x2D, + 0x00, 0x33, 0x00, 0x3C, 0x00, 0x3D, 0x00, 0x41, 0x00, 0x40, 0x00, 0x46, + 0x00, 0x45, 0x00, 0x48, 0x00, 0x49, 0x00, 0x4C, 0x00, 0x4D, 0x00, 0x50, + 0x00, 0x51, 0x00, 0x56, 0x00, 0x54, 0x00, 0x5D, 0x00, 0x59, 0x00, 0x5C, + 0x00, 0x58, 0x00, 0x5D, 0x00, 0x5A, 0x00, 0x60, 0x00, 0x61, 0x00, 0x62, + 0x00, 0x66, 0x00, 0x64, 0x00, 0x67, 0x00, 0x63, 0xFF, 0xFF, 0x00, 0x76, + 0x00, 0x75, 0x00, 0x78, 0x00, 0x77, 0x00, 0x86, 0x00, 0x89, 0x00, 0x86, + 0x00, 0x8A, 0x00, 0x86, 0x00, 0x8D, 0x00, 0x86, 0x00, 0x89, 0x00, 0x94, + 0x00, 0x93, 0x00, 0xA7, 0x00, 0xA6, 0x00, 0x9F, 0x00, 0xA2, 0x00, 0xA0, + 0x00, 0xA9, 0x00, 0xA1, 0x00, 0x99, 0x00, 0x9E, 0x00, 0x98, 0x00, 0xA3, + 0x00, 0x9D, 0x00, 0xB3, 0x00, 0xAD, 0x00, 0xB4, 0x00, 0xB5, 0x00, 0xAC, + 0x00, 0xAE, 0x00, 0xB0, 0x00, 0xAF, 0x00, 0xB6, 0x00, 0xBD, 0x00, 0xC6, + 0x00, 0xBA, 0x00, 0xC8, 0x00, 0xBC, 0x00, 0xCB, 0x00, 0xC4, 0x00, 0xBE, + 0x00, 0xBB, 0x00, 0xC7, 0x00, 0xBF, 0x00, 0xB9, 0x00, 0xD1, 0x00, 0xCD, + 0x00, 0xD1, 0x00, 0xCE, 0x00, 0xD4, 0x00, 0xD4, 0xFF, 0xFF, 0x00, 0xE1, + 0x00, 0xE2, 0x00, 0xEA, 0x00, 0xEB, 0x00, 0xF5, 0x00, 0xF6, 0x00, 0xFC, + 0x00, 0xFA, 0x00, 0xFE, 0x00, 0xFF, 0x00, 0xF8, 0x00, 0xFB, 0x00, 0xF8, + 0x01, 0x07, 0x01, 0x08, 0xFF, 0xFF, 0xFF, 0xFF, 0x01, 0x1E, 0x01, 0x1D, + 0x01, 0x20, 0x01, 0x21, 0x01, 0x1A, 0x01, 0x22, 0x01, 0x25, 0x01, 0x26, + 0x01, 0x23, 0x01, 0x27, 0x01, 0x2D, 0x01, 0x2C, 0x01, 0x32, 0x01, 0x33, + 0x01, 0x30, 0x01, 0x34, 0x01, 0x39, 0x01, 0x2F, 0x01, 0x51, 0x01, 0x4C, + 0x01, 0x53, 0x01, 0x52, 0x01, 0x4B, 0x01, 0x50, 0x01, 0x4D, 0x01, 0x4F, + 0x01, 0x54, 0x01, 0x5F, 0x01, 0x5E, 0x01, 0x63, 0x01, 0x65, 0x01, 0x64, + 0x01, 0x62, 0x01, 0x6B, 0x01, 0x67, 0x01, 0x6B, 0x01, 0x68, 0x01, 0x6F, + 0x01, 0x6E, 0x01, 0x6F, 0x01, 0x72, 0x01, 0x75, 0x01, 0x74, 0x01, 0x79, + 0x01, 0x78, 0x01, 0x7D, 0x01, 0x7C, 0x01, 0x81, 0x01, 0x80, 0x01, 0x85, + 0x01, 0x84, 0x01, 0x89, 0x01, 0x88, 0x01, 0x8F, 0x01, 0x90, 0x01, 0x8D, + 0x01, 0x8C, 0x01, 0x95, 0x01, 0x91, 0x01, 0x95, 0x01, 0x92, 0x01, 0x9A, + 0x01, 0x99, 0x01, 0x9D, 0x01, 0xA3, 0x01, 0x9D, 0x01, 0x9F, 0x01, 0xA2, + 0x01, 0x9C, 0x01, 0xA9, 0x01, 0xAA, 0x01, 0xAD, 0x01, 0xAC, 0x01, 0xB2, + 0x01, 0xB1, 0x01, 0xB5, 0x01, 0xB4, 0x01, 0xB9, 0x01, 0xB8, 0x01, 0xBD, + 0x01, 0xBC, 0x01, 0xC3, 0x01, 0xC1, 0x01, 0xC3, 0x01, 0xC2, 0x01, 0xC7, + 0x01, 0xC6, 0x01, 0xCB, 0x01, 0xCD, 0x01, 0xCB, 0x01, 0xCE, 0x01, 0xD3, + 0x01, 0xD2, 0x01, 0xD7, 0x01, 0xD6, 0x01, 0xDB, 0x01, 0xDA, 0x01, 0xDF, + 0x01, 0xDE, 0x01, 0xE3, 0x01, 0xE2, 0x01, 0xEE, 0x01, 0xEB, 0x01, 0xEE, + 0x01, 0xED, 0x01, 0xF2, 0x01, 0xF1, 0x01, 0xF3, 0x01, 0xF5, 0x01, 0xFC, + 0x01, 0xFD, 0x02, 0x00, 0x02, 0x05, 0x01, 0xFB, 0x02, 0x05, 0x02, 0x03, + 0x02, 0x09, 0x02, 0x08, 0xFF, 0xFF, 0x02, 0x0E, 0x02, 0x0D, 0x02, 0x14, + 0x02, 0x12, 0x02, 0x14, 0x02, 0x13, 0x02, 0x19, 0x02, 0x18, 0xFF, 0xFF, + 0x02, 0x22, 0x02, 0x23, 0x02, 0x24, 0x02, 0x20, 0x02, 0x28, 0x02, 0x27, + 0x02, 0x2B, 0x02, 0x2A, 0x02, 0x2F, 0x02, 0x2E, 0x02, 0x33, 0x02, 0x32, + 0x02, 0x37, 0x02, 0x36, 0x02, 0x3B, 0x02, 0x3A, 0x02, 0x3F, 0x02, 0x3E, + 0x02, 0x43, 0x02, 0x42, 0x02, 0x47, 0x02, 0x46, 0x02, 0x4B, 0x02, 0x4A, + 0x02, 0x54, 0x02, 0x53, 0x02, 0x4F, 0x02, 0x55, 0x02, 0x4E, 0x02, 0x56, + 0x02, 0x51, 0x02, 0x5F, 0x02, 0x5D, 0x02, 0x5A, 0x02, 0x5E, 0x02, 0x59, + 0x02, 0x60, 0x02, 0x5B, 0x02, 0x6C, 0x02, 0x69, 0x02, 0x65, 0x02, 0x67, + 0x02, 0x63, 0x02, 0x6A, 0x02, 0x62, 0x02, 0x6B, 0x02, 0x64, 0x02, 0x73, + 0x02, 0x72, 0x02, 0x76, 0x02, 0x75, 0x02, 0x96, 0x02, 0x94, 0x02, 0x96, + 0x02, 0x95, 0x02, 0x9C, 0x02, 0x9B, 0x02, 0xA0, 0x02, 0x9F, 0x02, 0xA4, + 0x02, 0xA3, 0x02, 0xA7, 0x02, 0xA8, 0x02, 0xA6, 0x02, 0xA9, 0x02, 0xAD, + 0x02, 0xAE, 0x02, 0xAC, 0x02, 0xAF, 0x02, 0xB3, 0x02, 0xB4, 0x02, 0xB2, + 0x02, 0xB5, 0x02, 0xB9, 0x02, 0xBA, 0x02, 0xB8, 0x02, 0xBB, 0x02, 0xC0, + 0x02, 0xBF, 0x02, 0xC4, 0x02, 0xC3, 0x02, 0xD5, 0x02, 0xD4, 0x02, 0xE3, + 0x02, 0xE4, 0x02, 0xEC, 0x02, 0xDF, 0x02, 0xE0, 0xFF, 0xFF, 0x02, 0xEB, + 0x02, 0xE6, 0x02, 0xE7, 0x02, 0xEA, 0x02, 0xDE, 0x02, 0xE3, 0x02, 0xE4, + 0xFF, 0xFF, 0x02, 0xF5, 0x02, 0xF9, 0x02, 0xF4, 0x03, 0x02, 0x02, 0xFF, + 0x03, 0x03, 0x02, 0xF3, 0x03, 0x05, 0x03, 0x0C, 0x03, 0x0A, 0x02, 0xF8, + 0x03, 0x0B, 0x03, 0x09, 0x02, 0xF7, 0x03, 0x04, 0x03, 0x17, 0x03, 0x16, + 0x03, 0x21, 0x03, 0x22, 0x03, 0x27, 0x03, 0x26, 0x03, 0x2B, 0x03, 0x2A, + 0x03, 0x2F, 0x03, 0x2E, 0x03, 0x33, 0x03, 0x32, 0x03, 0x37, 0x03, 0x36, + 0x03, 0x3C, 0x03, 0x3B, 0x03, 0x4C, 0x03, 0x4F, 0x03, 0x48, 0x03, 0x50, + 0x03, 0x4A, 0x03, 0x57, 0x03, 0x46, 0x03, 0x53, 0x03, 0x44, 0x03, 0x42, + 0x03, 0x55, 0x03, 0x51, 0x03, 0x58, 0x03, 0x54, 0x03, 0x5A, 0x03, 0x70, + 0x03, 0x5D, 0x03, 0x5C, 0x03, 0x6C, 0x03, 0x6F, 0x03, 0x68, 0x03, 0x5F, + 0x03, 0x75, 0x03, 0x71, 0x03, 0x64, 0x03, 0x72, 0x03, 0x66, 0x03, 0x73, + 0x03, 0x62, 0x03, 0x60, 0x03, 0x76, 0x03, 0x6A, 0x03, 0x7B, 0x03, 0x85, + 0x03, 0x79, 0x03, 0x77, 0x03, 0x81, 0x03, 0x82, 0x03, 0x84, 0x03, 0x7F, + 0x03, 0x83, 0x03, 0x7D, 0x03, 0x86, 0x03, 0x80, 0x03, 0x8B, 0x03, 0x89, + 0x03, 0x93, 0x03, 0x90, 0x03, 0x87, 0x03, 0x8D, 0x03, 0x95, 0x03, 0x8F, + 0x03, 0x97, 0x03, 0x91, 0x03, 0x9A, 0x03, 0x99, 0x03, 0x9D, 0x03, 0xA5, + 0x03, 0xAC, 0x03, 0xA3, 0x03, 0xA8, 0x03, 0xA1, 0x03, 0xA0, 0x03, 0xAB, + 0x03, 0xA7, 0x03, 0xB9, 0x03, 0xB7, 0x03, 0xA6, 0x03, 0xB2, 0x03, 0xB3, + 0xFF, 0xFF, 0xFF, 0xFF, 0x03, 0x9E, 0x03, 0xB0, 0x03, 0xAD, 0x03, 0x9F, + 0x03, 0xB8, 0x03, 0xAE, 0x03, 0xAE, 0x03, 0x9C, 0x03, 0xC0, 0x03, 0xC5, + 0x03, 0xBC, 0x03, 0xC2, 0x03, 0xC6, 0x03, 0xBE, 0x03, 0xBF, 0x03, 0xCA, + 0x03, 0xCB, 0x03, 0xD0, 0x03, 0xCF, 0x03, 0xE0, 0x03, 0xDE, 0x03, 0xE0, + 0x03, 0xDF, 0x03, 0xE5, 0x03, 0xE4, 0xFF, 0xFF, 0x03, 0xE9, 0x03, 0xE8, + 0x03, 0xF3, 0x03, 0xF2, 0x03, 0xF7, 0x03, 0xF8, 0x03, 0xF6, 0x03, 0xF4, + 0x03, 0xFE, 0x03, 0xFD, 0x04, 0x02, 0x04, 0x01, 0x04, 0x03, 0x04, 0x09, + 0x04, 0x04, 0x04, 0x08, 0x04, 0x07, 0xFF, 0xFF, 0x04, 0x1C, 0x04, 0x0D, + 0x04, 0x12, 0x04, 0x0C, 0x04, 0x14, 0x04, 0x1A, 0x04, 0x1B, 0x04, 0x19, + 0x04, 0x18, 0x04, 0x16, 0x04, 0x13, 0x04, 0x0E, 0x04, 0x1F, 0x04, 0x1E, + 0x04, 0x30, 0x04, 0x31, 0x04, 0x35, 0x04, 0x34, 0x04, 0x39, 0x04, 0x41, + 0x04, 0x3A, 0x04, 0x42, 0x04, 0x3B, 0x04, 0x43, 0x04, 0x3C, 0x04, 0x44, + 0x04, 0x3D, 0x04, 0x45, 0x04, 0x3E, 0x04, 0x3F, 0xFF, 0xFF, 0x04, 0x38, + 0x04, 0x40, 0x04, 0x51, 0x04, 0x4A, 0x04, 0x52, 0x04, 0x4B, 0x04, 0x53, + 0x04, 0x4C, 0x04, 0x54, 0x04, 0x4D, 0x04, 0x55, 0x04, 0x4E, 0x04, 0x56, + 0x04, 0x57, 0x04, 0x50, 0xFF, 0xFF, 0x04, 0x49, 0x04, 0x63, 0x04, 0x5E, + 0x04, 0x5F, 0x04, 0x5D, 0x04, 0x67, 0x04, 0x68, 0x04, 0x5E, 0x04, 0x6A, + 0x04, 0x60, 0x04, 0x60, 0xFF, 0xFF, 0x04, 0x61, 0x04, 0x5C, 0xFF, 0xFF, + 0x04, 0x70, 0x04, 0x71, 0x04, 0x72, 0x04, 0x76, 0x04, 0x73, 0x04, 0x74, + 0x04, 0x78, 0x04, 0x72, 0x04, 0x73, 0xFF, 0xFF, 0x04, 0x75, 0x04, 0x6E, + 0x04, 0x81, 0x04, 0x80, 0x04, 0x8D, 0x04, 0x8C, 0x04, 0x91, 0x04, 0x90, + 0x04, 0x94, 0x04, 0x92, 0x04, 0x97, 0x04, 0x96, 0x04, 0x9A, 0x04, 0x98, + 0x04, 0x9D, 0x04, 0x9E, 0x04, 0xA2, 0x04, 0xA8, 0x04, 0xA6, 0x04, 0xA8, + 0x04, 0xA5, 0x04, 0xAB, 0x04, 0xA7, 0x04, 0xAF, 0x04, 0xAE, 0x04, 0xB2, + 0x04, 0xB1, 0x04, 0xBD, 0x04, 0xBB, 0x04, 0xC1, 0x04, 0xC3, 0x04, 0xC2, + 0x04, 0xBF, 0x04, 0xC0, 0x04, 0xD0, 0x04, 0xCF, 0x04, 0xD4, 0x04, 0xD3, + 0x04, 0xD8, 0x04, 0xD7, 0x04, 0xEB, 0x04, 0xEA, 0x04, 0xEF, 0x04, 0xEE, + 0x04, 0xF4, 0x04, 0xF3, 0x05, 0x05, 0x05, 0x04, 0x05, 0x09, 0x05, 0x08, + 0xFF, 0xFF, 0x05, 0x0E, 0x05, 0x0D, 0x05, 0x13, 0x05, 0x12, 0x05, 0x17, + 0x05, 0x16, 0x05, 0x19, 0x05, 0x1C, 0x05, 0x1B, 0x05, 0x1E, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0xFF, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 +}; + + //FLI1 + private Int64 FLI1sectionStart; + private Int32 FLI1sectionMagic; + private UInt32 FLI1sectionSize; + private Byte[] FLI1sectionContent = { + 0x00, 0x28, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x68, 0x00, 0x00, + 0x04, 0x5B, 0x00, 0x00, 0x02, 0x59, 0x00, 0x00, 0x00, 0x6A, 0x00, 0x00, + 0x02, 0xC0, 0x00, 0x00, 0x00, 0x7C, 0x00, 0x00, 0x02, 0xC2, 0x00, 0x00, + 0x00, 0x82, 0x00, 0x00, 0x02, 0xC3, 0x00, 0x00, 0x00, 0xCC, 0x00, 0x00, + 0x03, 0x20, 0x00, 0x00, 0x01, 0x3B, 0x00, 0x00, 0x04, 0x4F, 0x00, 0x00, + 0x00, 0x5E, 0x00, 0x00, 0x04, 0x50, 0x00, 0x00, 0x00, 0xAA, 0x00, 0x00, + 0x04, 0x51, 0x00, 0x00, 0x01, 0x83, 0x00, 0x00, 0x04, 0x52, 0x00, 0x00, + 0x01, 0x87, 0x00, 0x00, 0x04, 0xB0, 0x00, 0x00, 0x00, 0x8F, 0x00, 0x00, + 0x04, 0xB1, 0x00, 0x00, 0x00, 0x92, 0x00, 0x00, 0x05, 0x14, 0x00, 0x00, + 0x00, 0xB8, 0x00, 0x00, 0x05, 0x7C, 0x00, 0x00, 0x00, 0x6D, 0x00, 0x00, + 0x05, 0x7D, 0x00, 0x00, 0x00, 0x81, 0x00, 0x00, 0x05, 0x7E, 0x00, 0x00, + 0x01, 0x56, 0x00, 0x00, 0x05, 0x7F, 0x00, 0x00, 0x01, 0x6D, 0x00, 0x00, + 0x05, 0x80, 0x00, 0x00, 0x01, 0x73, 0x00, 0x00, 0x05, 0x81, 0x00, 0x00, + 0x01, 0x77, 0x00, 0x00, 0x05, 0x82, 0x00, 0x00, 0x01, 0x7B, 0x00, 0x00, + 0x05, 0x83, 0x00, 0x00, 0x01, 0x7F, 0x00, 0x00, 0x05, 0x84, 0x00, 0x00, + 0x01, 0x8B, 0x00, 0x00, 0x05, 0x85, 0x00, 0x00, 0x01, 0x93, 0x00, 0x00, + 0x05, 0x86, 0x00, 0x00, 0x01, 0x97, 0x00, 0x00, 0x05, 0xDC, 0x00, 0x00, + 0x00, 0xE0, 0x00, 0x00, 0x09, 0x60, 0x00, 0x00, 0x01, 0x02, 0x00, 0x00, + 0x09, 0x61, 0x00, 0x00, 0x01, 0x42, 0x00, 0x00, 0x09, 0x62, 0x00, 0x00, + 0x01, 0x45, 0x00, 0x00, 0x09, 0x63, 0x00, 0x00, 0x01, 0x5B, 0x00, 0x00, + 0x0A, 0xF0, 0x00, 0x00, 0x00, 0xF4, 0x00, 0x00, 0x0A, 0xF1, 0x00, 0x00, + 0x00, 0xF9, 0x00, 0x00, 0x0A, 0xF2, 0x00, 0x00, 0x04, 0x6D, 0x00, 0x00, + 0x0B, 0x54, 0x00, 0x00, 0x01, 0x14, 0x00, 0x00, 0x0B, 0x55, 0x00, 0x00, + 0x01, 0x18, 0x00, 0x00, 0x0C, 0xE5, 0x00, 0x00, 0x01, 0x0B, 0x00, 0x00, + 0x0C, 0xE6, 0x00, 0x00, 0x01, 0x0F, 0x00, 0x00, 0x0D, 0x48, 0x00, 0x00, + 0x01, 0x3F, 0x00, 0x00, 0x0E, 0x10, 0x00, 0x00, 0x01, 0x5C, 0x00, 0x00, + 0x0E, 0x11, 0x00, 0x00, 0x01, 0x60, 0x00, 0x00, 0x0F, 0x3C, 0x00, 0x00, + 0x01, 0xF6, 0x00, 0x00 +}; + public BMG(FileBase file, Bcsv tbl) { + m_File_Tbl = tbl; m_File = file; m_File.BigEndian = true; m_File.Encoding = Encoding.BigEndianUnicode; m_File.Stream.Position = 0; - Int32 headermagic1 = m_File.Reader.ReadInt32(); - Int32 headermagic2 = m_File.Reader.ReadInt32(); - if (headermagic1 == m_Signature && headermagic2 == m_FileType) { Console.WriteLine("Nice"); } else { Console.WriteLine("not nice");} + fileMagic1 = m_File.Reader.ReadInt32(); + fileMagic2 = m_File.Reader.ReadInt32(); + if (fileMagic1 == m_Signature && fileMagic2 == m_FileType) { } + else + throw new Exception("Not a valid BMG file."); - UInt32 fileSize = m_File.Reader.ReadUInt32(); - UInt32 numberOfSections = m_File.Reader.ReadUInt32(); - Byte fileEncoding = m_File.Reader.ReadByte(); + fileSize = m_File.Reader.ReadUInt32(); + numberOfSections = m_File.Reader.ReadUInt32(); + fileEncoding = m_File.Reader.ReadByte(); if (fileEncoding != m_ExpectedEncoding) throw new Exception("sorry but no"); m_File.Stream.Position = 0x20; //INF1 - Int32 INF1sectionMagic = m_File.Reader.ReadInt32(); + INF1sectionMagic = m_File.Reader.ReadInt32(); if (INF1sectionMagic != INF1magic) { throw new Exception("BMG File exists but isn't in the expected format"); } - UInt32 INF1sectionSize = m_File.Reader.ReadUInt32(); - UInt16 INF1itemNumber = m_File.Reader.ReadUInt16(); - UInt16 INF1itemLength = m_File.Reader.ReadUInt16(); + INF1sectionSize = m_File.Reader.ReadUInt32(); + INF1itemNumber = m_File.Reader.ReadUInt16(); + INF1itemLength = m_File.Reader.ReadUInt16(); m_File.Stream.Position += 0x04; Entries = new List(); @@ -63,13 +1165,19 @@ namespace BMGEditor Entries.Add(txtEntry); m_File.Stream.Position += 0x01; } - m_File.Stream.Position += 0x10; + Console.WriteLine(m_File.Stream.Position); + + while (m_File.Reader.ReadByte() != 0x44) + m_File.Stream.Position += 0x01; + m_File.Stream.Position -= 1; //DAT1 - long DAT1sectionStart = m_File.Stream.Position; - Int32 DAT1sectionMagic = m_File.Reader.ReadInt32(); - UInt32 DAT1sectionSize = m_File.Reader.ReadUInt32(); - long strPoolStart = m_File.Stream.Position; + DAT1sectionStart = m_File.Stream.Position; + DAT1sectionMagic = m_File.Reader.ReadInt32(); + DAT1sectionSize = m_File.Reader.ReadUInt32(); + Console.WriteLine(m_File.Stream.Position); + + strPoolStart = m_File.Stream.Position; if (DAT1sectionMagic != DAT1magic) throw new Exception("BMG exists but isn\'t in the expected format"); for (int j = 0; j < INF1itemNumber; j++) { @@ -78,7 +1186,7 @@ namespace BMGEditor } int l = 0; - foreach (Bcsv.Entry bcsvEntry in tbl.Entries) + foreach (Bcsv.Entry bcsvEntry in m_File_Tbl.Entries) { string entName = bcsvEntry[563954530].ToString(); Entries[l].entryName = entName; @@ -87,18 +1195,18 @@ namespace BMGEditor //FLW1 m_File.Stream.Position = DAT1sectionStart + DAT1sectionSize; - long FLW1sectionStart = m_File.Stream.Position; - Int32 FLW1sectionMagic = m_File.Reader.ReadInt32(); + FLW1sectionStart = m_File.Stream.Position; + FLW1sectionMagic = m_File.Reader.ReadInt32(); if (FLW1sectionMagic != FLW1magic) throw new Exception("FLW1 section missing. Check your BMG file"); - UInt32 FLW1sectionSize = m_File.Reader.ReadUInt32(); + FLW1sectionSize = m_File.Reader.ReadUInt32(); //FLI1 m_File.Stream.Position = FLW1sectionStart + FLW1sectionSize; - long FLI1sectionStart = m_File.Stream.Position; - Int32 FLI1sectionMagic = m_File.Reader.ReadInt32(); + FLI1sectionStart = m_File.Stream.Position; + FLI1sectionMagic = m_File.Reader.ReadInt32(); if (FLI1sectionMagic != FLI1magic) throw new Exception("FLI1 section missing. Check your BMG file"); - UInt32 FLI1sectionSize = m_File.Reader.ReadUInt32(); + FLI1sectionSize = m_File.Reader.ReadUInt32(); } public void Close() @@ -123,6 +1231,54 @@ namespace BMGEditor public byte messageAreaOpt; } + public class EscapeSequence + { + public byte length; + public byte unk1; + public UInt16 binValue1; + public UInt16 binValue2; + public UInt16 binValue3; + public UInt16 binValue4; + public UInt16 binValue5; + } + + public List BytesFromEscapeSequence(EscapeSequence escSeq) + { + List ret = new List(); + ret.Add(0x00); + ret.Add(0x1A); + ret.Add(escSeq.length); + + switch (escSeq.length) + { + case 0x06: + byte[] binVal1case6 = BitConverter.GetBytes(escSeq.binValue1); + foreach (byte by in binVal1case6) ret.Add(by); + break; + + case 0x08: + byte[] binVal1case8 = BitConverter.GetBytes(escSeq.binValue1); + foreach (byte by in binVal1case8) ret.Add(by); + byte[] binVal2case8 = BitConverter.GetBytes(escSeq.binValue2); + foreach (byte by in binVal2case8) ret.Add(by); + break; + + case 0x0E: + byte[] binVal1caseE = BitConverter.GetBytes(escSeq.binValue1); + foreach (byte by in binVal1caseE) ret.Add(by); + byte[] binVal2caseE = BitConverter.GetBytes(escSeq.binValue2); + foreach (byte by in binVal2caseE) ret.Add(by); + byte[] binVal3caseE = BitConverter.GetBytes(escSeq.binValue3); + foreach (byte by in binVal3caseE) ret.Add(by); + byte[] binVal4caseE = BitConverter.GetBytes(escSeq.binValue4); + foreach (byte by in binVal4caseE) ret.Add(by); + byte[] binVal5caseE = BitConverter.GetBytes(escSeq.binValue5); + foreach (byte by in binVal5caseE) ret.Add(by); + break; + } + return ret; + } + public string ReadWideCharString() { byte escSeqLength; @@ -133,14 +1289,14 @@ namespace BMGEditor { if (c == 0x001A) { - ret += "\"" + c; + ret += "*" ; escSeqLength = m_File.Reader.ReadByte(); - ret += $" {escSeqLength} "; + ret += $"{String.Format("{0:X2}", escSeqLength)}"; for (int k = 3; k < escSeqLength; k++) { - ret += m_File.Reader.ReadByte() + " "; + ret += String.Format("{0:X2}", m_File.Reader.ReadByte()); } - ret += "\""; + ret += "*"; } else ret += c; @@ -150,6 +1306,135 @@ namespace BMGEditor } + public void AddNewEntry(string newEntryName) + { + TextEntry newEntry = new TextEntry(); + newEntry.entryName = newEntryName; + newEntry.entryNo = INF1itemNumber; + INF1itemNumber++; + Entries.Add(newEntry); + } + + public void DeleteEntry(Int32 entryIndex) + { + Entries.Remove(Entries[entryIndex]); + INF1itemNumber--; + } + + public void WriteToFile() + { + //throw new NotImplementedException(); + + } + + public void NukeFile() + { + m_File.Stream.Position = 0; + m_File.Writer.Write((Int32)m_Signature); + m_File.Writer.Write((Int32)m_FileType); + m_File.Writer.Write((UInt32)0x00); + m_File.Writer.Write((UInt32)0x04); + m_File.Writer.Write((Byte)0x02); + while (m_File.Stream.Position != 0x20) m_File.Writer.Write((Byte)0x00); + + Int64 INF1start = m_File.Stream.Position; + m_File.Writer.Write((Int32)INF1magic); + m_File.Writer.Write((UInt32)(0x10 + (INF1itemNumber * INF1itemLength))); + m_File.Writer.Write((UInt16)INF1itemNumber); + m_File.Writer.Write((UInt16)INF1itemLength); + m_File.Writer.Write((UInt32)0x00); + foreach (TextEntry entry in Entries) + { + m_File.Writer.Write((UInt32)0x00); + m_File.Writer.Write((Byte)entry.unk1); + m_File.Writer.Write((Byte)entry.cameraOpt); + m_File.Writer.Write((Byte)entry.sndEffectOpt); + m_File.Writer.Write((Byte)entry.unk2); + m_File.Writer.Write((Byte)entry.messageTriggerOpt); + m_File.Writer.Write((Byte)entry.messageLayoutOpt); + m_File.Writer.Write((Byte)entry.messageAreaOpt); + m_File.Writer.Write((Byte)0xFF); + } + while (m_File.Stream.Position % 16 != 0x00) + m_File.Writer.Write((Byte)0x00); + + Int64 DAT1start = m_File.Stream.Position; + m_File.Writer.Write((Int32)DAT1magic); + m_File.Writer.Write((UInt32)0x00); //section size, will be defined later + + //String pool + List strPos = new List(); + foreach (TextEntry entry in Entries) + { + strPos.Add(m_File.Stream.Position - (DAT1start + 0x08)); + //Doing this because for some reason there's a random char appearing at the beggining of each str + if (entry.text == "") m_File.Writer.Write((UInt16)0x00); + else + { + List strToWrite = new List(); + foreach (char c in entry.text) + { + strToWrite.Add(c); + } + Console.WriteLine(strToWrite); + + for (int i = 0; i < strToWrite.Count; i++) + { + if (strToWrite[i].Equals('*')) + { + /*EscapeSequence escSeq = new EscapeSequence(); + string strEscSeqLen = String.Concat(strToWrite[i+1], strToWrite[i+2]); + escSeq.length = Byte.Parse(strEscSeqLen, System.Globalization.NumberStyles.HexNumber); + Console.WriteLine(String.Format("{0:X2}", escSeq.length)); + Console.WriteLine("strtowrite i " + strToWrite[i]); + Console.WriteLine("strtowrite i+1 " + strToWrite[i+1]);*/ + + m_File.Writer.Write(strToWrite[i]); + } + else + m_File.Writer.Write(strToWrite[i]); + } + + m_File.Writer.Write((UInt16)0x00); + + } + } + + while (m_File.Stream.Position % 16 != 0x00) + m_File.Stream.Position += 0x01; + Int64 DAT1size = m_File.Stream.Position - DAT1start; + Int64 DAT1end = m_File.Stream.Position; + m_File.Stream.Position = DAT1start + 0x04; + m_File.Writer.Write((UInt32)DAT1size); + + //Setting offsets in INF1 + m_File.Stream.Position = INF1start; + m_File.Stream.Position += 0x10; + for (int index = 0; index < INF1itemNumber; index++) + { + m_File.Writer.Write((UInt32)strPos[index]); + m_File.Stream.Position += 0x08; + } + m_File.Stream.Position = DAT1end; + + m_File.Writer.Write((Int32)FLW1magic); + m_File.Writer.Write((UInt32)FLW1sectionSize); + m_File.Writer.Write(FLW1sectionContent); + + m_File.Writer.Write((Int32)FLI1magic); + m_File.Writer.Write((UInt32)FLI1sectionSize); + m_File.Writer.Write(FLI1sectionContent); + + Int64 newFileSize = m_File.Stream.Position; + m_File.Stream.Position = 0x08; + m_File.Writer.Write((UInt32)newFileSize); + + m_File.Stream.SetLength(newFileSize); + + m_File.Flush(); + + } + public List Entries; } } diff --git a/BMGEditor/Program.cs b/BMGEditor/Program.cs index 49c2628..8b0ad4b 100644 --- a/BMGEditor/Program.cs +++ b/BMGEditor/Program.cs @@ -2,6 +2,8 @@ using System; using System.Linq; using System.Collections.Generic; using System.Windows.Forms; +using System.Text; +using System.Globalization; namespace BMGEditor { @@ -10,7 +12,7 @@ namespace BMGEditor public const string softwareName = "Luma"; public const string softwareVersion = "v0.1"; public const bool isBeta = true; - public const bool isPrivateBeta = true; + public const bool isPrivateBeta = false; } internal static class Program { @@ -21,6 +23,16 @@ namespace BMGEditor Bcsv.PopulateHashtable(); if (Variables.isBeta && Variables.isPrivateBeta) MessageBox.Show("This is a private beta, please don\'t leak it.", "Private", MessageBoxButtons.OK, MessageBoxIcon.Warning); Application.Run(new MainForm()); + + //Test(); + } + + static void Test() + { + string str = "FF"; + Byte octet = Byte.Parse(str, NumberStyles.HexNumber); + Console.WriteLine(octet); + } } } \ No newline at end of file diff --git a/BMGEditor/UI/BMGEditForm.Designer.cs b/BMGEditor/UI/BMGEditForm.Designer.cs index 444adff..0b11214 100644 --- a/BMGEditor/UI/BMGEditForm.Designer.cs +++ b/BMGEditor/UI/BMGEditForm.Designer.cs @@ -29,45 +29,26 @@ private void InitializeComponent() { System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(BMGEditForm)); - this.panel1 = new System.Windows.Forms.Panel(); - this.entriesListBox = new System.Windows.Forms.ListBox(); - this.toolStrip1 = new System.Windows.Forms.ToolStrip(); + this.toolStrip = new System.Windows.Forms.ToolStrip(); this.openEntryBtn = new System.Windows.Forms.ToolStripButton(); - this.panel1.SuspendLayout(); - this.toolStrip1.SuspendLayout(); + this.deleteEntryBtn = new System.Windows.Forms.ToolStripButton(); + this.addEntryBtn = new System.Windows.Forms.ToolStripButton(); + this.entriesListBox = new System.Windows.Forms.ListBox(); + this.toolStrip.SuspendLayout(); this.SuspendLayout(); // - // panel1 + // toolStrip // - this.panel1.Controls.Add(this.toolStrip1); - this.panel1.Controls.Add(this.entriesListBox); - this.panel1.Dock = System.Windows.Forms.DockStyle.Fill; - this.panel1.Location = new System.Drawing.Point(0, 0); - this.panel1.Name = "panel1"; - this.panel1.Size = new System.Drawing.Size(800, 450); - this.panel1.TabIndex = 1; - // - // entriesListBox - // - this.entriesListBox.Dock = System.Windows.Forms.DockStyle.Bottom; - this.entriesListBox.FormattingEnabled = true; - this.entriesListBox.ItemHeight = 20; - this.entriesListBox.Location = new System.Drawing.Point(0, 46); - this.entriesListBox.Name = "entriesListBox"; - this.entriesListBox.Size = new System.Drawing.Size(800, 404); - this.entriesListBox.TabIndex = 0; - // - // toolStrip1 - // - this.toolStrip1.GripStyle = System.Windows.Forms.ToolStripGripStyle.Hidden; - this.toolStrip1.ImageScalingSize = new System.Drawing.Size(20, 20); - this.toolStrip1.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { - this.openEntryBtn}); - this.toolStrip1.Location = new System.Drawing.Point(0, 0); - this.toolStrip1.Name = "toolStrip1"; - this.toolStrip1.Size = new System.Drawing.Size(800, 27); - this.toolStrip1.TabIndex = 1; - this.toolStrip1.Text = "toolStrip1"; + this.toolStrip.ImageScalingSize = new System.Drawing.Size(20, 20); + this.toolStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { + this.openEntryBtn, + this.deleteEntryBtn, + this.addEntryBtn}); + this.toolStrip.Location = new System.Drawing.Point(0, 0); + this.toolStrip.Name = "toolStrip"; + this.toolStrip.Size = new System.Drawing.Size(800, 27); + this.toolStrip.TabIndex = 0; + this.toolStrip.Text = "toolStrip"; // // openEntryBtn // @@ -75,31 +56,62 @@ this.openEntryBtn.Image = ((System.Drawing.Image)(resources.GetObject("openEntryBtn.Image"))); this.openEntryBtn.ImageTransparentColor = System.Drawing.Color.Magenta; this.openEntryBtn.Name = "openEntryBtn"; - this.openEntryBtn.Size = new System.Drawing.Size(80, 24); - this.openEntryBtn.Text = "openEntry"; + this.openEntryBtn.Size = new System.Drawing.Size(86, 24); + this.openEntryBtn.Text = "Open entry"; this.openEntryBtn.Click += new System.EventHandler(this.openEntryBtn_Click); // + // deleteEntryBtn + // + this.deleteEntryBtn.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text; + this.deleteEntryBtn.Image = ((System.Drawing.Image)(resources.GetObject("deleteEntryBtn.Image"))); + this.deleteEntryBtn.ImageTransparentColor = System.Drawing.Color.Magenta; + this.deleteEntryBtn.Name = "deleteEntryBtn"; + this.deleteEntryBtn.Size = new System.Drawing.Size(94, 24); + this.deleteEntryBtn.Text = "Delete entry"; + this.deleteEntryBtn.Click += new System.EventHandler(this.deleteEntryBtn_Click); + // + // addEntryBtn + // + this.addEntryBtn.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text; + this.addEntryBtn.Image = ((System.Drawing.Image)(resources.GetObject("addEntryBtn.Image"))); + this.addEntryBtn.ImageTransparentColor = System.Drawing.Color.Magenta; + this.addEntryBtn.Name = "addEntryBtn"; + this.addEntryBtn.Size = new System.Drawing.Size(109, 24); + this.addEntryBtn.Text = "Add new entry"; + this.addEntryBtn.Click += new System.EventHandler(this.addEntryBtn_Click); + // + // entriesListBox + // + this.entriesListBox.FormattingEnabled = true; + this.entriesListBox.ItemHeight = 20; + this.entriesListBox.Location = new System.Drawing.Point(67, 125); + this.entriesListBox.Name = "entriesListBox"; + this.entriesListBox.Size = new System.Drawing.Size(554, 284); + this.entriesListBox.TabIndex = 1; + // // BMGEditForm // this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 20F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.ClientSize = new System.Drawing.Size(800, 450); - this.Controls.Add(this.panel1); + this.Controls.Add(this.entriesListBox); + this.Controls.Add(this.toolStrip); this.Name = "BMGEditForm"; this.Text = "BMGEditForm"; this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.BMGEditForm_FormClosing); - this.panel1.ResumeLayout(false); - this.panel1.PerformLayout(); - this.toolStrip1.ResumeLayout(false); - this.toolStrip1.PerformLayout(); + this.toolStrip.ResumeLayout(false); + this.toolStrip.PerformLayout(); this.ResumeLayout(false); + this.PerformLayout(); } #endregion - private System.Windows.Forms.Panel panel1; - private System.Windows.Forms.ListBox entriesListBox; - private System.Windows.Forms.ToolStrip toolStrip1; + + private System.Windows.Forms.ToolStrip toolStrip; private System.Windows.Forms.ToolStripButton openEntryBtn; + private System.Windows.Forms.ToolStripButton deleteEntryBtn; + private System.Windows.Forms.ToolStripButton addEntryBtn; + private System.Windows.Forms.ListBox entriesListBox; } } \ No newline at end of file diff --git a/BMGEditor/UI/BMGEditForm.cs b/BMGEditor/UI/BMGEditForm.cs index f8efbf2..4873b82 100644 --- a/BMGEditor/UI/BMGEditForm.cs +++ b/BMGEditor/UI/BMGEditForm.cs @@ -42,5 +42,16 @@ namespace BMGEditor Form txtEditForm = new TextEntryEditorForm(m_File.Entries[entriesListBox.SelectedIndex]); txtEditForm.Show(); } + + private void addEntryBtn_Click(object sender, EventArgs e) + { + Form newEntryForm = new NewEntryForm(); + newEntryForm.Show(); + } + + private void deleteEntryBtn_Click(object sender, EventArgs e) + { + m_File.NukeFile(); + } } } diff --git a/BMGEditor/UI/BMGEditForm.resx b/BMGEditor/UI/BMGEditForm.resx index 9ee1e08..bed2b33 100644 --- a/BMGEditor/UI/BMGEditForm.resx +++ b/BMGEditor/UI/BMGEditForm.resx @@ -57,19 +57,41 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - + 17, 17 iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 - YQUAAAAJcEhZcwAAEnQAABJ0Ad5mH3gAAAEISURBVEhL3ZErDsJAGIR7DlA47oArV8CDR9RiSDAQPBcA - Qx1BgUMQBEk1ooJAKE0I4Wlqf5gmu1n6oqW7hiZfthkx33aqeZ5HKvEFpmmSYRhSQScXINB1XSroDAke - 96cUpAmupyPZsx7Z8x4drAnPpQmsgU7LdoHDJNIEYjnAlyBXJ3jPhVyaYLca8nLMhX+CPJXAOT+ouTj5 - p5in4asApdWpS8XRwT+zShIFG/fOyxlZJbGC9f5G5bHzUf6LJFJQqTViyxlxEmRiHhLUW10qDbeRpUGC - ErwjE/OQoG9dIsviYGWsXMwxc24BYLcO5pgZc+cWJIG5MbsyAUDnHwlUAkFHJZraR9NeMVq3zi+WF/0A - AAAASUVORK5CYII= + YQUAAAAJcEhZcwAAEnQAABJ0Ad5mH3gAAAEKSURBVEhL3ZG9DsFQHMXvczDZvIOtXsHObuhqkViI3Quw + 6CYmNoMYJJ0NBiFFIoIytOuf0+TeXP3yde+iyS+3OcP53Z4y3/dJJ4HAsiwyTVMp6BQCBIZhKAWdEcHV + vSlBmeB82NFy1KLluEWOPRC5MoHdMWhazwi4RJlALgf4EuT6BI+5kCsTrGddUY658E+QvyXYHq9UnRyC + U87f4aUApcXhnrI9Jzg/laQKFntXlHM+lSQK5psL5fvbp/JvJLGCQqmSWM5JkiCT84igXGtSrruKLQ0T + luAdmZxHBG37FFuWBC/j5XKOmX8WAH7rcI6ZMffPgjQwN2bXJgDo/COBTpjneQ2dML0PY3cISreGe8HM + qgAAAABJRU5ErkJggg== + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAAEnQAABJ0Ad5mH3gAAAEKSURBVEhL3ZG9DsFQHMXvczDZvIOtXsHObuhqkViI3Quw + 6CYmNoMYJJ0NBiFFIoIytOuf0+TeXP3yde+iyS+3OcP53Z4y3/dJJ4HAsiwyTVMp6BQCBIZhKAWdEcHV + vSlBmeB82NFy1KLluEWOPRC5MoHdMWhazwi4RJlALgf4EuT6BI+5kCsTrGddUY658E+QvyXYHq9UnRyC + U87f4aUApcXhnrI9Jzg/laQKFntXlHM+lSQK5psL5fvbp/JvJLGCQqmSWM5JkiCT84igXGtSrruKLQ0T + luAdmZxHBG37FFuWBC/j5XKOmX8WAH7rcI6ZMffPgjQwN2bXJgDo/COBTpjneQ2dML0PY3cISreGe8HM + qgAAAABJRU5ErkJggg== + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAAEnQAABJ0Ad5mH3gAAAEKSURBVEhL3ZG9DsFQHMXvczDZvIOtXsHObuhqkViI3Quw + 6CYmNoMYJJ0NBiFFIoIytOuf0+TeXP3yde+iyS+3OcP53Z4y3/dJJ4HAsiwyTVMp6BQCBIZhKAWdEcHV + vSlBmeB82NFy1KLluEWOPRC5MoHdMWhazwi4RJlALgf4EuT6BI+5kCsTrGddUY658E+QvyXYHq9UnRyC + U87f4aUApcXhnrI9Jzg/laQKFntXlHM+lSQK5psL5fvbp/JvJLGCQqmSWM5JkiCT84igXGtSrruKLQ0T + luAdmZxHBG37FFuWBC/j5XKOmX8WAH7rcI6ZMffPgjQwN2bXJgDo/COBTpjneQ2dML0PY3cISreGe8HM + qgAAAABJRU5ErkJggg== \ No newline at end of file diff --git a/BMGEditor/UI/BcsvEditorForm.Designer.cs b/BMGEditor/UI/BcsvEditorForm.Designer.cs index b2a4529..6569980 100644 --- a/BMGEditor/UI/BcsvEditorForm.Designer.cs +++ b/BMGEditor/UI/BcsvEditorForm.Designer.cs @@ -32,6 +32,7 @@ this.tsToolbar = new System.Windows.Forms.ToolStrip(); this.btnSave = new System.Windows.Forms.ToolStripButton(); this.dgvBcsv = new System.Windows.Forms.DataGridView(); + this.sortBtn = new System.Windows.Forms.ToolStripButton(); this.tsToolbar.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.dgvBcsv)).BeginInit(); this.SuspendLayout(); @@ -40,7 +41,8 @@ // this.tsToolbar.ImageScalingSize = new System.Drawing.Size(20, 20); this.tsToolbar.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { - this.btnSave}); + this.btnSave, + this.sortBtn}); this.tsToolbar.Location = new System.Drawing.Point(0, 0); this.tsToolbar.Name = "tsToolbar"; this.tsToolbar.Size = new System.Drawing.Size(1039, 27); @@ -72,6 +74,17 @@ this.dgvBcsv.Size = new System.Drawing.Size(1039, 731); this.dgvBcsv.TabIndex = 1; // + // sortBtn + // + this.sortBtn.DisplayStyle = System.Windows.Forms.ToolStripItemDisplayStyle.Text; + this.sortBtn.Image = ((System.Drawing.Image)(resources.GetObject("sortBtn.Image"))); + this.sortBtn.ImageTransparentColor = System.Drawing.Color.Magenta; + this.sortBtn.Name = "sortBtn"; + this.sortBtn.Size = new System.Drawing.Size(40, 24); + this.sortBtn.Text = "Sort"; + this.sortBtn.ToolTipText = "Sort"; + this.sortBtn.Click += new System.EventHandler(this.sortBtn_Click); + // // BcsvEditorForm // this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 20F); @@ -96,5 +109,6 @@ private System.Windows.Forms.ToolStrip tsToolbar; private System.Windows.Forms.DataGridView dgvBcsv; private System.Windows.Forms.ToolStripButton btnSave; + private System.Windows.Forms.ToolStripButton sortBtn; } } \ No newline at end of file diff --git a/BMGEditor/UI/BcsvEditorForm.cs b/BMGEditor/UI/BcsvEditorForm.cs index ebc355a..a24fa0a 100644 --- a/BMGEditor/UI/BcsvEditorForm.cs +++ b/BMGEditor/UI/BcsvEditorForm.cs @@ -96,5 +96,48 @@ namespace BMGEditor { m_File.Close(); } + + private void sortBtn_Click(object sender, EventArgs e) + { + //foreach (DataGridViewCell cell in dgvBcsv.Columns[0]) { } + + /*for (int i = 0; i < dgvBcsv.RowCount; i++) + { + DataGridViewCell curCell = dgvBcsv.Rows[i].Cells[0]; + DataGridViewCell nextCell = dgvBcsv.Rows[i+1].Cells[0]; + + }*/ + + dgvBcsv.Sort(new RowCompare(SortOrder.Ascending)); + } + + private class RowCompare : System.Collections.IComparer + { + private static int sortOrderModifier = 1; + public RowCompare(SortOrder sortOrder) + { + switch (sortOrder) + { + case SortOrder.Ascending: + sortOrderModifier = 1; + break; + + case SortOrder.Descending: + sortOrderModifier = -1; + break; + } + } + + public int Compare(object x, object y) + { + DataGridViewRow curRow = (DataGridViewRow)x; + DataGridViewRow nextRow = (DataGridViewRow)y; + + int CompareResult = System.String.CompareOrdinal(curRow.Cells[0].Value.ToString(), + nextRow.Cells[0].Value.ToString()); + + return CompareResult * sortOrderModifier; + } + } } } diff --git a/BMGEditor/UI/BcsvEditorForm.resx b/BMGEditor/UI/BcsvEditorForm.resx index 3a841c2..1810714 100644 --- a/BMGEditor/UI/BcsvEditorForm.resx +++ b/BMGEditor/UI/BcsvEditorForm.resx @@ -74,6 +74,17 @@ mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+ kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D TgDQASA1MVpwzwAAAABJRU5ErkJggg== + + + + + iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8 + YQUAAAAJcEhZcwAAEnQAABJ0Ad5mH3gAAAEISURBVEhL3ZErDsJAGIR7DlA47oArV8CDR9RiSDAQPBcA + Qx1BgUMQBEk1ooJAKE0I4Wlqf5gmu1n6oqW7hiZfthkx33aqeZ5HKvEFpmmSYRhSQScXINB1XSroDAke + 96cUpAmupyPZsx7Z8x4drAnPpQmsgU7LdoHDJNIEYjnAlyBXJ3jPhVyaYLca8nLMhX+CPJXAOT+ouTj5 + p5in4asApdWpS8XRwT+zShIFG/fOyxlZJbGC9f5G5bHzUf6LJFJQqTViyxlxEmRiHhLUW10qDbeRpUGC + ErwjE/OQoG9dIsviYGWsXMwxc24BYLcO5pgZc+cWJIG5MbsyAUDnHwlUAkFHJZraR9NeMVq3zi+WF/0A + AAAASUVORK5CYII= \ No newline at end of file diff --git a/BMGEditor/UI/NewEntryForm.Designer.cs b/BMGEditor/UI/NewEntryForm.Designer.cs new file mode 100644 index 0000000..218cf2b --- /dev/null +++ b/BMGEditor/UI/NewEntryForm.Designer.cs @@ -0,0 +1,97 @@ +namespace BMGEditor.UI +{ + partial class NewEntryForm + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.createEntryBtn = new System.Windows.Forms.Button(); + this.textBox1 = new System.Windows.Forms.TextBox(); + this.groupBox = new System.Windows.Forms.GroupBox(); + this.cancelBtn = new System.Windows.Forms.Button(); + this.groupBox.SuspendLayout(); + this.SuspendLayout(); + // + // createEntryBtn + // + this.createEntryBtn.Location = new System.Drawing.Point(694, 409); + this.createEntryBtn.Name = "createEntryBtn"; + this.createEntryBtn.Size = new System.Drawing.Size(94, 29); + this.createEntryBtn.TabIndex = 0; + this.createEntryBtn.Text = "Create"; + this.createEntryBtn.UseVisualStyleBackColor = true; + this.createEntryBtn.Click += new System.EventHandler(this.createEntryBtn_Click); + // + // textBox1 + // + this.textBox1.Location = new System.Drawing.Point(34, 56); + this.textBox1.Name = "textBox1"; + this.textBox1.Size = new System.Drawing.Size(125, 27); + this.textBox1.TabIndex = 1; + // + // groupBox + // + this.groupBox.Controls.Add(this.textBox1); + this.groupBox.Location = new System.Drawing.Point(46, 38); + this.groupBox.Name = "groupBox"; + this.groupBox.Size = new System.Drawing.Size(250, 125); + this.groupBox.TabIndex = 2; + this.groupBox.TabStop = false; + this.groupBox.Text = "Entry name"; + // + // cancelBtn + // + this.cancelBtn.Location = new System.Drawing.Point(594, 409); + this.cancelBtn.Name = "cancelBtn"; + this.cancelBtn.Size = new System.Drawing.Size(94, 29); + this.cancelBtn.TabIndex = 3; + this.cancelBtn.Text = "Cancel"; + this.cancelBtn.UseVisualStyleBackColor = true; + // + // NewEntryForm + // + this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 20F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(800, 450); + this.Controls.Add(this.cancelBtn); + this.Controls.Add(this.groupBox); + this.Controls.Add(this.createEntryBtn); + this.Name = "NewEntryForm"; + this.Text = "NewEntryForm"; + this.groupBox.ResumeLayout(false); + this.groupBox.PerformLayout(); + this.ResumeLayout(false); + + } + + #endregion + + private System.Windows.Forms.Button createEntryBtn; + private System.Windows.Forms.TextBox textBox1; + private System.Windows.Forms.GroupBox groupBox; + private System.Windows.Forms.Button cancelBtn; + } +} \ No newline at end of file diff --git a/BMGEditor/UI/NewEntryForm.cs b/BMGEditor/UI/NewEntryForm.cs new file mode 100644 index 0000000..1d97d0f --- /dev/null +++ b/BMGEditor/UI/NewEntryForm.cs @@ -0,0 +1,25 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows.Forms; + +namespace BMGEditor.UI +{ + public partial class NewEntryForm : Form + { + public NewEntryForm() + { + InitializeComponent(); + } + + private void createEntryBtn_Click(object sender, EventArgs e) + { + + } + } +} diff --git a/BMGEditor/UI/NewEntryForm.resx b/BMGEditor/UI/NewEntryForm.resx new file mode 100644 index 0000000..f298a7b --- /dev/null +++ b/BMGEditor/UI/NewEntryForm.resx @@ -0,0 +1,60 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file