MastersThesis/PQ_TIIGER_TLS/sal/miracl-ubuntu22-11-04-24/includes/rom_curve_BLS12443.cpp
2024-04-19 14:16:07 +02:00

98 lines
28 KiB
C++

/*
* Copyright (c) 2012-2020 MIRACL UK Ltd.
*
* This file is part of MIRACL Core
* (see https://github.com/miracl/core).
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#include "arch.h"
#include "ecp_BLS12443.h"
namespace BLS12443 {
/* Curve BLS12443 - Pairing friendly BLS curve */
#if CHUNK==16
#error Not supported
#endif
#if CHUNK==32
using namespace B448_29;
// Base Bits= 29
const int CURVE_Cof_I= 0;
const BIG CURVE_Cof= {0x11FFFFFF,0x1F800000,0x100FF,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0};
const int CURVE_B_I= 4;
const BIG CURVE_B= {0x4,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0};
const BIG CURVE_Order= {0x1,0x15E00000,0x8FFFFF,0x330FEE0,0x5A3E808,0x1A0482EE,0x174DC4C0,0x6E9E59B,0x1062F694,0x2F9E86,0x41,0x0,0x0,0x0,0x0,0x0};
const BIG CURVE_Gx= {0x18ABC574,0x13652D93,0xF8A9B4B,0x18DD91D9,0x40BFDDF,0xDEBE0C3,0x1CA5E24A,0x29B37A3,0x9049E88,0x11415BE7,0x1C4F9EAE,0x2569C1B,0x1681E434,0x8BDF6ED,0x19B12D89,0x73};
const BIG CURVE_Gy= {0x17A9CE3F,0xCA0ABAC,0x710C772,0x120BAD6D,0x900742F,0x3B52AB4,0x1D0A758D,0x13CBE7A7,0x15769DB0,0xC676B97,0x7EF77EB,0x30FC21B,0x43B2B19,0x21C2EEA,0x1887E1D4,0x24};
const BIG CURVE_HTPC= {0x911B6DF,0xA620224,0x155D68,0xBAE768,0x43A6AA,0xCE9FFD0,0x14EAAC40,0x19772A08,0x10074A9D,0xC451CC1,0xE84AE3C,0xDED8262,0x9680088,0x1A07DE19,0x19648C8F,0x9E};
const BIG CURVE_Bnx= {0x12000000,0x1F800000,0x100FF,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0};
const BIG CURVE_Pxa= {0x1F3AF148,0x12812AAB,0x11B9D6E1,0x1E9B7A3E,0x4DD695A,0x19843AAA,0x15D8C5C5,0xF509C60,0x139FC8E3,0x1060B671,0x11CFC89D,0x1F708C93,0x2219258,0x167260A8,0x117B1177,0x5};
const BIG CURVE_Pxb= {0x136279B6,0x27B735D,0xB60056F,0x61C6492,0x19E29515,0x18B4393A,0x9480BCF,0x9596877,0x9BD13DD,0x370B284,0x1FEBABF8,0x12D6CB9C,0x164C9DA2,0x9DA997,0x192E45BB,0x1E};
const BIG CURVE_Pya= {0x11C0B975,0x1FE07513,0x1C67EDF6,0xE36130E,0x1A91EFB9,0x1AC39A4,0x1316E89E,0x4DC3C2C,0x1122B65B,0x173710A4,0x10067CD2,0x1C58269E,0x1BD2F919,0x16A8822B,0x1A81C011,0x8B};
const BIG CURVE_Pyb= {0x82464AD,0x1F70FF80,0x3C33C6C,0x10AAF915,0x77B77F,0x3152868,0x1BBD7AD8,0xDADC2F9,0x17218280,0xAECA451,0x103E4E3E,0x1BD9B92,0xB9E9169,0x1F547AC3,0x577AC6,0x68};
const BIG CURVE_Ad= {0x98E3466,0x15BE78D9,0x12B6D628,0xD93FCB0,0x1D091D0,0x130C6222,0x14B30AEB,0x13910DCD,0xCA78F64,0xD0F66FC,0xEEC9DEF,0x7F9B01B,0x1760C9FC,0x78FCB94,0x1A839D35,0x33};
const BIG CURVE_Bd= {0x10F780D9,0xE65C309,0x1D294680,0x1AB4F80F,0x101A1BB2,0xD28DB7E,0x9192026,0x1C25665C,0x14D2890A,0xE458245,0x14A22C11,0x963FDB1,0x8F5BAD7,0x19106B58,0x146889DA,0x53};
const BIG PC[53]= {{0x3F34E48,0x651745D,0xE259428,0x1383ECF5,0x7BA3300,0x27D38ED,0x1D7FF700,0x9431A4,0x1689CD1,0x545B0E1,0x187C27A6,0x1969C0B2,0xA0C6C03,0x1BF55844,0xA442AE5,0x1E},{0x604D319,0x6D5B3BB,0x1FC7CA7A,0x1C6674A9,0x4CBF065,0x35A66CF,0x159ADD2C,0x1B552927,0x19CC61F8,0x9D5A2C5,0xC0A549B,0x1F40B1BF,0x10CB5BAC,0xFCEF9F5,0x1F238FE7,0x7B},{0x1EA1F60A,0x1A99A439,0x1F84EA1B,0xA936DD8,0x4E25589,0xEA2C846,0x1DE6DCE9,0x1AE6724D,0x191243E0,0x10C3978C,0x134B2B37,0x1BDC07A,0x8D2C8E0,0x7A49BE0,0x14F4B45A,0xA7},{0x17499741,0x260A801,0x7616D51,0x17AEAADD,0x521E193,0x5A429A4,0x1BD4909C,0x19D689BE,0x138A814D,0x101764AE,0xE5495FD,0xD6862F8,0x6EABD3B,0x139CBE79,0x102FAAE0,0x1E},{0x8A9B7DD,0xBC06177,0xE848FDB,0x17FA150F,0x56E9B75,0x1820A4D3,0x5A69ED,0x7B1B04A,0x1B5A80FB,0x17F1C270,0x8B8B6E,0x1CDB6D31,0xD4D2E33,0x1EAB98E9,0x18FD46B7,0x4F},{0x41C4477,0x170C7C9E,0x1A7CEED7,0x104562CB,0x151713B8,0xDE756B,0x100E4CFE,0x1FAAEA0A,0x16BAE1F3,0x1D349BB5,0xC6D2950,0x18311C0F,0x39A42E2,0x182C5CBC,0x4853E91,0x25},{0x10815090,0x2323376,0x20A1BDB,0x5508EE7,0x5B59C38,0xA0AFD37,0x165A6095,0x19B7465E,0x6474F,0x15D05C5C,0x1F4B70EF,0xFDBD849,0x6F8D806,0x1AEA48A0,0xC688DC,0x4E},{0x1500BAD1,0x11B8B8DE,0x169485E4,0x9CBB577,0x18400475,0x1CF76B6C,0xF9C2EC0,0xC5678B7,0x60B689F,0x14149AEA,0x1904CD6D,0x19952882,0x169C5E37,0xDBAA643,0x1C756EAA,0x9E},{0x1E8081C0,0x4410E14,0xAC7DCFD,0x1621F086,0x135547E8,0x199A0DEF,0xB5938FC,0x1B1450DE,0x5AFD544,0x79F9A9F,0x199ED81F,0x17543471,0x126B077C,0x1CE6BCD,0x1DF891D0,0x2B},{0x17226171,0x1C950142,0x16E104BB,0xE1B0949,0x92190E6,0x3F99D6,0x354C7D3,0xF8472E3,0x118257FE,0x1F5B17E4,0x16FD305B,0x1EBF4465,0x63A6551,0x115C8EEB,0xEE9A889,0xA2},{0x7A91954,0x9CA1080,0x12A3E384,0x112E1137,0x18E69E7C,0x1CB385BF,0x10F0213C,0x1AB981F5,0xD5D73EC,0x1172365C,0x1E0EB929,0xB0CA35E,0xE794D69,0x6BF5788,0x73D5885,0x94},{0x192801A5,0x81AFAC5,0x15B7E81,0x1BA422EB,0x39F6E89,0x2A238D6,0x1A3E1907,0x9488AB6,0x7933000,0x1F9A227A,0x1ABA3F3A,0x12DD9604,0x1BB10A18,0xC5456C7,0xD84DE,0x8},{0xF9D1C0A,0x92C9E14,0xD40ECC4,0x1CA779A4,0x14378709,0x7F8AF5E,0x1400B55D,0x9A45554,0x2C03381,0x6B22956,0x1606538F,0x14ED05D5,0x77F1CED,0xCA45FB0,0x1858F2A3,0x96},{0x1F0A734C,0x14ABBA56,0x62122B9,0x149E1F5E,0x11502173,0x194DC7FF,0xCB2DB28,0x1497703A,0x1BF898CF,0x1A9F7152,0x133A7119,0x1EE3FFE6,0x1D9A176F,0xEB09FF5,0x18EC7E61,0x95},{0x11F37A8D,0x137B967F,0x7ED1992,0x112A56C,0xB74C59C,0xF981054,0x1B16179D,0x6FDEA23,0x7CFCEF8,0x170947AC,0x165FEEB3,0x17304126,0x4045C68,0x1EAC0CF1,0x16C0476,0x26},{0x1124740B,0x56CC8D1,0x11A7A71A,0x374C848,0x8B0336B,0x828068D,0x17B3591B,0x12F676CC,0xC2A2446,0x8945941,0x79445E2,0x1FD486BC,0x1D89A7C5,0xCC0BCD2,0x150AFD2,0x6E},{0xD27D311,0x175A4D55,0x68B0D25,0x89656E1,0x18EEF0CC,0x1ECB7F5C,0x141F2E5,0x1FC71B9D,0xB3FF9ED,0x1816DAFB,0x124875C,0x8ECB03B,0x152F5A8E,0xE62A638,0x944C294,0x8F},{0x1F1FC577,0x171D678,0xAE5DEF,0x1033B90B,0x82CAB80,0x558A914,0x1CF59E4B,0x12019535,0x171CE7C8,0xACC9CB1,0x16CD1D1E,0x1C4BE058,0x1BE1ACDC,0xC595284,0x1342A963,0x5F},{0x9150A48,0x12B944D7,0x1D088301,0x118D6111,0xD0F4583,0x1A41F59C,0x5E0D400,0x12013D5F,0x1235B458,0x1DC12203,0xC5391FA,0x14E54599,0xDCCF56C,0x17E1395E,0x770FA99,0x87},{0x1357D628,0x1311EF7C,0x178C48D1,0x1AF751CF,0xDB9E8BF,0xE02049C,0x14F36DA6,0x1FC80D93,0x11A703B0,0x7B2DF3A,0x11F7AF4E,0x6E20944,0x169657CA,0x12D90851,0xCB4DFB2,0x72},{0x117D6EEC,0x111FF17D,0xDCAAB9E,0xF57E6E9,0x877F70,0x1615F8C3,0x15089BD8,0x8C6A10B,0x768CC8C,0xD87AB83,0x1AC4BCA5,0x192138F5,0xEC4C227,0xBB626C5,0x1EAD484,0x59},{0x180B7137,0x17C45952,0xF72FD01,0x14038FD8,0x1BC6906,0x1D30FF2A,0x272EF9D,0x3DDAEBC,0xEF123C2,0x36325B3,0xE4BD355,0x1CA82937,0x11E3AE9B,0x1F3E2015,0x10AA89CD,0x4A},{0x5BEFD8,0x1AC19637,0xCEC24BD,0x1BF4B873,0x39C9045,0x60B6244,0x113A2DBA,0x5DEED3D,0x5F23CCD,0x7AB2FD,0x1C6860B2,0x24F6E9B,0x1B1866E9,0x1CB93691,0x1834BE14,0x2},{0xACA5AD9,0xCDA044,0x1F06B705,0x60D70E0,0x16099A07,0x6B0FFD7,0xA3D226B,0x3BDE7A2,0x76F4EC5,0x1B842F45,0x3EC2206,0x1673113C,0x7E552D3,0x18F5183E,0x1CF7F587,0x97},{0x12C72185,0x141B8D52,0x14B678E2,0x1D6934AB,0x17932E98,0x16339B40,0x1590A131,0x17E6E0AE,0x1943949D,0x1D0E5D2D,0xD2A9510,0x15EB21C4,0x1D89CD87,0xFE5601A,0x11A001F4,0x5F},{0xEFEE0EA,0x1F50A4DD,0x111B4E23,0x19E8C81C,0x5EDC2C3,0x126703FF,0x13C16387,0x12147E91,0xD63425F,0xCF00CF7,0x47A627C,0x5E7D6B1,0xEE08F4E,0x1766140F,0xBB95F5F,0x96},{0x16887410,0x1FA80776,0x93C0854,0x1EA20D2,0x1CBCC511,0x179B0F85,0x5396256,0x8D385B5,0x19CDF1BA,0x18ECD9E9,0xF80B760,0x1072505E,0x5BD4CB5,0x22FBE14,0x1EA80B78,0x7B},{0xDD0AA9,0x1F70909A,0xD5597D7,0x101CE2A8,0x617757C,0xDEEDA0C,0x11EA1972,0x114E055,0xF76A90,0x1A95E01E,0x15379DEC,0x175A609C,0x14C8FDB9,0x115156DE,0xCBF4809,0x96},{0x1E428BFD,0x16F21A08,0x3ADF604,0x82249C5,0x1CB7A3FA,0x1E570ACB,0x1EB4B47B,0xECB355A,0x84B430D,0x1BBAA20E,0x1C8EF513,0x115C7B9F,0x1D5EB53A,0x122DD3FB,0x17BB0101,0x50},{0x12540F1F,0x13939806,0x18268D14,0x1FBD962B,0xB448310,0xEF54811,0x23A248,0x162322C2,0x3AF19BB,0x13AB6F20,0x179673B2,0x1B141CDA,0x40D00EE,0x1B1F7AD8,0x9046568,0xA4},{0x1545BF96,0x11613F77,0x1925835E,0x14B70DE1,0x14CA0A0A,0x17FB7979,0x43DDB1A,0xA1AFFB6,0x5E74A2D,0x1DA600F1,0x4D0C711,0x9107354,0x2A96CA7,0x7460C2C,0x4772C30,0x9C},{0xC96D5DE,0x11B3C719,0x12C44E72,0x62A8455,0xB3522DF,0x1722392D,0x17C4C84A,0xC5B08EF,0x1C73E4E8,0x184F76C5,0x1BE85639,0x4178224,0x5F1ADAC,0x1004293E,0x14020923,0x6C},{0x1A433825,0xF576BC3,0x159F38EF,0x1A9CD3BC,0x5854D83,0x1C7BD842,0x113DF3CB,0x195CCF87,0xF553CAE,0x4937DAE,0x12924884,0x15F7F1B0,0x18EBD637,0x1A325E15,0x1CE00B35,0x33},{0xF92004C,0x960B5AD,0x16377D4C,0x6B9BC92,0x1B008FFB,0x1235B5EB,0x1CCD413F,0x15FF451A,0x22BBD23,0x18E7FA12,0x15789412,0x1407F3AD,0xE34E149,0x1DD9EF60,0x85B4C28,0xA1},{0x93FF538,0x7AA0B71,0x3D2CEB3,0x61BCB1E,0xACC622E,0x1A3767DE,0x61F027B,0x185CDCB1,0x13E6A1E9,0xE361803,0x1880218F,0x62895FE,0x14B2BBFE,0xD240288,0x1C1FC271,0x13},{0x1B349B02,0xB53E37C,0x1ED9EA61,0x5AB2858,0xB67832E,0x2AA71F7,0xDB9D08F,0xC73B305,0x73FA5E7,0x13B8B1BB,0x55FF6BB,0x85C4222,0x1CE8EB95,0xFFD7A2F,0xE35B9C2,0x7B},{0x1E8BF419,0x58C0D7E,0x1E8CB5A2,0x73EC57B,0x1BA6872,0x8468C61,0x188BEA65,0x1816C6AF,0x13946FCA,0x1CAB443C,0x1A0B0CBE,0x133FAF0E,0x1DFEAF70,0x81B1972,0x7C15DCD,0x2F},{0x15EA6770,0x153E7411,0x194A07B0,0x3DE3153,0x1B272CD3,0x1457211A,0xBBE8481,0x124FDB0F,0x1D9F0AB1,0x1C1A31DD,0x1C1A7078,0xE0FBD4B,0x4C2F512,0x1E9AA0A2,0xD77577F,0x9D},{0x6C0FF64,0xDED97C9,0x1ABFB826,0x10A18BCB,0xA2E9E97,0x2F2BF0C,0x1BE37B6,0x15083D61,0x1F0EAD50,0x1285E151,0xE8C9A5,0xAACDD1C,0x21BAABC,0x12A1AB54,0xDF074C8,0x33},{0x1AD61CD4,0x15B2A8D2,0xE89EDBC,0x1FC8A43B,0x1B234A16,0x56FF55F,0x4434214,0x19A164DF,0x6FD7D0B,0x1F59707F,0x4024A6B,0x3C55387,0xB3B4937,0xC2440D9,0x151CFAE4,0x25},{0x13196AB7,0x1C4BE1B9,0x12338A3D,0x43704AC,0x5D1A5BF,0x1B56BCC6,0x907C135,0x111C7910,0x3E32A73,0xBF1FC0B,0xE4F0527,0x5083EC8,0x17B28B9,0x6268B6,0x55F070B,0x39},{0xA64A98B,0x1F4F594,0x1090DE8C,0x1CCB6B44,0x1BDBE18A,0x1915B90,0x1837267C,0x13AA0893,0x9E2045F,0x140227B2,0x151C8D7,0x1CF5C8F1,0x16B1A688,0x1E328319,0x174847C4,0x29},{0x23F15E0,0x20AE21E,0x2250855,0x13008AB4,0x73F6DF,0x111C5B0C,0x159AF9C6,0xB7FE152,0x79DF96D,0x9C80D6,0x8824E75,0xEA4AE30,0xD1ACD04,0x186AA2D2,0x1089D613,0x3F},{0xDEEFD29,0xE27AD26,0x1D3C7648,0x114BFF08,0x1E99583F,0x117A1E0B,0xBEB066D,0x888DA10,0x3FCD8,0x452C56F,0x1151FB02,0x1BBC16F2,0x5BDE13E,0xF9C061A,0x5F0DF6F,0x4A},{0xC6AA7A5,0xB730285,0x16623E6B,0x11428639,0xE16EF5A,0xB3CA060,0xD95CDD3,0xCD03F43,0xCC34C0E,0x1E6D50EB,0x1454A80,0x1DDE2C91,0x18D93981,0x1F2FBD71,0xD51A6B7,0x52},{0x8B3D97C,0x93E33A9,0xE5BECEC,0x1B419BCC,0x19948005,0x17561899,0xAB43192,0x62F209E,0x72E20EB,0x1404250C,0x1DE0C492,0x3B72CA1,0x10C7D312,0x1AC39F4F,0xCC2FE92,0x24},{0x17E5B5CD,0xAC10F48,0x4D24A06,0x13D52E8B,0x3CAC1AD,0x9AFA89C,0x15A904CE,0x1973387C,0xE4F654D,0x6BDE920,0x2894302,0x115601A7,0x6F09153,0x6D61B04,0xC0C09D6,0x2F},{0x20CBB48,0x1CD36C35,0x1D1ECCAD,0xA4A2E64,0x6410B48,0x1F0178A6,0x140D5A2A,0xBC9E98D,0x25196AD,0x1D674AE6,0x17968F26,0x170DF7C0,0x14FA6C21,0x11136ABF,0x16E9371E,0x84},{0x120E7325,0x2081D06,0x1178C70E,0x18029A79,0x1D1A3656,0x8BD4833,0x678C01,0x1FFEA081,0x1E52B15F,0x6DB1DE3,0x1312FB85,0xCF17DA,0xD42415A,0xE097FC3,0x14AF9D8F,0x91},{0x3BCD51F,0x1252FE3F,0x1CFC6139,0x865D2A9,0x351F9EE,0x94E9CD5,0x16A17578,0x1D1A2E67,0x18D6D662,0x15C773CC,0x15DFD11A,0xC186191,0x261488A,0x14F3BFC3,0x13D7B4DA,0x58},{0x1F460AFF,0xEBF619A,0x21112D1,0x6519E28,0x16301DF6,0x122DCCC,0x199520F0,0x18B93BAA,0x1066120A,0xAB20E15,0x153840C7,0x1553B357,0x65990C8,0x1480086C,0x70D3E2F,0x16},{0x188381C1,0x61392FE,0x106D2339,0x1FF56EA5,0x2C827C6,0x1542A2B,0x102CF503,0x25FD7D8,0x8F93EAA,0xA554551,0xEC5FC64,0x18684127,0x71BE49B,0xAD4A921,0x2AA5579,0x11},{0x20F40C4,0xE3CE918,0xEF3E41,0x6819DB7,0xA3F7AA3,0x1704BF3,0x1FC1BE3A,0x1D2E30CC,0x1D39A6D9,0x1340E096,0xDBC8405,0x5CE2E57,0x117283E0,0x1F8CF7E8,0x95C44F4,0xA7}};
const BIG CURVE_HTPC2= {0x152C1DFF,0x99DA487,0x18C185A2,0x6546AF3,0x144EC7F8,0xEF3797,0x1994DD57,0x179C04E7,0x57CDB0F,0x2585126,0x49E8583,0xCA412D5,0x6BFAFF3,0x14C442E4,0xBD9A0,0x1B};
const BIG CURVE_Adr= {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0};
const BIG CURVE_Adi= {0xF0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0};
const BIG CURVE_Bdr= {0x3F4,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0};
const BIG CURVE_Bdi= {0x3F4,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0};
const BIG PCR[13]= {{0xB425ED1,0xA84BDA1,0x81DED55,0x1E8897B4,0x73D0AA2,0x1D575C73,0x3B6AF6,0xBF03B37,0x19D6C70F,0x14E85262,0x3AB4A64,0x1D1426CB,0x12C9C7B1,0x121291F5,0x967F827,0x9B},{0x71C71E,0x1FE38E39,0x61671FF,0x6E671C7,0xD6DC7FA,0x6018556,0x82C9039,0x10F42C69,0x361154B,0xFAE3DCA,0xAC077CB,0xDCF1D18,0x61755C5,0x158DED78,0xF0DFA1D,0x74},{0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0},{0xAD097D6,0xAA12F68,0x2077B55,0x17A225ED,0x19CF42A8,0x1755D71C,0x180EDABD,0x1AFC0ECD,0x1675B1C3,0x53A1498,0x18EAD299,0xF4509B2,0xCB271EC,0x1C84A47D,0x1A59FE09,0x26},{0xC,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0},{0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0},{0xEDD3C0D,0x18BA7819,0x8CB1671,0x6694F03,0x1A8220DB,0x1A73F97C,0x1D95B3E0,0x14EEEAD0,0xBFE0250,0x16A65940,0xBF99097,0xCD5D4B1,0x1AFEDAB,0x63EC8CA,0x785F780,0xA8},{0x1038E38F,0x1FF1C71C,0x130B38FF,0x37338E3,0x6B6E3FD,0x1300C2AB,0x1416481C,0x187A1634,0x1B08AA5,0x17D71EE5,0x5603BE5,0x16E78E8C,0x30BAAE2,0x1AC6F6BC,0x786FD0E,0x3A},{0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0},{0x974F017,0x369E065,0x17C758C7,0x1A983C0C,0xD9A7F86,0x1EC90DEE,0x18E4681,0x1770E36A,0xC3296E,0x4094EF4,0x1F84274B,0x5334FD7,0xB56B4B5,0x7FC768B,0x1A58F87B,0x94},{0x12,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0},{0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0},{0x10AAA8FB,0x1FD55555,0x1921AAFF,0xA59AAAA,0x1424ABF7,0x19024801,0x1C42D855,0x96E429D,0x5119FF1,0x7855CAF,0x1020B3B1,0x4B6ABA4,0x92300A8,0x1054E434,0x1694F72C,0xAE}};
const BIG PCI[13]= {{0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0},{0x1038E38D,0x1FF1C71C,0x130B38FF,0x37338E3,0x6B6E3FD,0x1300C2AB,0x1416481C,0x187A1634,0x1B08AA5,0x17D71EE5,0x5603BE5,0x16E78E8C,0x30BAAE2,0x1AC6F6BC,0x786FD0E,0x3A},{0x71C71A,0x1FE38E39,0x61671FF,0x6E671C7,0xD6DC7FA,0x6018556,0x82C9039,0x10F42C69,0x361154B,0xFAE3DCA,0xAC077CB,0xDCF1D18,0x61755C5,0x158DED78,0xF0DFA1D,0x74},{0xAD097D6,0xAA12F68,0x2077B55,0x17A225ED,0x19CF42A8,0x1755D71C,0x180EDABD,0x1AFC0ECD,0x1675B1C3,0x53A1498,0x18EAD299,0xF4509B2,0xCB271EC,0x1C84A47D,0x1A59FE09,0x26},{0x10AAAA9F,0x1FD55555,0x1921AAFF,0xA59AAAA,0x1424ABF7,0x19024801,0x1C42D855,0x96E429D,0x5119FF1,0x7855CAF,0x1020B3B1,0x4B6ABA4,0x92300A8,0x1054E434,0x1694F72C,0xAE},{0x10AAAA63,0x1FD55555,0x1921AAFF,0xA59AAAA,0x1424ABF7,0x19024801,0x1C42D855,0x96E429D,0x5119FF1,0x7855CAF,0x1020B3B1,0x4B6ABA4,0x92300A8,0x1054E434,0x1694F72C,0xAE},{0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0},{0x71C71C,0x1FE38E39,0x61671FF,0x6E671C7,0xD6DC7FA,0x6018556,0x82C9039,0x10F42C69,0x361154B,0xFAE3DCA,0xAC077CB,0xDCF1D18,0x61755C5,0x158DED78,0xF0DFA1D,0x74},{0x5DA12ED,0x153425ED,0x171A2FAA,0x12B784BD,0x1A55694E,0x1AC70E4,0x433FD98,0xE7233D0,0xE9BEE2D,0x24B4816,0x1735E118,0x1571A1F1,0x1C708EBB,0x13D03FB6,0x1C3AF922,0x87},{0x974F017,0x369E065,0x17C758C7,0x1A983C0C,0xD9A7F86,0x1EC90DEE,0x18E4681,0x1770E36A,0xC3296E,0x4094EF4,0x1F84274B,0x5334FD7,0xB56B4B5,0x7FC768B,0x1A58F87B,0x94},{0x10AAAA99,0x1FD55555,0x1921AAFF,0xA59AAAA,0x1424ABF7,0x19024801,0x1C42D855,0x96E429D,0x5119FF1,0x7855CAF,0x1020B3B1,0x4B6ABA4,0x92300A8,0x1054E434,0x1694F72C,0xAE},{0x10AAA9D3,0x1FD55555,0x1921AAFF,0xA59AAAA,0x1424ABF7,0x19024801,0x1C42D855,0x96E429D,0x5119FF1,0x7855CAF,0x1020B3B1,0x4B6ABA4,0x92300A8,0x1054E434,0x1694F72C,0xAE},{0x10AAA8FB,0x1FD55555,0x1921AAFF,0xA59AAAA,0x1424ABF7,0x19024801,0x1C42D855,0x96E429D,0x5119FF1,0x7855CAF,0x1020B3B1,0x4B6ABA4,0x92300A8,0x1054E434,0x1694F72C,0xAE}};
#endif
#if CHUNK==64
using namespace B448_60;
// Base Bits= 60
const int CURVE_Cof_I= 0;
const BIG CURVE_Cof= {0xFF0000011FFFFFFL,0x403FL,0x0L,0x0L,0x0L,0x0L,0x0L,0x0L};
const int CURVE_B_I= 4;
const BIG CURVE_B= {0x4L,0x0L,0x0L,0x0L,0x0L,0x0L,0x0L,0x0L};
const BIG CURVE_Order= {0xEBC000000000001L,0x81987F70023FFFFL,0x340905DC5A3E80L,0x94374F2CDDD3713L,0x10405F3D0D062F6L,0x0L,0x0L,0x0L};
const BIG CURVE_Gx= {0xE6CA5B278ABC574L,0xFC6EC8ECBE2A6D2L,0x29BD7C18640BFDDL,0x8814D9BD1F29789L,0xABA282B7CE9049EL,0x43412B4E0DF13E7L,0xB62517BEDDB681EL,0x39E6C4L};
const BIG CURVE_Gy= {0x994157597A9CE3FL,0xF905D6B69C431DCL,0x3476A5568900742L,0xB09E5F3D3F429D6L,0xFAD8CED72F5769DL,0xB19187E10D9FBDDL,0x87504385DD443B2L,0x12621FL};
const BIG CURVE_HTPC= {0x14C40448911B6DFL,0xA05D73B4005575AL,0x19D3FFA0043A6AL,0x9DCBB950453AAB1L,0x8F188A39830074AL,0x886F6C1313A12BL,0x323F40FBC329680L,0x4F6592L};
const BIG CURVE_Bnx= {0xFF0000012000000L,0x403FL,0x0L,0x0L,0x0L,0x0L,0x0L,0x0L};
const BIG CURVE_Pxa= {0x65025557F3AF148L,0xAF4DBD1F46E75B8L,0x1730875544DD695L,0xE37A84E30576317L,0x2760C16CE339FC8L,0x258FB84649C73F2L,0x45DECE4C1502219L,0x2C5ECL};
const BIG CURVE_Pxb= {0xC4F6E6BB36279B6L,0x530E32492D8015BL,0x3F16872759E2951L,0xDD4ACB43BA5202FL,0xFE06E165089BD13L,0xDA296B65CE7FAEAL,0x16EC13B532F64C9L,0xF64B9L};
const BIG CURVE_Pya= {0xBFC0EA271C0B975L,0x971B0987719FB7DL,0x783587349A91EFBL,0x5B26E1E164C5BA2L,0x34AE6E2149122B6L,0x919E2C134F4019FL,0x46D510457BD2FL,0x45EA07L};
const BIG CURVE_Pyb= {0x3EE1FF0082464ADL,0xF8557C8A8F0CF1BL,0x6062A50D0077B77L,0x806D6E17CEEF5EBL,0x8F95D948A372182L,0x1690DECDC940F93L,0xEB1BEA8F586B9E9L,0x34015DL};
const BIG CURVE_Ad= {0x2B7CF1B298E3466L,0x6C9FE584ADB58AL,0xAE618C4441D091DL,0x649C886E6D2CC2BL,0x7BDA1ECDF8CA78FL,0x9FC3FCD80DBBB27L,0x74D4F1F9729760CL,0x19EA0EL};
const BIG CURVE_Bd= {0x1CCB86130F780D9L,0x2D5A7C07F4A51A0L,0x99A51B6FD01A1BBL,0xAE12B32E246480L,0x45C8B048B4D289L,0xAD74B1FED8D288BL,0x276B220D6B08F5BL,0x29D1A2L};
const BIG PC[53]= {{0xCA2E8BA3F34E48L,0x9C1F67AB89650AL,0x4FA71DA7BA330L,0xD104A18D275FFDCL,0xE98A8B61C21689CL,0xC03CB4E05961F09L,0xAB977EAB088A0C6L,0xF2910L},{0x8DAB6776604D319L,0x5E333A54FF1F29EL,0xB06B4CD9E4CBF06L,0xF8DAA9493D66B74L,0x26D3AB458B9CC61L,0xBACFA058DFB0295L,0x3F9DF9DF3EB0CB5L,0x3DFC8EL},{0xF5334873EA1F60AL,0x9549B6EC7E13A86L,0xA5D45908C4E2558L,0xE0D733926F79B73L,0xCDE1872F1991243L,0x8E00DEE03D4D2CAL,0xD168F4937C08D2CL,0x53D3D2L},{0x44C150037499741L,0x3BD7556E9D85B54L,0x70B485348521E19L,0x4DCEB44DF6F5242L,0x7F602EC95D38A81L,0xD3B6B4317C39525L,0xAB827397CF26EABL,0xF40BEL},{0xD780C2EE8A9B7DDL,0x5BFD0A87BA123F6L,0xB704149A656E9B7L,0xFB3D8D8250169A7L,0xDBAFE384E1B5A80L,0xE33E6DB698822E2L,0x1ADFD5731D2D4D2L,0x27E3F5L},{0xEE18F93C41C4477L,0x8822B165E9F3BB5L,0xF81BCEAD751713BL,0xF3FD57505403933L,0x543A69376B6BAE1L,0x2E2C188E07B1B4AL,0xFA47058B97839A4L,0x129214L},{0xC46466ED0815090L,0x82A8477388286F6L,0x55415FA6E5B59C3L,0x4FCDBA32F596982L,0x3BEBA0B8B800647L,0x8067EDEC24FD2DCL,0x23735D491406F8DL,0x27031AL},{0x237171BD500BAD1L,0x54E5DABBDA52179L,0x39EED6D9840047L,0x9F62B3C5BBE70BBL,0x5B682935D460B68L,0xE37CCA944164133L,0xBAA9B754C8769C5L,0x4F71D5L},{0x48821C29E8081C0L,0x8B10F8432B1F73FL,0xF33341BDF35547EL,0x44D8A286F2D64E3L,0x7CF3F353E5AFD5L,0x77CBAA1A38E67B6L,0x474039CD79B26B0L,0x15F7E2L},{0xF92A02857226171L,0x670D84A4DB8412EL,0x4C07F33AC92190EL,0xFE7C239718D531FL,0x16FEB62FC918257L,0x551F5FA232DBF4CL,0xA2262B91DD663A6L,0x513BA6L},{0x139421007A91954L,0xC897089BCA8F8E1L,0xF39670B7F8E69E7L,0xECD5CC0FAC3C084L,0x4A62E46CB8D5D73L,0xD6958651AF783AEL,0x6214D7EAF10E794L,0x4A1CF5L},{0x5035F58B92801A5L,0x9DD21175856DFA0L,0x1C54471AC39F6E8L,0x4A4455B68F864L,0xCEBF3444F479330L,0xA1896ECB026AE8FL,0x13798A8AD8FBB10L,0x40036L},{0x12593C28F9D1C0AL,0x9E53BCD23503B31L,0x74FF15EBD437870L,0x814D22AAA5002D5L,0xE3CD6452AC2C033L,0xCEDA7682EAD8194L,0xCA8D948BF6077F1L,0x4B6163L},{0x695774ADF0A734CL,0x3A4F0FAF18848AEL,0xA329B8FFF150217L,0xCFA4BB81D32CB6CL,0x46753EE2A5BF898L,0x76FF71FFF34CE9CL,0xF985D613FEBD9A1L,0x4AE3B1L},{0xA6F72CFF1F37A8DL,0xC08952B61FB4664L,0x75F3020A8B74C59L,0xF837EF511EC585EL,0xACEE128F587CFCEL,0xC68B982093597FBL,0x11DBD5819E24045L,0x1305B0L},{0x8AD991A3124740BL,0xB1BA6424469E9C6L,0x6D0500D1A8B0336L,0x4697B3B665ECD64L,0x789128B282C2A24L,0x7C5FEA435E1E511L,0xBF4998179A5D89AL,0x370542L},{0x6EB49AAAD27D311L,0xC44B2B709A2C349L,0x97D96FEB98EEF0CL,0xEDFE38DCE8507CBL,0xD7302DB5F6B3FF9L,0xA8E476581D84921L,0xA51CC54C7152F5L,0x47A513L},{0xC2E3ACF1F1FC577L,0x819DC8582B977BL,0x2CAB1522882CAB8L,0xC8900CA9AF3D679L,0x479599396371CE7L,0xCDCE25F02C5B347L,0xA58D8B2A509BE1AL,0x2FCD0AL},{0x657289AE9150A48L,0x38C6B088F4220C0L,0x3483EB38D0F458L,0x589009EAF978350L,0x7EBB824407235B4L,0x56CA72A2CCB14E4L,0xEA66FC272BCDCCFL,0x439DC3L},{0x6623DEF9357D628L,0xFD7BA8E7DE31234L,0x99C040938DB9E8BL,0xB0FE406C9D3CDB6L,0xD38F65BE751A703L,0x7CA37104A247DEBL,0x7ECA5B210A36965L,0x3932D3L},{0xA23FE2FB17D6EECL,0x7ABF374B72AAE7L,0x62C2BF1860877F7L,0x8C4635085D4226FL,0x295B0F5706768CCL,0x227C909C7AEB12FL,0x521176C4D8AEC4CL,0x2C87ABL},{0x6F88B2A580B7137L,0x6A01C7EC3DCBF40L,0x77A61FE541BC690L,0xC21EED75E09CBBEL,0xD546C64B66EF123L,0xE9BE54149BB92F4L,0x2737E7C402B1E3AL,0x2542AAL},{0x75832C6E05BEFD8L,0x5DFA5C39B3B092FL,0xE8C16C48839C904L,0xCD2EF769EC4E8B6L,0x2C80F565FA5F23CL,0x6E9127B74DF1A18L,0xF8539726D23B186L,0x160D2L},{0x419B4088ACA5AD9L,0x7306B8707C1ADC1L,0xACD61FFAF6099A0L,0xC51DEF3D128F489L,0x81B7085E8A76F4EL,0x2D3B39889E0FB08L,0xD61F1EA307C7E55L,0x4BF3DFL},{0xA8371AA52C72185L,0x8EB49A55D2D9E38L,0xC6C6736817932E9L,0x9DBF37057564284L,0x443A1CBA5B94394L,0xD87AF590E234AA5L,0x7D1FCAC035D89CL,0x2FC680L},{0xFEA149BAEFEE0EAL,0x3CF4640E446D388L,0x1E4CE07FE5EDC2CL,0x5F90A3F48CF058EL,0x9F19E019EED6342L,0xF4E2F3EB5891E98L,0x7D7EECC281EEE08L,0x4B2EE5L},{0x3F500EED6887410L,0x10F5106924F0215L,0x5AF361F0BCBCC51L,0xBA469C2DA94E589L,0xD831D9B3D39CDF1L,0xCB5839282F3E02DL,0x2DE045F7C285BD4L,0x3DFAA0L},{0xFEE121340DD0AA9L,0xC80E715435565F5L,0xC9BDDB418617757L,0x9008A702AC7A865L,0x7B352BC03C0F76AL,0xDB9BAD304E54DE7L,0x20262A2ADBD4C8FL,0x4B32FDL},{0x2DE43411E428BFDL,0xA41124E28EB7D81L,0xEFCAE1597CB7A3FL,0xD7659AAD7AD2D1L,0x44F775441C84B43L,0x53A8AE3DCFF23BDL,0x40645BA7F7D5EBL,0x285EECL},{0x2727300D2540F1FL,0xFDECB15E09A345L,0x21DEA9022B44831L,0xBBB119161008E89L,0xECA756DE403AF19L,0xEED8A0E6D5E59CL,0x95A363EF5B040D0L,0x522411L},{0xA2C27EEF545BF96L,0xAA5B86F0E4960D7L,0x6AFF6F2F34CA0A0L,0x2D50D7FDB10F76CL,0xC47B4C01E25E74AL,0xCA748839AA13431L,0xB0C0E8C18582A96L,0x4E11DCL},{0xA3678E32C96D5DEL,0xF315422ACB1139CL,0x2AE44725AB3522DL,0xE862D8477DF1321L,0x8E709EED8BC73E4L,0xDAC20BC1126FA15L,0x248E008527C5F1AL,0x365008L},{0xDEAED787A433825L,0x3D4E69DE567CE3BL,0x2F8F7B0845854D8L,0xAECAE67C3C4F7CFL,0x210926FB5CF553CL,0x637AFBF8D84A492L,0x2CD7464BC2B8EBDL,0x19F380L},{0x12C16B5AF92004CL,0xB35CDE4958DDF53L,0xFE46B6BD7B008FFL,0x23AFFA28D733504L,0x4B1CFF42422BBDL,0x149A03F9D6D5E25L,0x30A3BB3DEC0E34EL,0x50A16DL},{0xCF5416E293FF538L,0xE30DE58F0F4B3ACL,0xEF46ECFBCACC622L,0xE9C2E6E58987C09L,0x63DC6C30073E6A1L,0xBFE3144AFF62008L,0x9C5A4805114B2BL,0x9F07FL},{0x56A7C6F9B349B02L,0xE2D5942C7B67A98L,0x3C554E3EEB67832L,0xE7639D982B6E742L,0xAEE771637673FA5L,0xB9542E2111157FDL,0xE709FFAF45FCE8EL,0x3DB8D6L},{0x8B181AFDE8BF419L,0x239F62BDFA32D68L,0x9508D18C21BA687L,0xCAC0B6357E22FA9L,0x2FB95688793946FL,0xF7099FD787682C3L,0x773503632E5DFEAL,0x179F05L},{0x2A7CE8235EA6770L,0x31EF18A9E5281ECL,0x68AE4235B272CDL,0xB1927ED87AEFA12L,0x1E383463BBD9F0AL,0x512707DEA5F069CL,0x5DFFD3541444C2FL,0x4EB5DDL},{0x9BDB2F926C0FF64L,0x7850C5E5EAFEE09L,0xD85E57E18A2E9E9L,0x50A841EB086F8DEL,0x69650BC2A3F0EADL,0xABC5566E8E03A32L,0xD32254356A821BAL,0x19B7C1L},{0x2B6551A5AD61CD4L,0x6FE4521DBA27B6FL,0x50ADFEABFB234A1L,0xBCD0B26F910D08L,0x9AFEB2E0FE6FD7DL,0x9371E2A9C390092L,0xEB9184881B2B3B4L,0x12D473L},{0x7897C3733196AB7L,0xF21B825648CE28FL,0xD76AD798C5D1A5BL,0x7388E3C88241F04L,0x49D7E3F8163E32AL,0x8B92841F64393C1L,0x1C2C0C4D16C17B2L,0x1C957CL},{0x3E9EB28A64A98BL,0xAE65B5A242437A3L,0xF0322B721BDBE18L,0x5F9D50449E0DC99L,0x35E8044F649E204L,0x688E7AE47885472L,0x1F13C6506336B1AL,0x14DD21L},{0x4415C43C23F15E0L,0xF980455A0894215L,0x1A238B618073F6DL,0x6D5BFF0A9566BE7L,0x9D413901AC79DF9L,0xD04752571822093L,0x584F0D545A4D1ACL,0x1FC227L},{0x1C4F5A4CDEEFD29L,0xF8A5FF8474F1D92L,0xB62F43C17E99583L,0xD84446D082FAC19L,0xC088A58ADE003FCL,0x13EDDE0B794547EL,0x7DBDF380C345BDEL,0x2517C3L},{0xD6E6050AC6AA7A5L,0xA8A1431CD988F9AL,0x4D67940C0E16EF5L,0xE6681FA1B65737L,0xA03CDAA1D6CC34CL,0x981EEF164885152L,0x9ADFE5F7AE38D93L,0x293546L},{0x127C67528B3D97CL,0x5DA0CDE6396FB3BL,0x4AEAC3133994800L,0xEB317904F2AD0C6L,0x24A8084A1872E20L,0x3121DB9650F7831L,0xFA4B5873E9F0C7DL,0x12330BL},{0x95821E917E5B5CDL,0xD9EA97459349281L,0x3935F51383CAC1AL,0x4DCB99C3E56A413L,0xC08D7BD240E4F65L,0x1538AB00D38A250L,0x2758DAC36086F09L,0x17B030L},{0x79A6D86A20CBB48L,0x85251732747B32BL,0xABE02F14C6410B4L,0xAD5E4F4C6D03568L,0xC9BACE95CC25196L,0xC21B86FBE05E5A3L,0xDC7A226D57F4FA6L,0x425BA4L},{0x84103A0D20E7325L,0x6C014D3CC5E31C3L,0x517A9067D1A365L,0x5FFFF5040819E30L,0xE14DB63BC7E52B1L,0x15A0678BED4C4BEL,0x763DC12FF86D424L,0x48D2BEL},{0x64A5FC7E3BCD51FL,0xE432E954F3F184EL,0xE129D39AA351F9EL,0x62E8D1733DA85D5L,0x46AB8EE7998D6D6L,0x88A60C30C8D77F4L,0xD36A9E77F862614L,0x2C4F5EL},{0x5D7EC335F460AFFL,0x6328CF1408444B4L,0xC0245B9996301DFL,0xAC5C9DD5665483L,0x31D5641C2B06612L,0xC8AA9D9ABD4E10L,0xF8BE90010D86599L,0xB1C34L},{0x4C2725FD88381C1L,0x6FFAB752C1B48CEL,0xC2A854562C827CL,0xAA12FEBEC40B3D4L,0x1914AA8AA28F93EL,0x49BC342093BB17FL,0x55E55A9524271BEL,0x88AA9L},{0x5C79D23020F40C4L,0x3340CEDB83BCF90L,0xE82E097E6A3F7AAL,0xD9E9718667F06F8L,0x16681C12DD39A6L,0x3E02E7172BB6F21L,0x13D3F19EFD11728L,0x53A571L}};
const BIG CURVE_HTPC2= {0x933B490F52C1DFFL,0x832A3579E306168L,0x5C1DE6F2F44EC7FL,0xFBCE0273E65375L,0x60C4B0A24C57CDBL,0xFF3652096A927A1L,0x668298885C86BFAL,0xD802FL};
const BIG CURVE_Adr= {0x0L,0x0L,0x0L,0x0L,0x0L,0x0L,0x0L,0x0L};
const BIG CURVE_Adi= {0xF0L,0x0L,0x0L,0x0L,0x0L,0x0L,0x0L,0x0L};
const BIG CURVE_Bdr= {0x3F4L,0x0L,0x0L,0x0L,0x0L,0x0L,0x0L,0x0L};
const BIG CURVE_Bdi= {0x3F4L,0x0L,0x0L,0x0L,0x0L,0x0L,0x0L,0x0L};
const BIG PCR[13]= {{0x55097B42B425ED1L,0x2F444BDA2077B55L,0xDBAAEB8E673D0AAL,0xF5F81D9B80EDABL,0x9929D0A4C59D6C7L,0x7B1E8A13658EAD2L,0xE09E42523EB2C9CL,0x4DA59FL},{0xFFC71C72071C71EL,0xA37338E39859C7FL,0xE4C030AACD6DC7FL,0x4B87A1634A0B240L,0xF2DF5C7B9436115L,0x5C56E78E8C2B01DL,0xE876B1BDAF06175L,0x3A3C37L},{0x0L,0x0L,0x0L,0x0L,0x0L,0x0L,0x0L,0x0L},{0x55425ED0AD097D6L,0x8BD112F6881DED5L,0xF6EABAE399CF42AL,0xC3D7E0766E03B6AL,0xA64A742931675B1L,0x1EC7A284D963AB4L,0xF82790948FACB27L,0x136967L},{0xCL,0x0L,0x0L,0x0L,0x0L,0x0L,0x0L,0x0L},{0x0L,0x0L,0x0L,0x0L,0x0L,0x0L,0x0L,0x0L},{0x7174F032EDD3C0DL,0xB334A781A32C59CL,0x834E7F2F9A8220DL,0x50A7775687656CFL,0x25ED4CB280BFE02L,0xDAB66AEA58AFE64L,0xDE00C7D91941AFEL,0x541E17L},{0xFFE38E39038E38FL,0xD1B99C71CC2CE3FL,0x7260185566B6E3FL,0xA5C3D0B1A505920L,0xF96FAE3DCA1B08AL,0xAE2B73C7461580EL,0xF43B58DED7830BAL,0x1D1E1BL},{0x0L,0x0L,0x0L,0x0L,0x0L,0x0L,0x0L,0x0L},{0xC6D3C0CA974F017L,0x6D4C1E065F1D631L,0x7D921BDCD9A7F8L,0x6EBB871B506391AL,0xD2C8129DE80C329L,0x4B5299A7EBFE109L,0xE1ECFF8ED16B56BL,0x4A6963L},{0x12L,0x0L,0x0L,0x0L,0x0L,0x0L,0x0L,0x0L},{0x0L,0x0L,0x0L,0x0L,0x0L,0x0L,0x0L,0x0L},{0xFFAAAAAB0AAA8FBL,0x752CD5556486ABFL,0x572049003424ABFL,0xF14B7214EF10B61L,0xEC4F0AB95E5119FL,0xA825B55D24082CL,0xDCB20A9C8689230L,0x575A53L}};
const BIG PCI[13]= {{0x0L,0x0L,0x0L,0x0L,0x0L,0x0L,0x0L,0x0L},{0xFFE38E39038E38DL,0xD1B99C71CC2CE3FL,0x7260185566B6E3FL,0xA5C3D0B1A505920L,0xF96FAE3DCA1B08AL,0xAE2B73C7461580EL,0xF43B58DED7830BAL,0x1D1E1BL},{0xFFC71C72071C71AL,0xA37338E39859C7FL,0xE4C030AACD6DC7FL,0x4B87A1634A0B240L,0xF2DF5C7B9436115L,0x5C56E78E8C2B01DL,0xE876B1BDAF06175L,0x3A3C37L},{0x55425ED0AD097D6L,0x8BD112F6881DED5L,0xF6EABAE399CF42AL,0xC3D7E0766E03B6AL,0xA64A742931675B1L,0x1EC7A284D963AB4L,0xF82790948FACB27L,0x136967L},{0xFFAAAAAB0AAAA9FL,0x752CD5556486ABFL,0x572049003424ABFL,0xF14B7214EF10B61L,0xEC4F0AB95E5119FL,0xA825B55D24082CL,0xDCB20A9C8689230L,0x575A53L},{0xFFAAAAAB0AAAA63L,0x752CD5556486ABFL,0x572049003424ABFL,0xF14B7214EF10B61L,0xEC4F0AB95E5119FL,0xA825B55D24082CL,0xDCB20A9C8689230L,0x575A53L},{0x0L,0x0L,0x0L,0x0L,0x0L,0x0L,0x0L,0x0L},{0xFFC71C72071C71CL,0xA37338E39859C7FL,0xE4C030AACD6DC7FL,0x4B87A1634A0B240L,0xF2DF5C7B9436115L,0x5C56E78E8C2B01DL,0xE876B1BDAF06175L,0x3A3C37L},{0xAA684BDA5DA12EDL,0xE95BC25EDC68BEAL,0x60358E1C9A55694L,0x2D73919E810CFF6L,0x460496902CE9BEEL,0xEBBAB8D0F8DCD78L,0xE48A7A07F6DC708L,0x43F0EBL},{0xC6D3C0CA974F017L,0x6D4C1E065F1D631L,0x7D921BDCD9A7F8L,0x6EBB871B506391AL,0xD2C8129DE80C329L,0x4B5299A7EBFE109L,0xE1ECFF8ED16B56BL,0x4A6963L},{0xFFAAAAAB0AAAA99L,0x752CD5556486ABFL,0x572049003424ABFL,0xF14B7214EF10B61L,0xEC4F0AB95E5119FL,0xA825B55D24082CL,0xDCB20A9C8689230L,0x575A53L},{0xFFAAAAAB0AAA9D3L,0x752CD5556486ABFL,0x572049003424ABFL,0xF14B7214EF10B61L,0xEC4F0AB95E5119FL,0xA825B55D24082CL,0xDCB20A9C8689230L,0x575A53L},{0xFFAAAAAB0AAA8FBL,0x752CD5556486ABFL,0x572049003424ABFL,0xF14B7214EF10B61L,0xEC4F0AB95E5119FL,0xA825B55D24082CL,0xDCB20A9C8689230L,0x575A53L}};
#endif
}