diff options
author | Lars-Dominik Braun <PromyLOPh@lavabit.com> | 2010-11-06 13:32:31 +0100 |
---|---|---|
committer | Lars-Dominik Braun <PromyLOPh@lavabit.com> | 2010-11-06 13:32:31 +0100 |
commit | 8cf92b107695b2fe04b86c90d64f4f74e4288c44 (patch) | |
tree | e231de02e25c34d9729a3d9c41df5129ad619853 /libpiano/src | |
parent | 6341560e15e220d92b6d6d87d62f51f17f8c808f (diff) | |
download | pianobar-8cf92b107695b2fe04b86c90d64f4f74e4288c44.tar.gz pianobar-8cf92b107695b2fe04b86c90d64f4f74e4288c44.tar.bz2 pianobar-8cf92b107695b2fe04b86c90d64f4f74e4288c44.zip |
Protocol version bump (v29)
- New crypto keys (thanks to ZigZagJoe for extracting them)
- addTiredSong api changed
- song identity not needed any more => removed from libpiano
Diffstat (limited to 'libpiano/src')
-rw-r--r-- | libpiano/src/crypt_key_input.h | 524 | ||||
-rw-r--r-- | libpiano/src/crypt_key_output.h | 532 | ||||
-rw-r--r-- | libpiano/src/piano.c | 52 | ||||
-rw-r--r-- | libpiano/src/piano.h | 1 | ||||
-rw-r--r-- | libpiano/src/xml.c | 2 |
5 files changed, 574 insertions, 537 deletions
diff --git a/libpiano/src/crypt_key_input.h b/libpiano/src/crypt_key_input.h index e9adac1..a02e668 100644 --- a/libpiano/src/crypt_key_input.h +++ b/libpiano/src/crypt_key_input.h @@ -33,273 +33,273 @@ THE SOFTWARE. const unsigned int in_key_n = 16; static const uint32_t in_key_p [16 + 2] = { - 0x81A0D315L, 0x62EE1AE1L, 0xA464BCC1L, 0x3BA1681EL, - 0x95F51922L, 0xD23ADF85L, 0x454592EFL, 0xEF7E7533L, - 0x502B8DF3L, 0xA3D1BC15L, 0x5548A7C4L, 0x8C91C026L, - 0x16EA1478L, 0x64BF6223L, 0x3CEF49B3L, 0xB4053114L, - 0x3D5034E6L, 0xDC0A7EF9L, + 0xCB42446BL, 0x84C9ADD7L, 0x58BB40B6L, 0x67309C28L, + 0x847AE93FL, 0x634B08FAL, 0x7B41B0E7L, 0x6CA77EA8L, + 0x680A3F07L, 0x32C26224L, 0x15F68F8FL, 0x84983ECEL, + 0xE88938C0L, 0xFB2F1633L, 0x172C14BDL, 0xEDD40F8CL, + 0xFF10C4FBL, 0x22B7AB11L, }; static const uint32_t in_key_s [4][256] = {{ - 0xD917FE9FL, 0x0415253BL, 0x083ED0BEL, 0xE8FDFF96L, - 0xF160743CL, 0x0A2A426CL, 0x8B4C86A0L, 0x239474CEL, - 0xCA0CCA8FL, 0x4CB2A8A0L, 0x5F2D5947L, 0xE7DF1D06L, - 0xED666D53L, 0xCDE0F6AAL, 0x4F5136FEL, 0xAD78E4C9L, - 0x36695B87L, 0x7512CA0FL, 0x7A3AFCA8L, 0x92BE5537L, - 0x586E9827L, 0x6CD158CDL, 0x3ABEC6C1L, 0x844E3243L, - 0xF4F6DA5DL, 0x070021EFL, 0xFFCF8CEFL, 0x2636B763L, - 0x2E1150F3L, 0xDE157BEFL, 0xB3AE8FDCL, 0xA402474CL, - 0x9B1E8377L, 0x14C51EA4L, 0x7E90973AL, 0x52087D2CL, - 0xC08FD313L, 0x43CA6149L, 0xE340346BL, 0x083198CAL, - 0x6430D9F8L, 0xA64E607FL, 0x540CC1C6L, 0x4E5160FFL, - 0xB2513F00L, 0xF98F447AL, 0x810ABF6BL, 0x9096855BL, - 0x9AE434FDL, 0x1A01BD81L, 0x3E300842L, 0x61C50018L, - 0x4B28DB32L, 0x4CB09631L, 0xFFA521DAL, 0x14CC2650L, - 0x48F807FAL, 0xC4FAA6C0L, 0xDE6A7678L, 0xE709BF2FL, - 0xC175D659L, 0x5F23843CL, 0xF07A01FEL, 0x2739FB7EL, - 0x8C5A36A9L, 0xB0EADEA6L, 0x8B4FBFD8L, 0x4BE3679EL, - 0xD5F24F61L, 0x3A158ECEL, 0x329676B4L, 0x33F9ABC2L, - 0xD4907F47L, 0x5F354B2EL, 0xFB92B109L, 0x31EEAE70L, - 0xE9EAC38DL, 0x91DCC642L, 0xE173298BL, 0x051E8AE8L, - 0x2843FAFBL, 0xB387F8D1L, 0x980AD6AAL, 0x6EC6DE49L, - 0xE9D49EF3L, 0xAFC06576L, 0x3FD70CF0L, 0x269AAFD3L, - 0x7827EFBAL, 0xA51ADEBEL, 0x75F014CFL, 0xBA91772BL, - 0x8ABAC12DL, 0xD6C98EA7L, 0x66546028L, 0x6D50E0AEL, - 0x5C9D3C92L, 0x8095947AL, 0xF7CCE938L, 0x0D952ADAL, - 0xE5E64966L, 0x5E357512L, 0x5A7E0958L, 0x44BEB107L, - 0xED03D60EL, 0x1D652EFFL, 0x2275EA01L, 0x736831C3L, - 0xAA8B2A23L, 0x50D29632L, 0xD6CFD665L, 0x5CD7CED2L, - 0x65BB97FEL, 0x2F49D183L, 0xC09EC338L, 0x84A8DCBEL, - 0xEFF624AFL, 0xC7C1B0B5L, 0xCDFE1163L, 0x6751E288L, - 0x8B96D144L, 0xE09AB660L, 0xE91BAE11L, 0x1D097DF5L, - 0x6742E0A6L, 0x53500F63L, 0xAB090438L, 0x4040F128L, - 0xE4EFB0E0L, 0x2DE74905L, 0xFC2262C0L, 0xF4FFD6E0L, - 0xDADDDEC1L, 0xF1E0D8C0L, 0x36FBD004L, 0xEC1DE306L, - 0xA19826B4L, 0xBFAF36C7L, 0x516777B2L, 0x7B7C5DC6L, - 0xD9758DACL, 0xCD33563DL, 0x0B83FC22L, 0xB55DEB5EL, - 0x9ACF93D2L, 0x2A7B90ABL, 0xED8A4449L, 0xEA1CF38AL, - 0x5AB412A8L, 0x924F9E21L, 0x44FBDDA1L, 0xE99C321AL, - 0x5908C6CEL, 0xEE748C6DL, 0x124D6B51L, 0x7B05962CL, - 0x41D9FA9DL, 0xCCB14DBDL, 0x47FA3D9FL, 0xC68104F6L, - 0x511C7864L, 0xAB06E6CDL, 0x43FE0F54L, 0xA8331C3AL, - 0x7237FEE4L, 0x41A782A1L, 0xFEA2C7F8L, 0x2A0E9509L, - 0xB2224704L, 0x30BD541CL, 0xE177C904L, 0xF52AADD8L, - 0xEA244EA8L, 0x44E8F3A1L, 0x3B0EC183L, 0x1D2934A1L, - 0x5F550EA5L, 0x0B3E4620L, 0x94006D67L, 0xCF719E7DL, - 0xC0362EA3L, 0x1DD05063L, 0x21E557B0L, 0x34A1DFB1L, - 0x1D8582EDL, 0xA9CC3B68L, 0xCA7F7766L, 0x8876E7B0L, - 0x98AAF1A3L, 0x8C7B4649L, 0x2BBD4F71L, 0x0CFED7D5L, - 0x10336484L, 0xBAABD1D2L, 0x0DB5C3F3L, 0x250E18F3L, - 0x8A683DBBL, 0x46D87FC0L, 0x447C934EL, 0xB8A5178EL, - 0xCD83EEC2L, 0x82053D3FL, 0xA6172A7CL, 0xCE4B68E0L, - 0x50BFC9AFL, 0xA0C2BECBL, 0x69F8DE09L, 0x1BCC95C6L, - 0xCC8D91A3L, 0xE6DB39E3L, 0xA1FCE775L, 0xA3B597DFL, - 0x111CD9BEL, 0x26A5F501L, 0x56FCF9E1L, 0x2269E3B4L, - 0xAE97B607L, 0x04DFD213L, 0xD2502840L, 0x20A4DA45L, - 0x58EA780EL, 0x6AC470A2L, 0xFC90AA5BL, 0x0CF03917L, - 0x077DEC5CL, 0xF87A2BB2L, 0xA8BFD2B7L, 0x29CA7541L, - 0x6CEE0D2AL, 0x7E592E80L, 0x5CA17FD7L, 0x2DEB3F06L, - 0x070F47B7L, 0xF106EA36L, 0x49A80A00L, 0xC34E6467L, - 0xE537C2C5L, 0x23332658L, 0x00226F13L, 0x67E82FF4L, - 0x18126492L, 0x36E2C3B8L, 0x34FB0831L, 0x2AB02E28L, - 0x24FECC70L, 0x0E6E9168L, 0x86EC355EL, 0x34D09F1AL, - 0x343EEA56L, 0x324CA69CL, 0xDD85FDE3L, 0x228935F6L, - 0x3E520289L, 0xC06612ACL, 0xA6FDB351L, 0x29769037L, + 0x44B440E2L, 0xE99DBE06L, 0xB9F1A081L, 0x0933FCA1L, + 0x6B412E99L, 0xB30F4B41L, 0xE32063E6L, 0xF9C0101EL, + 0x5265F727L, 0x678F8106L, 0xACF39C5CL, 0x28F2868FL, + 0x5475BE2FL, 0x404DE0BCL, 0x23468728L, 0x184A1488L, + 0xEA971385L, 0x2F886887L, 0x5E95611CL, 0x239508CCL, + 0x88355159L, 0x5E7E789FL, 0x9A805DAFL, 0xEC5AB7E0L, + 0x4A3E4C9FL, 0xA2BE130CL, 0xEE7E0076L, 0x05B9A2F8L, + 0x6D7AD1C3L, 0x3CAA426EL, 0x2879FC42L, 0x29BB3A22L, + 0x62AE8B5DL, 0xC561999BL, 0x98D278B1L, 0x0373DDA7L, + 0x3CED65D5L, 0x4540C197L, 0x8AE57D79L, 0x24F37705L, + 0x54E2BF0CL, 0xCAF2D2C8L, 0xAB85D018L, 0xBBD96449L, + 0xB36A13B9L, 0x3C44EB0AL, 0xD820C26BL, 0xF90B784DL, + 0xAB672603L, 0xD532CF15L, 0x7FFB6686L, 0x7BE27118L, + 0x793DDA02L, 0xE73107DDL, 0x2632F764L, 0x6FBE7A13L, + 0x65982C19L, 0xAFF729A3L, 0x69B5BBF7L, 0x2864B0FAL, + 0x8AED80D3L, 0x0AEB3597L, 0x13689958L, 0x80B40D77L, + 0x3D9641A8L, 0xF24E7E40L, 0xB9E7A890L, 0xDC02983DL, + 0xD9050DA9L, 0xFB874500L, 0xB2C64291L, 0xDC12F8F5L, + 0x128A5CD2L, 0x527F82D3L, 0xCD7C1081L, 0xC5EBDB5FL, + 0xF968BDD0L, 0xF3E427A3L, 0xBCF76022L, 0xA94CA0BBL, + 0x28884495L, 0x8214C39CL, 0x6851B166L, 0xEBA17650L, + 0x95729279L, 0xCE1666C5L, 0x6A57605DL, 0x1BD16C4BL, + 0x59EF9ECCL, 0xE7C09A6AL, 0x24673702L, 0x0E7CE01EL, + 0x3636E13AL, 0x40F429BAL, 0x9FBA277EL, 0x9AE49DD0L, + 0x300E6BABL, 0x201ADB58L, 0xC029E2D9L, 0xE5C74ED7L, + 0x5C143553L, 0x8E747F2CL, 0x159043C5L, 0x379614D4L, + 0x9075D06FL, 0x585C1BC2L, 0xE9D22CC1L, 0x0914AEC0L, + 0xB3B46C73L, 0xC96D2F00L, 0xB14BB0D9L, 0x46A5C5B6L, + 0x0E3516F4L, 0xEB9AB01EL, 0x5C04E434L, 0x284AAFB4L, + 0x1BCAF462L, 0xF1A5542AL, 0xBBD03E4AL, 0x4BDC3DA7L, + 0x6BD0FCC9L, 0x40D21E00L, 0x32E2AEF1L, 0xEF62B668L, + 0x344EA1BAL, 0x46B1BD02L, 0xCAFE4DC6L, 0x15BE27F0L, + 0xBFF5A998L, 0x3B0D9B30L, 0x27CA9A40L, 0x84C597FFL, + 0xD6859FE3L, 0x5D045192L, 0x2A002659L, 0xCC8B3052L, + 0xFAEFE7C2L, 0xEB9F883EL, 0x69772177L, 0x5FA05797L, + 0x69DF2134L, 0xDACC373BL, 0x3C035B9EL, 0x977A58DCL, + 0x84D49E26L, 0x912CFF20L, 0xDFA2D5A6L, 0x0CA8AA62L, + 0x53CC93D9L, 0x3DD8536AL, 0xF40CF797L, 0xC6EF5FA5L, + 0xDDBF6EA2L, 0xFF79AD8BL, 0x9CC8F9B6L, 0x9070482EL, + 0xB6779612L, 0x0A7C86DFL, 0x968E17A3L, 0x28CA9EF1L, + 0x86DB025BL, 0xF2A80541L, 0x2631C384L, 0x5750F7E3L, + 0x78191CBFL, 0x4025BF50L, 0x1E032A2BL, 0xC3B4DE8DL, + 0xAC98A492L, 0xCD90D98FL, 0x92B02F24L, 0xFC462ECFL, + 0x435695A9L, 0xEDECDDA4L, 0x297B6304L, 0xD973A25AL, + 0x65A7991DL, 0x8B727303L, 0xC8F89BD7L, 0xCF18B1D7L, + 0x60A234FFL, 0x13E68F78L, 0xF919D31AL, 0x5249D0A5L, + 0x117B11AAL, 0xEF6D0783L, 0x2128D583L, 0xA7A24FEAL, + 0xD9C379ECL, 0x86A4C5ADL, 0xF3CDAA1CL, 0x04A8A51FL, + 0xE19C74E7L, 0x578622A0L, 0xFD70277DL, 0xEDD3226AL, + 0x503434D8L, 0x31A8EBB5L, 0x9122632EL, 0x7EF237DAL, + 0xA59DEF47L, 0xDD87BA93L, 0x7965AB65L, 0x26790F7CL, + 0xDFDF407BL, 0xAF80CDF0L, 0xA9E55C4FL, 0x54B77138L, + 0x39B26324L, 0xBE3FD4CDL, 0xDEB06C51L, 0xEEB11B71L, + 0x90B974D4L, 0xE125702EL, 0x9F6E26EAL, 0x6E4574E1L, + 0x0ABC33CAL, 0x3F51A4B0L, 0x225E548AL, 0x7D275103L, + 0x3849134BL, 0xE32DC3B0L, 0x08297936L, 0x788C457BL, + 0x17F9219EL, 0xE7E6FE7DL, 0xD79DB0B0L, 0xD3F8FEF0L, + 0x8B0D4DBFL, 0x210883B0L, 0xEACAC580L, 0xAEC1E03EL, + 0xF2A7678AL, 0x76457B5BL, 0xB518F841L, 0x31E3B067L, + 0x4E972C3BL, 0x19E5A9BCL, 0xB7438C21L, 0x4C5B5F28L, + 0xFBB2E5BDL, 0x7734BB35L, 0x705A9013L, 0xD132FAC5L, + 0x99F8BC98L, 0x8E6B0A9DL, 0xB287744FL, 0x4CBC0613L, + 0xF094CEB8L, 0xF93137B0L, 0x9242EE26L, 0xC25D9AEBL, + 0xD517C2F2L, 0xEC2F7F38L, 0xE18380AFL, 0x22C2678AL, + }, { + 0xDE0A562AL, 0x596C7989L, 0x2E99CBDEL, 0x5CC946AFL, + 0x2DA232BFL, 0x64145592L, 0x7885E518L, 0x85B53628L, + 0xFB83003EL, 0x5F643977L, 0x193D31BFL, 0x0FDB8849L, + 0x2BA77CF5L, 0x86D0A1A5L, 0x48803977L, 0xB670B7DDL, + 0x2924E754L, 0x333CAA9FL, 0x994FF797L, 0x9858B8BEL, + 0x22BFD9ADL, 0x1A51D7DCL, 0x372CD282L, 0xB38A5CA4L, + 0xB0B6858DL, 0x4F5CAD72L, 0x3C0DC2D6L, 0xEB090786L, + 0xC45E17FCL, 0xF0C37D9CL, 0x8315CA42L, 0x336E14D8L, + 0xE4DA980CL, 0x14EEBD73L, 0xA82E556CL, 0x4ABA084AL, + 0x9EEC5155L, 0x0CA47152L, 0x03BE2A25L, 0x874F8618L, + 0xC3C31219L, 0x8554B382L, 0x26FFF693L, 0xD9FE05D6L, + 0xC69BB513L, 0xC547ED34L, 0x44F66E01L, 0x58B32FD0L, + 0xF9F7FA8AL, 0xFEF4A493L, 0x2999E20BL, 0x6D23743FL, + 0x97E2A9DCL, 0x1916908AL, 0x905CBF0DL, 0xE0290BDBL, + 0xC06B65EFL, 0xE5A45154L, 0x45ABB6ECL, 0xDD329C85L, + 0xEDF93835L, 0xE5D485D5L, 0x248B2CD5L, 0x60CC627BL, + 0x2B3224F1L, 0xD7DFA43DL, 0xD5D6DA9AL, 0x7A3F9A29L, + 0x26605F98L, 0x435FB927L, 0xED9A7CD7L, 0x6020C2EFL, + 0x43AC15D0L, 0x05FE8353L, 0x74AF1FB8L, 0xADFDC949L, + 0x3BA09A14L, 0x2BC91C0DL, 0x7D681AD5L, 0xA08CA21CL, + 0x208C85ADL, 0x0F3DE514L, 0xB4C87BE1L, 0x455233DCL, + 0xFF35FDF1L, 0xCE93E7E9L, 0x409BA175L, 0x817C4198L, + 0x749B8E5AL, 0xBA599286L, 0x44E40068L, 0x7FA013C6L, + 0x9D62E731L, 0x453F48E4L, 0x375CADBEL, 0xC3D661D5L, + 0xA96A5BF9L, 0x9D2B321AL, 0x0A144AFBL, 0x01590B67L, + 0x9887312FL, 0x7592FB46L, 0x99AC6DD8L, 0xAA347510L, + 0x0F3DC8A9L, 0x9BE58B17L, 0x49C674FCL, 0x3D1F5303L, + 0x138E2052L, 0x1B7CA3EBL, 0xB3C8BE68L, 0xB5C6CB1DL, + 0xBA62EA1CL, 0x269241DBL, 0xA0EE1AB3L, 0x8EB3E79CL, + 0x94EA0E9FL, 0xB86FFB54L, 0x56DCBF7FL, 0x3404FD03L, + 0x8076B757L, 0xB05A9529L, 0x8CC7B224L, 0x4F29804CL, + 0x6CD2C621L, 0x99424188L, 0xF89E7F5DL, 0xFDF62C52L, + 0x94D264B1L, 0x9AE26508L, 0xE7C1DF25L, 0xFCE03375L, + 0x4111F745L, 0x46978B8AL, 0x6D3DEBE0L, 0xA8C9A4A1L, + 0xBF9ADEE2L, 0x651A9A66L, 0x37EBEFEDL, 0x6BAC6274L, + 0xED007BFAL, 0x8B00DB5DL, 0x8EB88E4FL, 0x7247626BL, + 0xC70E0D71L, 0xB06D9EC3L, 0x777CBB67L, 0x9812CC56L, + 0x12ACE7D0L, 0xEE395981L, 0xFE39A6EFL, 0xC1F592CDL, + 0xB8C0866DL, 0xC0D8526EL, 0xC6AA7A35L, 0x91113015L, + 0x36CC0A0DL, 0xD1E8DBA0L, 0x074756C8L, 0xFC272600L, + 0x6C33093EL, 0x44D5C245L, 0xCA27B4C7L, 0x5A794CFAL, + 0x459D3DD0L, 0x0F7D4917L, 0x139A3245L, 0x9B2E5E3CL, + 0x31018582L, 0x759B9D72L, 0x8BDD1D9BL, 0xA16CB7FCL, + 0x3BBE42B1L, 0x87E40683L, 0x9BE04779L, 0xE9DDE72BL, + 0x0BE9A89AL, 0x1CB85941L, 0x96134FD9L, 0xFB347B02L, + 0xD908504AL, 0x71F33096L, 0x705269F0L, 0x3EF468FDL, + 0xC97983DAL, 0x71277190L, 0x8C2B030FL, 0x8CAE4554L, + 0x2E643F45L, 0xE16A9CE9L, 0x2C06928EL, 0xC7E0F46AL, + 0xBDDCEB74L, 0x74985EDBL, 0xBC223E1DL, 0x7F8F5B2AL, + 0x1EBFAFBCL, 0x3B60AE99L, 0x63083D95L, 0x2905083CL, + 0xF926F42EL, 0xD5389D31L, 0x6CA90A33L, 0xE1158CAAL, + 0x352434A4L, 0xB45FD6B1L, 0x17389418L, 0x70D400F6L, + 0x9127D3E0L, 0xA8EB8D18L, 0x39020FBEL, 0x417AB2E5L, + 0xA5E92B88L, 0x5F36AEFCL, 0x4057731CL, 0xD1E966F7L, + 0x0DA44875L, 0x3BE7D0DBL, 0x1C7850CDL, 0xE3B1462EL, + 0xF9AFEFF6L, 0x210E1CCEL, 0x36FBB8AEL, 0x8584030DL, + 0x2DD9731AL, 0x9554A44BL, 0x2C6F8100L, 0x983A1BE5L, + 0x25FAF22DL, 0x338316A7L, 0x0E5A690DL, 0xE702EBEBL, + 0x52AC420EL, 0xEAC503EFL, 0xD2FE1B98L, 0xE1D55B98L, + 0xD7DD5C6EL, 0xE756FFF0L, 0xD3FD66EBL, 0x1FD30A11L, + 0x03E18282L, 0x856F2216L, 0x6917F24CL, 0x12975941L, + 0xD98387CAL, 0x2B9E153FL, 0xFD7005E0L, 0x05A501F2L, + 0xA731DB07L, 0xBF268F18L, 0x47E9E9C2L, 0x442148F8L, + 0x1CCF6FACL, 0x239820BEL, 0x56C0EC64L, 0xC6C59DF1L, },{ - 0xA1ED8646L, 0x78B0F130L, 0xB80E4F6DL, 0xB3F25B0DL, - 0xA1AF13EEL, 0xFB71D142L, 0xED6CC1D8L, 0x4EAE4AFFL, - 0x5C31D7AAL, 0x04DE3FBBL, 0x8D29E45DL, 0x8148FC65L, - 0x6BAACD11L, 0x615D39AEL, 0x87655C9FL, 0x226F4F08L, - 0x232A7047L, 0x7287D274L, 0xF078C150L, 0xBCD9C5B5L, - 0xE2F4010AL, 0x000D95AFL, 0x2A9FDA25L, 0xB4CE09D8L, - 0x1FAFF986L, 0x3276A088L, 0x65DF02B1L, 0xF9B75FE7L, - 0x58145A9EL, 0xE2F93A2CL, 0xDD170A40L, 0xE6088DC2L, - 0xD6766114L, 0x88D8995EL, 0x429AFEEAL, 0xFEB7E26CL, - 0x4C41D510L, 0x4B1509B2L, 0x5445A40FL, 0x26B14A90L, - 0xF3D465D4L, 0x20F710ACL, 0xC80BBFE8L, 0xBA9C1ABCL, - 0xF807EF33L, 0xFF107E9EL, 0xC171F48EL, 0x2AC2EE26L, - 0x8E68407AL, 0x01DC082FL, 0xCBC10314L, 0x1F193C51L, - 0xDDFF57FFL, 0x84494A20L, 0x02C89B2BL, 0xCC8B55C4L, - 0xF2E568A1L, 0xC52F326BL, 0xFD4827D5L, 0x6C3F05E5L, - 0xA3E5B47DL, 0x6A2DA767L, 0x832A6751L, 0x055985DFL, - 0x27D5A6CDL, 0xEEB25748L, 0xE60EAECEL, 0x5BEA030FL, - 0x1E36551AL, 0xE18AB6E8L, 0xCAE0C750L, 0x06A76E82L, - 0xCC562165L, 0xD45F5C2BL, 0x7F16470CL, 0xA8D495F5L, - 0xEA204FC7L, 0x3E9F4AC3L, 0xF408527FL, 0x9C2464D2L, - 0x2322FF71L, 0x0C629EE9L, 0x72FBE895L, 0x622638DAL, - 0xE5737C33L, 0x0E5A0207L, 0x1CB77EC7L, 0xEF12CDCAL, - 0x3D6A066CL, 0x1FD05DDDL, 0x16654480L, 0xE98719B2L, - 0x8CB9129FL, 0xAD2C07E4L, 0xA7E0D2DAL, 0x95AD3088L, - 0x770BE826L, 0x33353308L, 0xDB053D32L, 0xFBEEA722L, - 0xA0FBD4C3L, 0xCD57A408L, 0xAA1BBCABL, 0x013D007DL, - 0x25288D7BL, 0x5D45778AL, 0x904C200BL, 0x6CC8B50DL, - 0x03E0996DL, 0x1ECF9F23L, 0x446B1877L, 0x716FE26CL, - 0x0663DF9EL, 0x5AFB6E28L, 0x2715440BL, 0x42488497L, - 0xBF39BE28L, 0x4B227B91L, 0x02573AC5L, 0x0114691FL, - 0x96148EE7L, 0x762D908DL, 0xAEBE6962L, 0x534755F5L, - 0xFD0E05D7L, 0x050F9096L, 0x56F2F735L, 0xC773AF72L, - 0x9BAEFDEEL, 0x4FD21579L, 0x9673784AL, 0x3A7C8E5BL, - 0xF8255977L, 0xC6735487L, 0x9FDD06F2L, 0xF5E93C50L, - 0x745E3507L, 0xC4498EF9L, 0x5F590D15L, 0xB112137BL, - 0xC1BA3760L, 0x6BC2F1E3L, 0xCE91D9A8L, 0xFB586E03L, - 0x2915F799L, 0x81026163L, 0x1B4A8994L, 0xF25FF806L, - 0x3183173BL, 0xD217BA20L, 0x7F0D4F8DL, 0x95002D07L, - 0x5B8BC8DFL, 0x1FE178EBL, 0x27FAA511L, 0x60FCABA7L, - 0x21B9C00CL, 0x615E4AB3L, 0x94D6179CL, 0xED295168L, - 0x2DD86730L, 0xF1C2EE31L, 0xC9540C67L, 0xA5615927L, - 0xC4CC60E1L, 0xF67AEE70L, 0x34931ADCL, 0xDA931D9EL, - 0xB2A5B2BEL, 0x3DDAF5E6L, 0xCD95D8D2L, 0x11246601L, - 0x7095EC8AL, 0x7D88B394L, 0xD753A26BL, 0x19B4623BL, - 0x84FEE91FL, 0x1DF96B85L, 0x5B95035CL, 0xE2E7C21FL, - 0xD8D6C558L, 0x01A7D03AL, 0xFBCE3DA8L, 0x674E7949L, - 0xE4E96BDFL, 0x7AF510D4L, 0x826B49F1L, 0x772AEC6FL, - 0x1F82EF58L, 0xF42CC2FBL, 0x4B2FB5A4L, 0x71B410DFL, - 0x0D8BB5BAL, 0x73BB0DABL, 0xEC4A1DD8L, 0xD4414C41L, - 0x9CDAF740L, 0x9ADE7B33L, 0x305838A8L, 0xB3F26A28L, - 0xEC562623L, 0x167CFC51L, 0x0FCAA250L, 0x041D6B62L, - 0x62985581L, 0x4B3221FCL, 0x9883BD0AL, 0x8390FB46L, - 0x0F0EAD1AL, 0xB7616F50L, 0xA06DFC58L, 0xFC7556FDL, - 0x8CED7720L, 0xFA64F6A3L, 0x34A2DD7DL, 0x1EE5850CL, - 0xFD381171L, 0x6D7360CEL, 0x7E514232L, 0x0B4D50C5L, - 0x46526E7CL, 0x86B62C41L, 0xB2CCB005L, 0xE9311084L, - 0x870725C6L, 0x9B9DFEA5L, 0xDCE6D317L, 0xB0CA67DFL, - 0xF1D69CF0L, 0xD0C6AE15L, 0xB3B54912L, 0xF42DF9E7L, - 0x3B8D6173L, 0x6179EBADL, 0xD3B3888DL, 0x4F626FE0L, - 0x1CC8DD99L, 0x02277661L, 0xBA6C2685L, 0xAF4BC7A7L, - 0xEA71D285L, 0x152E2B03L, 0xCCD6AD79L, 0xE917EF56L, - 0xA497FD72L, 0x2C3C919CL, 0x6323E338L, 0x0A2022C9L, - 0x3ECED49DL, 0xE53B92AFL, 0xFACA03C8L, 0xA0DF19B3L, - 0xE62C51BDL, 0x794D9BE6L, 0xF216CFF6L, 0xAA5199AAL, + 0x1D985BEEL, 0x336930D2L, 0xCA40E672L, 0x7036E21CL, + 0x7B43BD3CL, 0xA02DBD7DL, 0x7DFA1A92L, 0xB13508C5L, + 0x01633D3CL, 0x6CBD1AA5L, 0xCDC61031L, 0x15993E15L, + 0x669E1B6FL, 0x78B79587L, 0x61D58836L, 0x888D5578L, + 0x8B99F671L, 0x346906B6L, 0x5EA37C50L, 0xC32C7220L, + 0xAA6101DEL, 0xAF0CD647L, 0x9840E7DFL, 0xBC4EB801L, + 0x071126BAL, 0xCD6D71A4L, 0x0CDA5F16L, 0x7838C18CL, + 0x8F1641CBL, 0x7DF307E3L, 0xB83E78D1L, 0x24E91D07L, + 0x0F5BB3BCL, 0x172BDFFBL, 0xD24AA952L, 0x41CF15C3L, + 0x78A696A5L, 0x15CD0C0AL, 0xD24D916DL, 0xA2CF942CL, + 0xA1EC1AAAL, 0x0B48FCE0L, 0xE1779859L, 0x99F8806AL, + 0x34333D69L, 0xABBA62D0L, 0xF6E91D76L, 0x0B0D5FDAL, + 0x5A467847L, 0x74DA0A4DL, 0x0335F980L, 0xE7C55B44L, + 0x6DD5E917L, 0xC7305285L, 0xCF1D07C6L, 0x8D017ECBL, + 0xE10A16C1L, 0x0DB9438CL, 0x2FA12B58L, 0x332FA54DL, + 0x02BD7743L, 0x4B544614L, 0x7907B6AEL, 0x75401EBAL, + 0xF7382064L, 0xF1325592L, 0x06FB5C05L, 0x9F5FEF1FL, + 0x3A641771L, 0x807BF700L, 0xC63EDF23L, 0x9FFD35E9L, + 0x437A410EL, 0x225D18FBL, 0xAD901352L, 0x9D2F8585L, + 0xEA317135L, 0xCB724C48L, 0xCA568A14L, 0xB153340AL, + 0x88794F5FL, 0x0C208094L, 0x85BE94E6L, 0x86C5F48AL, + 0xFC4AC759L, 0xFCCEA783L, 0x491AF14BL, 0x23C9622CL, + 0x85660BAFL, 0x110300CBL, 0xDE2D8E21L, 0xBAD7D22BL, + 0x3649D2A8L, 0x64439BF3L, 0xFDD7F2ADL, 0x68129C07L, + 0x3D03801DL, 0xE2D3B28CL, 0xA94193D2L, 0xEE2C34F0L, + 0x457DCDF1L, 0x4E21BC94L, 0x8F557C82L, 0x13EE8AB5L, + 0x0B2A8EC9L, 0x7796592BL, 0x5D9E3346L, 0x3621C85FL, + 0x1EB7FF52L, 0xCCDF71D8L, 0x538DD6AEL, 0x748274A9L, + 0x6552081CL, 0xFA61EE48L, 0xFB2A7098L, 0xA02BA33FL, + 0xB145EA01L, 0xE4C5DEC9L, 0x9E2BF9B1L, 0x6413006DL, + 0x8F7C7501L, 0x9B51E842L, 0x5ADD5755L, 0x06CAF452L, + 0x80050406L, 0xCB961521L, 0xEFC54E27L, 0x420EE737L, + 0xADB18EAEL, 0xF8B0B2FBL, 0xC8CDC88FL, 0x3A026D91L, + 0x5F99BB22L, 0x391C12F8L, 0xBDF1CEE6L, 0xFEBE0726L, + 0x6CC79280L, 0x3F7AC7F2L, 0x3B92345CL, 0x5C7BB986L, + 0xC60C12D7L, 0x4F29C1FAL, 0x04276434L, 0xC1272CD2L, + 0x5E64BC58L, 0xD473D8F8L, 0x38E9D502L, 0x5C00EE4EL, + 0x80A1A552L, 0xD49CD6D2L, 0xEA96CBE7L, 0x029E2A86L, + 0x0D04BA72L, 0xE9B0389DL, 0x4AC913EBL, 0x85927E61L, + 0x134A0D51L, 0xE63AFF82L, 0x5D7C3FEEL, 0x9373DA83L, + 0x361324B4L, 0x18569865L, 0x7EAC6BD8L, 0x945CA42CL, + 0x6A1FD8B8L, 0x6C9D06F7L, 0x01D4072FL, 0xAED3BEA5L, + 0x9C7BADA7L, 0x740C8802L, 0xAD1D6843L, 0xB84145EBL, + 0x2804CAEBL, 0x31EB19FBL, 0x402E5195L, 0x05451516L, + 0xF9770FC4L, 0x547FA291L, 0xF9B980EAL, 0xD6DC914DL, + 0x8A009CDFL, 0xFDFEDDADL, 0xEBAC5EF5L, 0x575B2AD2L, + 0x67A8655FL, 0x54590146L, 0x21FA9A1FL, 0xB8CD9B23L, + 0x1D313DFFL, 0xC5D15FFFL, 0xB6734243L, 0xD1B44EFFL, + 0xEE6DFF7EL, 0x0A6DB2BCL, 0x2A2AE34EL, 0x596782E6L, + 0x1DF3E26BL, 0xCE3EA01AL, 0x3CCBBEEFL, 0xD4B8AF1FL, + 0x555D5325L, 0x78F81205L, 0x528EFD8CL, 0x01F3D29FL, + 0xAD12326CL, 0x816D4F2EL, 0x6DD2FFE9L, 0x03C4EE90L, + 0xE9E561B6L, 0x28237064L, 0x82143F5FL, 0xEED4AA29L, + 0x9E63A1C6L, 0xB25E2AEAL, 0x516B9A8AL, 0xB52B4B71L, + 0xDDEF7CFFL, 0x6A8FFBDDL, 0x877EC0E5L, 0x72AF36D8L, + 0xF9EC2EC3L, 0xBD89E9AFL, 0x0A2FC438L, 0xD0E8BEE7L, + 0xD8979CF1L, 0x0AF071BEL, 0x0BC600C9L, 0x7E1F6318L, + 0xBFF4BF36L, 0x01DF67EEL, 0x6B35580BL, 0x2A3487ABL, + 0x1694328EL, 0x68358F88L, 0x23C60980L, 0xBE312A5BL, + 0x444E80C9L, 0x7ECE3A97L, 0xC3CE446CL, 0x5269084CL, + 0xC611CCE5L, 0xA156FBADL, 0xA2331EC8L, 0x1065EA4BL, + 0xA59F0F71L, 0xE46F2C17L, 0x2E2247DCL, 0xB5EBAA6FL, + 0xD8DE0349L, 0x0EA6F1B3L, 0x465FB0A0L, 0x0CE5A14CL, + 0x6A10A909L, 0xBCB590D3L, 0x8FA66C30L, 0xD1FCB44DL, },{ - 0x3E5AA0D2L, 0xF96F565AL, 0x064BC237L, 0x2830A191L, - 0xAFFB6585L, 0x6A51E367L, 0xDB3EF2CEL, 0x12A17DE6L, - 0x80ACC70FL, 0xE2D77575L, 0x7F88930FL, 0xEEC1DBBDL, - 0x2C15DFB2L, 0xCCBD0F94L, 0xF01B5F96L, 0xEC7E7426L, - 0xB6C6DF58L, 0x4FE08F4BL, 0xFFB86D7DL, 0x3BBDD4C4L, - 0xFC6F23D2L, 0x0BD775C8L, 0x5E3DD3CCL, 0x2BAC2395L, - 0xB9BD4BA1L, 0x30BD0740L, 0x0E58E7B6L, 0x6C094B5CL, - 0xCE85A2CFL, 0x951BD527L, 0x610AE7E6L, 0x6D86F9BBL, - 0x696BB5F3L, 0x674C8334L, 0xCE79ACC5L, 0xE2E54B67L, - 0xC0DE1898L, 0xAD0828DBL, 0x438192C5L, 0xC3656E96L, - 0xA355D723L, 0xB75002F4L, 0xD4888A0FL, 0xBD8B83D6L, - 0x730918E2L, 0xD2D05B7EL, 0x170624B9L, 0x297B861CL, - 0xE1F25E81L, 0x8ACCC690L, 0xECAFF183L, 0xDBFF3F92L, - 0xEC22E420L, 0x0DD6C55CL, 0xA9B6B7BBL, 0x04899DE1L, - 0xF959D8D6L, 0xF74AC6D2L, 0xDF676B4CL, 0xB985D5EEL, - 0x18990A77L, 0x86606AC5L, 0xFD5A8957L, 0x0680250BL, - 0x41356702L, 0x5F3FDDA3L, 0x2BB36DB9L, 0xCA062524L, - 0x6BCC3124L, 0x782FB20EL, 0x8A1A2732L, 0x2955EE9AL, - 0xAFAE9471L, 0x6C53772FL, 0x896B0EACL, 0x0EAB16A1L, - 0x0C9F8C5BL, 0xC748E075L, 0xF35A1A15L, 0xF9020B17L, - 0xAC725870L, 0x170D5AC5L, 0x83CE7896L, 0xE2770702L, - 0x687B4649L, 0x23546539L, 0x4938AA52L, 0x32EDFD40L, - 0xEF1D620CL, 0x4A5A8820L, 0x59F3BC4FL, 0x6D38E7C3L, - 0xFF119588L, 0x1A08B636L, 0x7237B812L, 0x2609D6C1L, - 0x109472B1L, 0x532E58EAL, 0x98673821L, 0x26B1CA99L, - 0x629C045AL, 0x2C5FD013L, 0xD05CF784L, 0x8F46DB43L, - 0x68B7E93DL, 0x7A27CBD9L, 0xA10B75CAL, 0x20008840L, - 0x12E62425L, 0x1D4CD600L, 0x89BBF2E0L, 0x6BA62E06L, - 0x19732774L, 0x3B0E85ECL, 0x7388BB95L, 0x641F1A5DL, - 0xF8FFCE8EL, 0x35E0D842L, 0xDC3C21D0L, 0x91422DDBL, - 0x6AB513BCL, 0x4D1892D8L, 0xB53BB759L, 0x23425BF1L, - 0x605FD0E5L, 0xBF2F5BEEL, 0x8A05A13EL, 0x7222CE88L, - 0x20940E3BL, 0xABC87F9DL, 0x550E24F5L, 0x8313E1D2L, - 0x11BE3DC1L, 0x7EB6F965L, 0x7C47B1F7L, 0xFCDC0754L, - 0xB2017D7BL, 0x25E22B97L, 0x8719F66FL, 0x34B61812L, - 0x9A8A7692L, 0xC95DD310L, 0x9E190BFFL, 0x4CD4C251L, - 0x9C1EB6EDL, 0x5E3192FCL, 0xFA3ED1E8L, 0x0902229BL, - 0xCC268599L, 0xF980272BL, 0x9D553D7EL, 0x1A8214E8L, - 0x3AB98766L, 0xE9E10BECL, 0xB3292413L, 0x19703684L, - 0xA8140260L, 0x25607509L, 0x7AB4E61BL, 0xA94BC1C8L, - 0x7B2D5121L, 0x0D88D70BL, 0x5BC32663L, 0xA7460604L, - 0x92434D63L, 0xC24C3F63L, 0xC9A266DFL, 0xF7223A28L, - 0x51EB733DL, 0x9AB11960L, 0x8D9A8C0CL, 0x6C7E447FL, - 0x1670F2F1L, 0x361E64D7L, 0x4E3D881EL, 0x2FE9E812L, - 0xF65E5C7BL, 0x4673ABF7L, 0xC9C68A51L, 0x711DD24AL, - 0xC6E0BE5EL, 0x646E5DC8L, 0xFD62FCE4L, 0x59A70E4AL, - 0xB78295A9L, 0x6CFC4D09L, 0xFDDF41D9L, 0xCAD9CB46L, - 0xED7E3A82L, 0xCC8397A0L, 0x00F02E2EL, 0xBB8BB1AEL, - 0xB040785DL, 0x7B14FBF1L, 0x315BB31CL, 0x6F877F42L, - 0x7A7A7183L, 0x59FBEA58L, 0x8D20F0BDL, 0x8FD197FDL, - 0x5D546F76L, 0xEE4EB057L, 0xE39F6B57L, 0x37A024B9L, - 0x173BBC5FL, 0x87EA8A22L, 0xB9A1C2D6L, 0x8ED44DECL, - 0xC7EADA8AL, 0x9826C929L, 0xE64931E9L, 0xC82801B2L, - 0xCEA9ACFBL, 0xDA2794CCL, 0xEB1C7B8EL, 0x089C36C5L, - 0xAFF20D63L, 0x032CD6CFL, 0x92B2F7D8L, 0xC6E42489L, - 0x08E0C40BL, 0x5ADC848AL, 0xBE4E086FL, 0x1AE7F83DL, - 0xA9F60F15L, 0x18B42CF4L, 0xEB99DC92L, 0xD09EEE99L, - 0x882DF495L, 0xB74CA126L, 0xC2C820DBL, 0x52376742L, - 0x740DEAE3L, 0xF2161725L, 0x99C20F21L, 0x36A14E35L, - 0xD534F963L, 0xEBF3937EL, 0xAD22797DL, 0xFA6C6B3BL, - 0x67BAD23FL, 0x38970AA6L, 0xE0B96D89L, 0x8631EF0BL, - 0xF03B322EL, 0xB862966CL, 0x144A396BL, 0x1A3596C1L, - 0x51C09C59L, 0xC727B69EL, 0x08A35938L, 0xFE775D68L, - 0xF8895727L, 0xBB2406AFL, 0x0002D523L, 0x114F3521L, - },{ - 0xFCE0BA62L, 0x9B580728L, 0x4F06FAD8L, 0x555A12D4L, - 0x3E5AE7C3L, 0x1C5AB0ADL, 0x40178012L, 0xF97BE132L, - 0xF9B812A9L, 0xCD6130B0L, 0xCEA6DB01L, 0x971C027EL, - 0x10E9FBEBL, 0xB03CE073L, 0x6C055C20L, 0x4A66F807L, - 0x6291922AL, 0x963ABEDAL, 0x5FB257B1L, 0x98B9F263L, - 0xC738F134L, 0xEFFA1C2AL, 0x474E545BL, 0x444CB3B0L, - 0x0862DC34L, 0x6139AD94L, 0x460E3C6FL, 0xB7B67E78L, - 0x9C0009E0L, 0x3279C1B7L, 0xF3B41E35L, 0xF3CCB7C2L, - 0xB2AFB6C8L, 0x433D7759L, 0xC59D628FL, 0xF758FC32L, - 0x0B1958D0L, 0xC5CB3696L, 0x762C9D08L, 0x8DCA2135L, - 0x5C9D8146L, 0x9857DEA0L, 0xF845D21EL, 0x4B4A6137L, - 0x703E9861L, 0x27E16DEAL, 0xCD4353B3L, 0x1C5F8A22L, - 0x087A6C54L, 0x02097452L, 0x6129E803L, 0x13FA9CB8L, - 0x10323CBDL, 0xAF282A80L, 0x4C362D15L, 0x73A06D5CL, - 0x3A016509L, 0x65576942L, 0xD05FF2D6L, 0xD56E287AL, - 0x3F1D2104L, 0x2220DBCFL, 0x1A8C1898L, 0xB0732BF5L, - 0x87481E45L, 0xAAD604A9L, 0x31F4A6B7L, 0x9A769BBCL, - 0xB4EAC9D8L, 0xFF7D0A36L, 0x68EB7E5EL, 0xFF61448CL, - 0xA3D67379L, 0x4B36FA6CL, 0x220EA259L, 0x70344744L, - 0x41B18739L, 0x4D1D613EL, 0x64DE7065L, 0x726386F0L, - 0xDB9E34A0L, 0xC4A48D66L, 0xECAA7940L, 0x9CB2B38DL, - 0x1C51D989L, 0x9D9D47C7L, 0x51A92095L, 0x940DA179L, - 0xE2A2B9E2L, 0x05ADE31AL, 0xEE6B7C6DL, 0xF7B95A8FL, - 0x7DE793F0L, 0x32030AAAL, 0x353E0AD8L, 0xABDEB660L, - 0xC08E3257L, 0x9C434B65L, 0xE0BE2547L, 0x6AD549BFL, - 0x78B33263L, 0x576AD11CL, 0x7B59868CL, 0xC14C15FDL, - 0xABCAF02FL, 0xDF9062C8L, 0x864FAB21L, 0x661DFDBDL, - 0xAF3ED0A1L, 0xDBF4788AL, 0x572E40B7L, 0x0125B278L, - 0xB38CE858L, 0x7B3E4F56L, 0x3DA41EF9L, 0x7FA73018L, - 0x42097E40L, 0x23E2372BL, 0x66BDD881L, 0x566E3049L, - 0x6D0BA8C6L, 0x82ABC0A9L, 0xEA0F3332L, 0x91867254L, - 0xE122E5A3L, 0x6721E2F4L, 0xB58AF103L, 0xC83F6ABBL, - 0x5AC34206L, 0x677A5C26L, 0xEA19BAEFL, 0xDFA6DFB1L, - 0x11E0B3DFL, 0xD8238967L, 0x22AB2A52L, 0xAD800D8BL, - 0x7EFF0B14L, 0xBA38161FL, 0x0464AFB0L, 0x9137F1CAL, - 0x8B1778BBL, 0x937367E5L, 0x69C65AC1L, 0xCD0ACEACL, - 0xEAF76E7DL, 0xEF1596A4L, 0x0BA74934L, 0x23157AE4L, - 0xB7A151A0L, 0x39333E4CL, 0xE016BA38L, 0x9AFC2062L, - 0x4EE00DF0L, 0x60852091L, 0x32165EBFL, 0xC33DA8FEL, - 0xC5C89B6FL, 0xE28312F6L, 0x5EDF8D22L, 0x45F821A0L, - 0xF62FFED8L, 0xD1E7494EL, 0x85E8132CL, 0xB137DC87L, - 0x6800BF67L, 0xD648B744L, 0x30A6FA8BL, 0x4392C76AL, - 0xC41FB333L, 0x717E4103L, 0xD2A01FB3L, 0xF5572AFBL, - 0x2BB6E1FEL, 0xC5830CB9L, 0x0E4AA1B4L, 0xE27B1223L, - 0x01A28090L, 0x21674712L, 0xE65378FCL, 0x76B04D74L, - 0xB30885BFL, 0xC1894800L, 0x399428EEL, 0x976BA25DL, - 0x2ABD29E6L, 0xD3189CADL, 0xF6D2D0F6L, 0x55A17317L, - 0xAF1E8DF2L, 0xECBA699FL, 0xC9A6F1EEL, 0x662F5B28L, - 0xF16261CEL, 0x77411859L, 0x5018AA12L, 0xFABEFBF5L, - 0xD5DEF730L, 0x9979BE47L, 0x43354449L, 0xC4C699EFL, - 0x8F1556C9L, 0xFEEB944EL, 0xC73D9B33L, 0x85CEF02DL, - 0xEE8215C0L, 0x920E5437L, 0x60C8C2C2L, 0x5EAA9EB3L, - 0xF03605A5L, 0x8B607885L, 0x021894CCL, 0x2E855034L, - 0xED8A21DEL, 0xB4025DD3L, 0x5B6D2326L, 0xBE953409L, - 0xE78C2FD0L, 0xC9D04C2FL, 0xCDE0ED2DL, 0x3CA468B4L, - 0xF21E9A54L, 0x16C486C9L, 0x6A4B7834L, 0x7DCE3D37L, - 0x79B9B2D6L, 0x8110817AL, 0xBCDA6EBDL, 0xA3FAA681L, - 0x7054A90CL, 0x1144971FL, 0xD5487688L, 0x84D7760EL, - 0x571114FAL, 0x4EE4C565L, 0x1940E6E8L, 0xF7960077L, - 0xC0453E75L, 0x57A2F234L, 0x07BF50DAL, 0x33FD5F36L, - 0x0133C1C1L, 0x340EB759L, 0xA3AC3E07L, 0x7ECEA617L, - 0xE220D43DL, 0x20680396L, 0xEF9A1430L, 0x21C8D51AL, - 0x513A1648L, 0x55A9D9A8L, 0xB32595FFL, 0x81767024L, - 0x57CD5E89L, 0x8C53DB62L, 0x368B41CCL, 0xAF56D83EL, + 0x475CA7E8L, 0x4C51BBC1L, 0xA90763E1L, 0x7BDF2294L, + 0x04D96F34L, 0x11318CB9L, 0x54A65710L, 0x041597BEL, + 0xC49B15C2L, 0x09B9521AL, 0x5589972BL, 0x10167358L, + 0xA3927ED5L, 0x405F7752L, 0x2CBCB573L, 0x37106B2EL, + 0x4CF216A4L, 0x5AB1D0F2L, 0x3ED8CA8EL, 0xA612D957L, + 0xADC5D570L, 0xD45C1E98L, 0x53C28628L, 0xBCF19A34L, + 0x6CA25F5CL, 0x5C5E4FA2L, 0x7C155954L, 0xE99CE5F9L, + 0xD9A180F9L, 0x4F3CF09BL, 0x9DDF75A6L, 0x6D240EE0L, + 0x67973B52L, 0xE13895B4L, 0x36ADE486L, 0x22EC32D2L, + 0x075D6EAEL, 0x29C31053L, 0xAC06EE74L, 0x1A9D3316L, + 0x8A2D0CC3L, 0x57DC77D3L, 0x40B2D07FL, 0xDFA2051AL, + 0xFDC90DFCL, 0x342E9AC5L, 0xB04EB091L, 0x9E1C2D1FL, + 0x075A20A3L, 0xE45FA195L, 0x3F958FE3L, 0x18C98F15L, + 0xC70AE917L, 0x78040F9BL, 0xE4322DEBL, 0x0903841FL, + 0xAE71257EL, 0xA82C7909L, 0xA398504BL, 0x56A9A694L, + 0x7DA7F73BL, 0x12942475L, 0xAAC0C982L, 0xDFD0E53EL, + 0x27CE728BL, 0xE94327CBL, 0xF2EBA423L, 0x72B1476EL, + 0x317756F6L, 0x056654E3L, 0x074C0192L, 0x11B6FF21L, + 0x939FD4C5L, 0xE6E45B55L, 0x66211539L, 0x753C6C46L, + 0x536DB219L, 0x939C3AF0L, 0x9783EE73L, 0xC8978DE8L, + 0xBA0329F6L, 0x3B892181L, 0x4CDA3336L, 0xFD15F1EFL, + 0xAE2B2E61L, 0x2637C83BL, 0x9D9930BFL, 0x72ADFC41L, + 0x48DBFFFFL, 0x448E80F4L, 0xBA1CC3E1L, 0x61CCB37DL, + 0xD3CFEC32L, 0x0E6804A9L, 0x1ECE11A1L, 0x15809783L, + 0x9F7FD813L, 0x64A39648L, 0x9E67CA64L, 0x19B3E4B8L, + 0x8740466AL, 0xEBB79667L, 0x1CE86B36L, 0xC7BCE505L, + 0x2445215DL, 0x54ADCC77L, 0xAB187AC2L, 0x97B82A38L, + 0xA66B2D42L, 0xA3D07412L, 0x4A9CB0F4L, 0x2C51F98CL, + 0xCA7FC25BL, 0x73AEB532L, 0xF45769BBL, 0x8068AEF4L, + 0x48A14C08L, 0x011E7A0BL, 0xD4FEF360L, 0xB572B6ECL, + 0x947692FFL, 0x8EB6BE12L, 0xDEB04AF3L, 0xA9CD494EL, + 0x7C522A9DL, 0x4CC24357L, 0x616E3132L, 0x68073F0DL, + 0x20F7237AL, 0x7EA98584L, 0x3B6BF43CL, 0x29F11571L, + 0x759B5F60L, 0x7D5BCACCL, 0x8C86BC43L, 0xB378EF1BL, + 0xD00EAF88L, 0xBD85FE1AL, 0xB4A42C5DL, 0x2075442DL, + 0x184038CCL, 0xC3D9F6F8L, 0x1D72BAC3L, 0xDD8C41C0L, + 0xD85F7634L, 0xB48A6902L, 0x8BB3F160L, 0x178CCA70L, + 0x4EE8D16EL, 0x5121D6FDL, 0xF2F09DA9L, 0x84B55B38L, + 0x8D081959L, 0x13F21DADL, 0x19BCDA5CL, 0x909A9FDFL, + 0x11AD6731L, 0x2CE9D09FL, 0xAA8E9543L, 0x9F8D5555L, + 0x679FE7C1L, 0x251591CBL, 0xC4187630L, 0x57324F07L, + 0xB2C35182L, 0xBD16E4F0L, 0xC3B3DE3FL, 0xEA6CBA23L, + 0x00C810DBL, 0xBB040931L, 0xE0BA08A6L, 0xDC4AC24BL, + 0xEE1428BBL, 0x964A6F9FL, 0x2096F5DCL, 0x2170A50CL, + 0x3FBCA4BDL, 0x7C321FAAL, 0x88679D5DL, 0x0F5FFFDCL, + 0x88AA1865L, 0xFD51E01AL, 0xA35EF105L, 0x8B99A039L, + 0xD5C22176L, 0xB1A73D55L, 0xA0080F3DL, 0xDBC61A70L, + 0x3FB106E3L, 0xBAEA8E73L, 0x7E34C1B3L, 0x40F3DC19L, + 0xFD9AEEE4L, 0xA3E6A013L, 0xEECF6A5EL, 0xA83012D4L, + 0xDEDF0B25L, 0x7CB1D8C2L, 0x02C4180CL, 0xE38905D8L, + 0x2D631C38L, 0x36612C66L, 0x9845588CL, 0x9510F7FDL, + 0xBCD5C8B1L, 0x55D50272L, 0x9B35118EL, 0xFB7C4E3FL, + 0x2E3BD98FL, 0x56DD4BD7L, 0x4C3B6F27L, 0x0264DDB7L, + 0xBD4A811CL, 0x2A9A4F84L, 0x2292258AL, 0xE7799B02L, + 0xF5B529B2L, 0x894B5D58L, 0xD3392CAAL, 0x515CCAC1L, + 0xB6857B04L, 0xB2CBE5DFL, 0x28B230C2L, 0xE3CE03F5L, + 0x0581D4DFL, 0x3CC0D279L, 0xD0C1EDECL, 0x160B926FL, + 0x32F58056L, 0x9D574911L, 0xED9FB621L, 0xA2D920F7L, + 0xB4BE7EACL, 0x6947D33FL, 0xBB438F92L, 0xDD11B405L, + 0xDEFF0F70L, 0x03B3E6A8L, 0x4BD0A277L, 0xE28FA297L, + 0x7098CAF4L, 0xB74B88E5L, 0xC3330744L, 0x77E7975AL, + 0xB35AC1B1L, 0x3BFEA68CL, 0x84BF6163L, 0x101D5CC0L, + 0xF4558349L, 0x0CF6A28BL, 0xD76AF6B8L, 0xD6A3140DL, + 0x3F37D065L, 0x0E55EA90L, 0xC1A759D1L, 0x70265EABL, }}; #endif /* _CRYPT_KEY_INPUT_H */ diff --git a/libpiano/src/crypt_key_output.h b/libpiano/src/crypt_key_output.h index ec654f2..b8823d5 100644 --- a/libpiano/src/crypt_key_output.h +++ b/libpiano/src/crypt_key_output.h @@ -30,274 +30,274 @@ THE SOFTWARE. const unsigned int out_key_n = 16; -static const uint32_t out_key_p [16 + 2] = { - 0xA8C2B074L, 0x04EBC85BL, 0x014C6C28L, 0x7459BFA9L, - 0x279C0727L, 0xE1CB918EL, 0xA62CD534L, 0xAAC40A16L, - 0x5B8135BDL, 0xA8B52D3BL, 0x666C7F54L, 0x2FE61767L, - 0x25CAB584L, 0x8F84A1C5L, 0x2C8160F3L, 0x9AFFC1A2L, - 0xE9CCA78EL, 0x94660E31L, +static const uint32_t out_key_p[16 + 2] = { + 0x77B1CD94L, 0xDCB48217L, 0x69404CDCL, 0x2C02F724L, + 0x22961551L, 0xB497993BL, 0x5B5EEE8CL, 0xA209AE23L, + 0xE26B1B43L, 0x90F1CE4CL, 0xB86F975AL, 0xF3CB8371L, + 0xDED8E87CL, 0xB2882D4FL, 0x74984776L, 0x361650B2L, + 0x666FB475L, 0x85A10677L, }; -static const uint32_t out_key_s [4][256] = {{ - 0xF6FD36CEL, 0xDEA5D22DL, 0x9E0AC68CL, 0x75F74BA9L, - 0x74284D49L, 0x5DFE096DL, 0x3DAE3A9AL, 0x8D34DFC3L, - 0x5867D829L, 0x2BAEE18BL, 0x49B320D8L, 0xDC2C4717L, - 0x199F9D68L, 0xD20C53CBL, 0xA4EA0E7DL, 0xC3EB485CL, - 0xD39E9820L, 0x9556A9B0L, 0xFDE0D7B6L, 0x373C3B71L, - 0xBF4E19DDL, 0xEA3EF460L, 0x7969CA78L, 0x70C3FBC0L, - 0x26B24C0FL, 0x2540F04BL, 0x95210013L, 0xD0202F2BL, - 0x0BADD392L, 0xB7071246L, 0xF4C98CC0L, 0x3DC9A8B8L, - 0x33464654L, 0x3F5203C2L, 0x5DA4027DL, 0x5FC202ACL, - 0x2C4384C2L, 0x4A6F1F9BL, 0x48137E49L, 0x0695BA36L, - 0xB95C35EBL, 0x0CA663EAL, 0x06B665EFL, 0x0434DEC6L, - 0x042B34D9L, 0xAF4ED3B4L, 0x7EF5B2BFL, 0xC6E08131L, - 0x10B5AF5EL, 0xC19E25E2L, 0x44A2BDDFL, 0xA064A4E7L, - 0x32D69E62L, 0xF040BDA3L, 0x8053CFDEL, 0x28B7909BL, - 0x05944456L, 0xD45F6184L, 0xFFA859C1L, 0x828181D2L, - 0xA4E03A60L, 0x7B3A0858L, 0x52A5CBF1L, 0x1049BDD3L, - 0x36CAD87CL, 0xA5E3FCC7L, 0x3824984DL, 0x046BFAF0L, - 0xD22E4EEFL, 0x02156DAEL, 0x3CF82E35L, 0xD3383EC6L, - 0xB79909C7L, 0x00DFE65CL, 0xA45C63A2L, 0xB571F38EL, - 0x79CFE3FEL, 0x64371D45L, 0xC5B62B8AL, 0xEF73CBE4L, - 0xC6603F28L, 0xE63BB420L, 0x9ECC7027L, 0xFDAC399EL, - 0xA7DEEE1AL, 0x5C9B6B93L, 0xB7C58225L, 0x7DBD4786L, - 0xB911E83AL, 0x9C2D7DBEL, 0xB95CAD1CL, 0x72A496FBL, - 0x75594B0CL, 0x972DE6BEL, 0xD350CA84L, 0x144E413BL, - 0x8DE0DE39L, 0x831D387AL, 0xA198D810L, 0xF0E0D069L, - 0x1A9127C3L, 0xDA0706A1L, 0x01CAC3A7L, 0x1FB05101L, - 0x6B14D8CEL, 0x6203C3F3L, 0x35FAAC06L, 0xD34D77C8L, - 0xD9571C22L, 0x21AE6FEFL, 0xB26157EBL, 0x90767E8CL, - 0xB7A908DEL, 0x8A4AEB7CL, 0x4EF9A3F7L, 0x8FEF6E86L, - 0x1DD098C5L, 0x2EA34733L, 0x12820E88L, 0xB5FA97A8L, - 0xFADB5158L, 0x09D75EDFL, 0xAEA19DEFL, 0xB2E711DEL, - 0xEABC8403L, 0x3CA2FAC9L, 0x98FE610DL, 0xAB777A49L, - 0xEB5749FFL, 0x95C5168FL, 0x5E7CF20DL, 0xF55D18E5L, - 0x9CBD14DFL, 0x138C5CEAL, 0x3A1F0B5EL, 0xFA3DE986L, - 0xB2F00E18L, 0x702833A7L, 0x17911203L, 0xD227F2CDL, - 0x21D03ABDL, 0x4735D4F8L, 0x705A8002L, 0xC39584FDL, - 0xEA4F29AAL, 0x6DC822A7L, 0x0D3E6D8EL, 0x95FF16A5L, - 0xDE5EDB12L, 0xF33BEBFDL, 0xA9C256ECL, 0x7879E9EFL, - 0xB80FA0CBL, 0x5541E9C8L, 0x53EC0760L, 0xE39ACBF4L, - 0x15F6F2B4L, 0x89582A6CL, 0x17611817L, 0xD612D44AL, - 0xB46C83B1L, 0x89F385F1L, 0x466BBD11L, 0xBB79FD92L, - 0xF617A3EBL, 0x3ED49DF8L, 0x802E0824L, 0x9B108110L, - 0x69FF76DBL, 0xA9F02162L, 0xE6D92161L, 0x78104590L, - 0xE6D33EB4L, 0x0B99AAECL, 0x78BD05F5L, 0xA3DD5738L, - 0xC1D275D9L, 0xBA5AD45CL, 0x3F438DB7L, 0x5A695F1CL, - 0x11843FB9L, 0x160B4E39L, 0x6D70134FL, 0xE46D07FBL, - 0x8ABA4857L, 0x61696980L, 0xAE2EEA72L, 0xC2609B77L, - 0xFD13E78EL, 0x001BDB3FL, 0xA41D589DL, 0x87D28135L, - 0x543DF838L, 0x2FE95D05L, 0x978FE4DFL, 0xF93C68A3L, - 0xD3123DE2L, 0x6672B62AL, 0xF17D6339L, 0xA74E19FBL, - 0x3A8AFEC1L, 0xC7E34355L, 0xF4341642L, 0xEC80CB21L, - 0x9A2857DCL, 0x367AF183L, 0xAB85D076L, 0x675F789BL, - 0x69AC7A11L, 0x45C072BAL, 0xFA2E7F52L, 0x40361F9FL, - 0x5E5B999EL, 0x935EF244L, 0x539AC9D9L, 0x44CDDF56L, - 0xD873EF96L, 0x02ACFFB3L, 0xE1132BE1L, 0x9C01FC6DL, - 0x6AF6C971L, 0x2FB5DFC9L, 0x52EF5A1FL, 0xF2604D6CL, - 0x2080717BL, 0xEA47F30DL, 0xDFE65FD5L, 0xB6CC4E4CL, - 0x1E39CA72L, 0xA8932695L, 0x29F24747L, 0x5F6692A6L, - 0x128DC7B0L, 0x94A008C8L, 0xDE0AC13FL, 0xA7E72050L, - 0x14FC696FL, 0x075D7348L, 0xD230F4BDL, 0xF057308FL, - 0x43D38F2BL, 0x300ECE1EL, 0xCBC9A1DCL, 0xD1DC2D9FL, - 0xF9DBB5C5L, 0xA6342B61L, 0x943AC415L, 0x18676FBFL, - 0x314919FBL, 0xC9570A0AL, 0xBD7A40EDL, 0x8A44ACF4L, - 0x354ABFCAL, 0x4D534A18L, 0xBFFEE160L, 0x35C18D93L, - },{ - 0x15DBCCCEL, 0x29A95713L, 0x5D890889L, 0x070DEA79L, - 0xF9B56896L, 0xF8784885L, 0xE0F748B1L, 0xA5A0C290L, - 0x16FD2DDAL, 0x681430F3L, 0xB9699967L, 0x6767C430L, - 0x0FD5F8D0L, 0xB43E99A8L, 0xEED1B054L, 0x5374A256L, - 0x7C0F049DL, 0x2819D817L, 0xE83CB003L, 0x9B02FE6DL, - 0xBFD783B2L, 0x7C3BF349L, 0xF8AA7001L, 0x2A87EDEFL, - 0xDCAA68AAL, 0xE2D13D6CL, 0x904DE7BDL, 0xBFF5CB87L, - 0x4E7C9B78L, 0xDF751DFAL, 0x8DCF87CFL, 0x2245A935L, - 0x7938A3C2L, 0x8D3FF426L, 0x34510A7AL, 0x6CFCE072L, - 0xCD60683BL, 0x1A03A627L, 0xD52501E1L, 0xA700BE5FL, - 0x4E661D53L, 0x19082F1BL, 0xA7139E35L, 0x1F483D14L, - 0xE92ECBD2L, 0xB3ECF92DL, 0x40A16636L, 0x7942F3CDL, - 0xABDC3431L, 0x0534D0EDL, 0xABF19574L, 0x40C6EB83L, - 0x95209166L, 0xBF8381F9L, 0xEDAA0255L, 0x5E0ACD29L, - 0x64AB8FB0L, 0xEFED8E62L, 0x0127B489L, 0xCD42E9DAL, - 0xF15A31DAL, 0x284C520AL, 0xCA5CE322L, 0xD5139D06L, - 0x1CA1134FL, 0x1351487CL, 0xC270EE91L, 0x535D5904L, - 0xFE1B86EAL, 0x3CA2AA59L, 0x0DC98AEBL, 0x6595181EL, - 0x2FD45C25L, 0x5A69EE66L, 0xD0006BA9L, 0xB22C37EFL, - 0x385E82D3L, 0xDC605157L, 0x5167F38AL, 0x56BBC682L, - 0x03609E08L, 0x6D1493F6L, 0x5A993E29L, 0xF3EE5E34L, - 0x066CF14CL, 0x87362267L, 0x446439FCL, 0xF940D038L, - 0xF6CA440BL, 0xCA6FA060L, 0x1C7E1197L, 0x01B9A238L, - 0x28B981B2L, 0xDD5B3F57L, 0x9265149DL, 0x7B4C3D75L, - 0x79C78911L, 0xE79EF7FCL, 0x5E9AB738L, 0xBBE234D8L, - 0xA65B3B3BL, 0x1BD51281L, 0x80E5E454L, 0x55050949L, - 0xE814A07DL, 0xCB815BB5L, 0xF0E1EFE7L, 0x52A4D76AL, - 0x5BEB1613L, 0x5CED5360L, 0xEC1E36BDL, 0x3418CBA4L, - 0xAC75B160L, 0xF506CB83L, 0x1F10C19CL, 0x07FEAD71L, - 0x2A8B0C8CL, 0xE426C985L, 0xF047A0BEL, 0xFA0D76A3L, - 0x040FB6B2L, 0x3FD46417L, 0x4BD840D8L, 0xC4CB3DB8L, - 0x114B557BL, 0x771C2219L, 0x6D337D4AL, 0xB6F394E9L, - 0xFF01229AL, 0x2296570DL, 0xDFE9F249L, 0x1D875F0EL, - 0x6FDDD772L, 0x157BD311L, 0x63D781C6L, 0xEAC5ABBEL, - 0x6CB1BA01L, 0x85AA1E24L, 0xC137C5D1L, 0xCD6A3D0BL, - 0x4A05D2FCL, 0x02335168L, 0x58EF5A40L, 0xF255CAEFL, - 0xE3D875D8L, 0xC38C2F9CL, 0x4B095C46L, 0x55BB061BL, - 0x81089166L, 0x8629DE9CL, 0x4515095DL, 0xB994B900L, - 0xABE9C314L, 0x3AA8014EL, 0x5AFEFF8FL, 0xF359DEA6L, - 0x753E9545L, 0x1547382DL, 0x52239C7EL, 0xB4740661L, - 0x83CD9095L, 0xB66AC441L, 0x0370D2B1L, 0x34D43CB4L, - 0xDF5AE400L, 0xCAE562C5L, 0xCDB1E51DL, 0x8E4EB2EDL, - 0xC3C96EC6L, 0x6A98C9F5L, 0x982AD390L, 0xEE47D043L, - 0x1C9F922EL, 0x2BCD36CFL, 0x4B4DCDA3L, 0x10BD2C62L, - 0xB72E38BBL, 0xC83AAEEBL, 0xD41414BEL, 0xDE95000EL, - 0x1374FF7DL, 0x07850398L, 0xDDFA07AAL, 0x7295DCF3L, - 0x1E703A64L, 0x80447FACL, 0x90950C82L, 0x0EE0D3C7L, - 0x8E9D3C34L, 0x70C7D56EL, 0x6619A322L, 0x6F60E73AL, - 0xA076FADAL, 0x88C1DAC3L, 0xD45A9516L, 0x870E8C4AL, - 0xD06021EBL, 0x32A45FCBL, 0xB4A25EA7L, 0xC6AE3360L, - 0xD9F5CCD4L, 0xB5E7AB55L, 0x56D47CE1L, 0xD229F5B1L, - 0x23F5C90EL, 0x610A1A1AL, 0x4B2FFCD2L, 0xFCCCDA4EL, - 0x97FAD1ABL, 0x406D14D0L, 0x83F94EFFL, 0x4F428BF5L, - 0x595EED25L, 0xB7E2284FL, 0xA3042BE9L, 0x90F761B1L, - 0x9D622C2AL, 0xC4C05E56L, 0x471C109DL, 0x435C35EAL, - 0x9418003CL, 0x36C8665BL, 0xEC4246E1L, 0xA73B6AD4L, - 0xA93E8EB9L, 0xAD0AA225L, 0x48A6D2F5L, 0xDF84B6B8L, - 0xC7B0368AL, 0xBBC8D83BL, 0x739BD3E6L, 0x5370B70EL, - 0x06518368L, 0xFE82BB7CL, 0x957FC02DL, 0x8C00659FL, - 0x4EED2414L, 0x2F79CE26L, 0xECB091A7L, 0xF4D8AC7FL, - 0xE946B22BL, 0x018EAB58L, 0x170DC0D5L, 0x9FB524EEL, - 0x3A242EB4L, 0xB02F62F1L, 0x5247A50EL, 0x9945BCC3L, - 0x251B5148L, 0x7669A6E0L, 0x5DB00878L, 0xC908B055L, - 0x9F7CA600L, 0xC6C34F95L, 0x4851894DL, 0x515E8E4EL, - },{ - 0x3BDF54EBL, 0x79424E44L, 0xFEDC2714L, 0x3A2D542AL, - 0xC90E1AE4L, 0x230D7AA1L, 0xE5FF077FL, 0x2CEACFA9L, - 0xEF800EC0L, 0xFDEB3C32L, 0xCEDB12AFL, 0xBBD63D05L, - 0x30A678FBL, 0xBD4B3C9DL, 0x3EE61F60L, 0x7795B124L, - 0xE20D7C42L, 0x28912105L, 0x901E965CL, 0x8BCEED8DL, - 0x369E317DL, 0x98733CE5L, 0x9CA3D724L, 0x1B0B2771L, - 0xC48F661FL, 0x4F134B8CL, 0xF5B509DFL, 0xBC818625L, - 0x9EC5C114L, 0x2AEBF364L, 0x496E1870L, 0x41DD2A62L, - 0x42C57C68L, 0x15885679L, 0x6B3C3B59L, 0x24E18DFBL, - 0x63DEE76AL, 0x4F0CA078L, 0x4269E797L, 0x06907DF4L, - 0x9979AA8CL, 0xB08794B5L, 0x83B83773L, 0xB0C133EDL, - 0x3746BDE6L, 0xCE3ED2AFL, 0x0805E55DL, 0xB968950FL, - 0x62309D14L, 0x07396EC8L, 0xB8A4CA12L, 0x186CAB69L, - 0x87DBEF27L, 0xF6776060L, 0xD807120BL, 0xCFD7CC4BL, - 0x7601C2E1L, 0xC2DEE931L, 0x99F22346L, 0xA7AF7010L, - 0x31ACB350L, 0x2755A8F2L, 0xD3183E5CL, 0x58641565L, - 0x215A59EFL, 0xBBAA2079L, 0xE6D44C36L, 0xA2651EE0L, - 0x08653601L, 0xD0AE8B02L, 0x7794C55EL, 0xB5CA01C8L, - 0x25D8BA7AL, 0x7B468EA9L, 0xD1CDB877L, 0xD2078BF5L, - 0x3D3E4D32L, 0x65D6C3BEL, 0x425DF64AL, 0x450A0ABFL, - 0x3F0BDB36L, 0x92989B0BL, 0x6204CF30L, 0x32A64C6AL, - 0x544FB5B9L, 0xEBB0CA06L, 0x480B642EL, 0x3E0284ADL, - 0x0BF0A61FL, 0x9BACD23BL, 0x252197AFL, 0x0442881DL, - 0x56258201L, 0x6EDCCDD8L, 0x038936DCL, 0x499966FFL, - 0xE003B235L, 0x70E2DCB2L, 0x70411309L, 0x9495803EL, - 0x2A6726EBL, 0x9DF1CA34L, 0x5241819AL, 0x1BBC4A88L, - 0x266CE104L, 0xE61598E6L, 0x075E26F5L, 0x82D889DEL, - 0x3351C0DBL, 0x8280DE84L, 0x34AB5BAEL, 0x5B5E1B6AL, - 0xA47C6195L, 0xDF918381L, 0xEA23D1D8L, 0xE127ABFAL, - 0x8A081347L, 0x55DD03CEL, 0x66E83947L, 0xE8EC3FFFL, - 0xB18EE74DL, 0x90B77AABL, 0x5D383DA2L, 0xBD60B102L, - 0x0B73C02BL, 0x6E34FD16L, 0x275E2BE7L, 0x36B32FDAL, - 0xF8DC2735L, 0x93E4690CL, 0x106F106DL, 0x2CFC8BFAL, - 0x415DF134L, 0xD9AAD4F2L, 0x6CEBFA2DL, 0xD65A7886L, - 0xF17CD2ACL, 0x4DDBBB47L, 0xBE4D5FA3L, 0xE3890B33L, - 0xE8EC9654L, 0x3EA7350DL, 0x5E505EC7L, 0x348CAAC6L, - 0xD85F61C3L, 0xB9D53FD9L, 0xAFF0AE61L, 0xC8C5AE39L, - 0x44C6AD0EL, 0xFBAA61E0L, 0x01DCDF26L, 0x5C0A9A4BL, - 0xBA2D2A79L, 0x8B0EE1ABL, 0xAF3A488AL, 0x14573086L, - 0xBA540B76L, 0x61F028A1L, 0x58A7A0C0L, 0xD9F310F1L, - 0x7DD0F3ABL, 0x01A1A3C4L, 0xD77E6370L, 0x41310B57L, - 0x0EF905E5L, 0x1AD6B697L, 0xC8E883A3L, 0x591BC606L, - 0x3325842DL, 0x1E09F853L, 0x18FDBF80L, 0x2FF07151L, - 0x6D0B2849L, 0x07A72B7CL, 0xEC716644L, 0xD608A530L, - 0x0AC40EB0L, 0xA1B748F2L, 0xC349D6B6L, 0x95112613L, - 0xD3B96139L, 0x91243914L, 0x2DB56986L, 0x949A0DE1L, - 0x0EC54412L, 0x0C4E2748L, 0x405315C5L, 0x032B58DFL, - 0xCC7F0950L, 0x43BAF130L, 0x76B95EA0L, 0x361C7B2AL, - 0x4BB1275EL, 0x75F93428L, 0xD522A1E6L, 0x13D9303AL, - 0xE06345FEL, 0x31521803L, 0xA54A0028L, 0x1F0116CEL, - 0xB08837EDL, 0x5EAC3E98L, 0xAB830BA0L, 0x3C62EF0DL, - 0xE4820552L, 0x080CE492L, 0xE3B4CC51L, 0x696A4418L, - 0xE50D8FF8L, 0x5026D64CL, 0x52C5605BL, 0xF87018DAL, - 0x05B88797L, 0x32E50E35L, 0x91A9CE2EL, 0x54E54C27L, - 0x3D0223E2L, 0x896A4611L, 0x4490278CL, 0x8A5685A5L, - 0xA3582430L, 0xC2F309F3L, 0x6396EE8CL, 0x1D52F5F2L, - 0x85E35B9EL, 0xDC997189L, 0xA81A8BFDL, 0x1236750BL, - 0x55AC08ADL, 0x06710DEFL, 0x5D9A9B4FL, 0x69EAEA69L, - 0x3C816E82L, 0x6C84BFEFL, 0xC15B9832L, 0xFFCA2311L, - 0xB65AD661L, 0x54FD8687L, 0xB8ACF8D0L, 0x50B268ADL, - 0x3544FA99L, 0x0F6135FCL, 0xA1761232L, 0x3F84EF74L, - 0x8F1424C9L, 0x7D431C2FL, 0x8DF7DA17L, 0x9F85FD1DL, - 0x18587869L, 0xAB575724L, 0x220380ABL, 0x98373C88L, - 0xE1366D67L, 0x82E57F36L, 0xD61BC4BEL, 0x07D58C4FL, - },{ - 0x683F7667L, 0xA541B488L, 0x6D7B2A23L, 0x22A41694L, - 0x714144A3L, 0xCEEB33DBL, 0x91F21FE6L, 0x02D76C99L, - 0x24806001L, 0xA4FD1A84L, 0x5D97E128L, 0x7788855AL, - 0xCA77B8B5L, 0x1B015B0AL, 0xD8F04F28L, 0x08320591L, - 0x8CF956C3L, 0x722B4883L, 0x672A9765L, 0x44305B25L, - 0x3051744FL, 0x416E06A9L, 0x9545B3E2L, 0x17790B0AL, - 0x85C17B98L, 0x06667AFBL, 0x4BA97BC6L, 0x0D6B04A4L, - 0x68034698L, 0x466B0160L, 0x521F80F7L, 0xA82BA4E0L, - 0xF5B637BFL, 0x67147E05L, 0x48E146A8L, 0xAF6A409AL, - 0xED6655A3L, 0x7C899717L, 0x981BA419L, 0x09AD7F2EL, - 0x33521C83L, 0xC2FA65F6L, 0xF3384E6BL, 0xDA0C80DFL, - 0x37FEF848L, 0xA848D525L, 0xB8E32C99L, 0x97B891E4L, - 0xDDD90DB7L, 0x3AA979B0L, 0x0474B23AL, 0x82287645L, - 0x8E204322L, 0xE6F54045L, 0xC5B4C06EL, 0x0057E113L, - 0x52275D2FL, 0xB8FC4D97L, 0xCFD4FB48L, 0xA0EBDB7CL, - 0x8F103E54L, 0x03DFB57EL, 0xF196BCE7L, 0x45440571L, - 0x663F7F17L, 0x5794CF8DL, 0xF0971B82L, 0x8906D80AL, - 0xCC877E57L, 0xCAB0DA5AL, 0xFC3ED8CAL, 0xD5C71E54L, - 0x3072110DL, 0xD3D246B5L, 0x0AE32773L, 0x8926C074L, - 0x5214AAB9L, 0xC66C04A2L, 0xE8CF3EAFL, 0x914062C4L, - 0x913D7238L, 0x45788958L, 0xBA9FA3B9L, 0x9BF41707L, - 0xAE411474L, 0x9C9E6C0EL, 0x758BA342L, 0xC96AEA50L, - 0xD3228F2DL, 0xEB7856BAL, 0x2B7EBA85L, 0x00DB5F30L, - 0xE347B374L, 0xC05A59C4L, 0x078F88FAL, 0x932CCC02L, - 0x67EE3843L, 0xC907DEF1L, 0x661259C1L, 0x17F329BCL, - 0x328482B5L, 0x7087FA30L, 0x769C4BC3L, 0xA0F9E397L, - 0xB0479075L, 0x3CA62A66L, 0x898C06AAL, 0x919C2B28L, - 0x19B88011L, 0x63E08F72L, 0x7045161BL, 0x68CF633EL, - 0x134DD266L, 0x786B683DL, 0x5BC3C5B5L, 0x4E9072C9L, - 0xFDC585DEL, 0x2BE541BCL, 0xA6CEC44DL, 0x8D020751L, - 0xC414CF1EL, 0x81C415E6L, 0x5F329C47L, 0x861851D0L, - 0x4A6AAD99L, 0xD8D65983L, 0xB888F747L, 0xEC13EE1FL, - 0xE663AC61L, 0x232989ABL, 0xB407B08BL, 0x11F493C4L, - 0x146267E9L, 0xCBBF47BAL, 0x437B1949L, 0xA05932A7L, - 0x880F0F71L, 0x61CAB909L, 0x60429F95L, 0x6FFB2F76L, - 0xC59FCE04L, 0x8243EA59L, 0xE4AE694BL, 0x9BEDD83FL, - 0x147655CCL, 0xBBE22CF5L, 0x65884C22L, 0x8A358C5CL, - 0xADE95F94L, 0x8A67DF41L, 0x714EBDBEL, 0xBD6E8098L, - 0xAC2794D8L, 0x319C107DL, 0x0C4BFC45L, 0xA0AD5B25L, - 0xFF685C69L, 0x5BF79FCFL, 0xBD68B5ACL, 0x7384C8BFL, - 0x10F1AFEEL, 0x2BE57199L, 0xE86677C9L, 0x812AEA9DL, - 0x29D8808BL, 0x9408E3F7L, 0xF6147637L, 0x40A95E51L, - 0x5D479F1BL, 0xF706187CL, 0x03EF65B3L, 0xA4C48800L, - 0xE2B52085L, 0x45AEC06CL, 0xAE12A7FBL, 0x276E2EE1L, - 0x52206B7EL, 0xDF57AA62L, 0xD67208F6L, 0x68D2527DL, - 0xC69C34D5L, 0xC024AC74L, 0x53AD47A7L, 0x3FC8927AL, - 0xBDDC1122L, 0x9FA5C189L, 0xB67A9150L, 0xB26B32C9L, - 0xE6C5F1B1L, 0xBA9CBE02L, 0xC8E2A99DL, 0x66C2E881L, - 0x3BD89574L, 0x39CE76DBL, 0x9308B021L, 0x58134C62L, - 0x81EA35E9L, 0x23D3E7ADL, 0xA3280D6DL, 0x169FD78EL, - 0xD8135C92L, 0x9968F791L, 0x6EB1E0D5L, 0xEB3FA664L, - 0x27B477D3L, 0x3B38A952L, 0x9E8C51F0L, 0xAB1DC97DL, - 0x8EB76F2CL, 0x22CBCFB6L, 0xEDB577D3L, 0x3368847CL, - 0xD1FFBA4EL, 0x1467FB27L, 0xF12F52EEL, 0xEBF55C9AL, - 0xB713E335L, 0xB35474A5L, 0x211205E5L, 0x72287E82L, - 0x207C5FDFL, 0x218B4FD8L, 0x7E3CCF50L, 0x4C37B4DBL, - 0xDC8C668EL, 0x475DE650L, 0x59CC9FA0L, 0x61898891L, - 0xED71E726L, 0x3D365153L, 0xFE19D1EBL, 0x0C01F55FL, - 0xF7D3CAAEL, 0x4FD118DBL, 0x64AA86DEL, 0xDFC8F017L, - 0x158FE3F0L, 0x14338AC2L, 0xB48F9853L, 0x528A8F6FL, - 0xF5283200L, 0x76BD3593L, 0x36BB2548L, 0x16790E0DL, - 0x9EF89147L, 0xC6DFA4ABL, 0xF38DAE04L, 0x873E8CE2L, - 0x1ECF63B2L, 0xF45B961AL, 0x6EF8B795L, 0x73AC9978L, - 0x81580E8DL, 0xD3602E83L, 0x419BE57AL, 0xF88AB76FL, +static const uint32_t out_key_s[4][256] = {{ + 0xBA448614L, 0xC35FBBD7L, 0x31B6EC14L, 0xA85F989BL, + 0x89A83B0EL, 0xAB11C2E7L, 0xFC376FBBL, 0x55B2E7B6L, + 0xA330F22EL, 0xA8229AE0L, 0x9D025EF0L, 0x5E917398L, + 0x3BE382F9L, 0x8F103C90L, 0x463C36A2L, 0xD223C350L, + 0x29DDD3F8L, 0x35075D14L, 0x0F963F64L, 0x74D02046L, + 0x28DCFBF1L, 0xEE12889EL, 0x46C74707L, 0xA1C5A67FL, + 0x8FFE2E9DL, 0xACE75324L, 0x49DA447CL, 0x3061FBB3L, + 0x14579E12L, 0xF1E8ED6EL, 0x76A679C1L, 0xD8EF0FEFL, + 0xA5EA7835L, 0xD63EDB8DL, 0x484F139DL, 0x3D3AD62AL, + 0x8A6331F1L, 0xEF43FE4EL, 0x3745B29FL, 0xEAF8A9ADL, + 0xF9FFF4AEL, 0x1E5BB3C5L, 0xFF988E0AL, 0x8C9E1147L, + 0x3EC6CED1L, 0x4CE0F56DL, 0x206E4341L, 0x79C0520FL, + 0x4FA3C2FDL, 0x1A8189E5L, 0xFA0BC58EL, 0xA0F29358L, + 0x42B379BBL, 0xEC55CB3DL, 0xBD7F1551L, 0x31E17BEAL, + 0xACC91098L, 0x7C36A984L, 0x8611A88BL, 0x255CE7CFL, + 0xC80DB988L, 0x743CEEBCL, 0x7AA258B6L, 0xE82424C9L, + 0xD1EAC3DBL, 0x2D562386L, 0x5250E40BL, 0x9B5285F5L, + 0x895D0124L, 0xAB8037D6L, 0xFD67BA8FL, 0x351B05D7L, + 0x0B124E65L, 0x20CF592BL, 0x91BE281FL, 0x879AD90AL, + 0x6609FEB6L, 0xD8A2305FL, 0x861194A2L, 0xD51DB0E3L, + 0xF735D810L, 0xAEFA5174L, 0x56A9577FL, 0x24F3408BL, + 0x10627B95L, 0xBEE74251L, 0x7ECD2211L, 0x95A8B55EL, + 0xBDE1028EL, 0xDEF339E2L, 0xD0768D34L, 0x6BD5A569L, + 0xC2240D0FL, 0xE171393DL, 0x14A24028L, 0x96760DFAL, + 0x4C78040FL, 0xBD6F76D0L, 0x5EE4BA83L, 0xB20C926FL, + 0xC0F0DCD8L, 0xEF5D4105L, 0x383D3B65L, 0x51E42A4AL, + 0x1505EECEL, 0x86B2BFFDL, 0x56EE7DFCL, 0x8734574BL, + 0xCAA9E52DL, 0xE0F66450L, 0x76B7037BL, 0x84AE5148L, + 0xFB7EC4EBL, 0x6A3DEB3DL, 0x06C7EA69L, 0x165F2DFFL, + 0x7B9DB92AL, 0xB9B24C67L, 0x43AB448AL, 0xA64F30D7L, + 0x998BE34DL, 0x628E747AL, 0x294162B9L, 0xAB8014C7L, + 0x22E1516FL, 0x74C3E589L, 0x003D14D0L, 0x8D724CE1L, + 0x2053C615L, 0x9AD67B30L, 0x29C3D0E8L, 0xBC3269B5L, + 0x7CD7D118L, 0x892FD6BEL, 0x30170170L, 0xF582162AL, + 0x35C8F272L, 0x19844866L, 0x85259078L, 0x7C744927L, + 0x1DA54115L, 0x5505DEC7L, 0x7A84A6D8L, 0xC7D8C609L, + 0x2E198969L, 0xF6020F4BL, 0x837DCD75L, 0x2DF45B36L, + 0x83C0DA9FL, 0x4DE5E15CL, 0x8F70E4A4L, 0x364CF096L, + 0xECBDAE6FL, 0x548DC21BL, 0xAFD70D50L, 0x60378522L, + 0x7A405AB5L, 0x60A18616L, 0xFA0905BCL, 0x953A1CCBL, + 0xBE5141D0L, 0xA9403F7BL, 0x5D1E37B6L, 0x500DA5D5L, + 0xBCDB815CL, 0xE78B89E3L, 0x63A3546FL, 0x5AAD9FD4L, + 0x5C6E8B71L, 0xD7971A6FL, 0x40856F48L, 0x91F6CA81L, + 0x956C447AL, 0xF966868FL, 0xF191BB51L, 0x7C015EAFL, + 0x58A8785BL, 0x43710423L, 0x2C246B80L, 0x0072DCD6L, + 0x40569C99L, 0xCB544BB9L, 0x2CC2B579L, 0xA3AF010DL, + 0x5638B6A5L, 0x8918B2D4L, 0x18928D95L, 0x557BAE61L, + 0xA0D578F2L, 0x3CF4B1F1L, 0x1D592634L, 0xED9B40B5L, + 0x0BE033EBL, 0xDD437BAEL, 0x6188202DL, 0x9F0A444DL, + 0x4DCD2CC0L, 0xC28D6DC5L, 0x9ABDD269L, 0xB0843012L, + 0x00951EE5L, 0x4715466DL, 0x3CC39115L, 0xB270DD7BL, + 0x6510D189L, 0x2BBC6F8FL, 0x331B8E06L, 0x54F13F9EL, + 0xA8223944L, 0xC7B1B375L, 0xFD79FA77L, 0xB7930324L, + 0x6197A094L, 0x46CB50D9L, 0xC49A908FL, 0xAC297BAFL, + 0x84D14B51L, 0x0A50682AL, 0x8AFB5E73L, 0x1C1172C6L, + 0x358A5364L, 0x88415003L, 0x4D5666F8L, 0xA287110CL, + 0xD61B0A4AL, 0x3CC0961BL, 0x44BF5FC3L, 0xD69E0492L, + 0xCFD94EE6L, 0x019813D5L, 0xB7D38A5FL, 0x69C15DC1L, + 0x0D896A60L, 0x7ACB18CEL, 0x5CE6D6E7L, 0x743A4295L, + 0xD7E5A8B7L, 0x457E7DD5L, 0x4A07442BL, 0x2ADA51DEL, + 0xF3202F3BL, 0xD4574157L, 0x81A94A0AL, 0xF26BDDFDL, + 0x775935B3L, 0xB9BC3B76L, 0x3FD81E05L, 0xB95EE989L, + 0x9A0F555DL, 0xFD7E49C8L, 0x3A1D12C5L, 0x7955E2EFL, + 0x7F4A75A1L, 0x16DD1739L, 0x3B3EF7E0L, 0x8795C597L, + }, { + 0x0640766DL, 0xCD661DAFL, 0x2BDECFBDL, 0xDAA77B87L, + 0x5A7E41B5L, 0x9A3CD4EAL, 0xC6CA8D2FL, 0x65F989EBL, + 0x736C3573L, 0xFA69679CL, 0xB317B71BL, 0x41A7E6FEL, + 0x72D83E2AL, 0xE22CAB56L, 0x08920117L, 0x7030D96EL, + 0x35CDE674L, 0x7405A058L, 0x97D69990L, 0xE95C5EF3L, + 0xDC992FB4L, 0xD33C9F8BL, 0xDAF1AD7AL, 0x03503095L, + 0x00967754L, 0x8CF12CD7L, 0x950FD719L, 0x1ADB3F8CL, + 0xDB4F120AL, 0x712C33D5L, 0x8626D609L, 0x1F2CA165L, + 0x3B8FB27FL, 0xBBA56B76L, 0xD0D7517CL, 0xE1B34706L, + 0x2D89956EL, 0xFFDFF151L, 0xD992E142L, 0x9C662E5AL, + 0xD3D210A4L, 0xD914DD04L, 0x712980F3L, 0xF5AE77E4L, + 0x1E186A6DL, 0xC3CED643L, 0x5A8841B0L, 0xD113DB05L, + 0x1C93C9FDL, 0xB0B64822L, 0xDCDA2B02L, 0x09F3B19AL, + 0xF59692CEL, 0x01117325L, 0xCA61CC6BL, 0xF3E6788AL, + 0xAE70FCF0L, 0x2BA3BDD7L, 0x359B04A2L, 0xB422ECFFL, + 0x4CF00372L, 0x6374AD34L, 0xEB0C631BL, 0x56587BA8L, + 0xC32CD2DEL, 0x5294BDC9L, 0x65B79362L, 0x5E38BFADL, + 0x2A8FBE8CL, 0x8E738683L, 0xC673FFD0L, 0x4B04FB4DL, + 0xCC76EE0FL, 0xF45FD305L, 0xB77848D3L, 0x0D3CB64EL, + 0x48772949L, 0xB5E5B2EEL, 0x354BFBEAL, 0x22BDE81FL, + 0x2181F5BEL, 0x40F5F099L, 0x99C49F11L, 0xEF46CF3BL, + 0x4F9B3DD0L, 0x2E34B17EL, 0xF35F478EL, 0xB0ADC5E2L, + 0x06A4CE4EL, 0xF0395C8AL, 0x3F344031L, 0x0B4A502CL, + 0x85DD868CL, 0x0E52D760L, 0x84124817L, 0x08197C7AL, + 0x5520AD9AL, 0xEA8268FCL, 0xA11B655BL, 0xE3204A0EL, + 0x9183F85FL, 0x9A294A29L, 0xE6350EC4L, 0x09202931L, + 0x28BA52EFL, 0x21B2DB1CL, 0xA20FF528L, 0x42918DAEL, + 0xB8E49971L, 0x9E203A81L, 0x2A07F36CL, 0xA2F84D75L, + 0x824D4513L, 0x1D8AC558L, 0x7E65E471L, 0x06002169L, + 0xBEBC8C82L, 0x9B7B8B6BL, 0x3FF164C2L, 0x5672E9C3L, + 0xBFC72AA3L, 0xD3C9D9E3L, 0xCB64E2DDL, 0xE196A84DL, + 0xCF336932L, 0xA5F3CA20L, 0xA8D3D903L, 0x81CB0B86L, + 0xFB4BF27DL, 0xFCA4C125L, 0x21F1D5B6L, 0xCF6BA988L, + 0x1D408BB7L, 0x629F088FL, 0xF4746130L, 0x1B5C2212L, + 0x47AD1F87L, 0x1E1E9B5CL, 0xCD01B844L, 0x5D3307E1L, + 0xA68FE8F7L, 0x3B13346BL, 0x602308E7L, 0x751416ABL, + 0x38030F2BL, 0x1ABC8EF6L, 0x8929E128L, 0x97040FCAL, + 0x13E59C8DL, 0xA121B4D9L, 0xDB599765L, 0x95EDA62DL, + 0xDAEA1CC5L, 0x2CAF5AC9L, 0x5490F679L, 0xFB410588L, + 0x023C15F3L, 0x5FCD4247L, 0x99455DD9L, 0x82CFC454L, + 0x2EBECB55L, 0xE6ED032FL, 0x876F578DL, 0xA4BF3657L, + 0x8DAD590EL, 0xF6ECC607L, 0xF8B5CD9CL, 0xEC124316L, + 0x4159E6DAL, 0xD7EFA744L, 0x2A20A160L, 0x982F527FL, + 0x60C84A77L, 0xFF60A850L, 0xFD5C6EAFL, 0xFD2D5797L, + 0x954F58C6L, 0xA48A9852L, 0x55B5A9D2L, 0xF3F29933L, + 0xB3580EC7L, 0xF7021CB8L, 0x25238BDBL, 0x7FE667E2L, + 0x47353A71L, 0xD9F9D37DL, 0x79374988L, 0x939566EFL, + 0xC1279574L, 0x835BD0DCL, 0xCB52DE4FL, 0x028364BDL, + 0xBE33E780L, 0xB09647D8L, 0x73FA4EABL, 0x859922EAL, + 0xC7520CCAL, 0x72A331D2L, 0x3F5CFE19L, 0x008F9772L, + 0x5CBFD2B8L, 0xF1937A57L, 0xACC6DBA9L, 0xEFF7AB89L, + 0x72A55667L, 0x628DE4B7L, 0xA0CE9591L, 0x3BFD1D5FL, + 0xCA8D7811L, 0x55BE1BD2L, 0x8B4E3C73L, 0xE0ADA4A4L, + 0xB0A9AB99L, 0xFE319FE4L, 0x1C2BE3A3L, 0x037B2517L, + 0xC084B5D6L, 0x2BE02274L, 0xFF05F558L, 0x8482CABDL, + 0x8B3D719AL, 0x1CB98561L, 0x80DA6AEEL, 0x443B8093L, + 0x01D8FAA4L, 0xD7B783D6L, 0x33F0B71EL, 0x73CA82D8L, + 0x4D9DFDA4L, 0xA91F57FEL, 0x17AB093CL, 0x689F8D37L, + 0x40EE7199L, 0xFA702024L, 0xD1DD8C1FL, 0x5F9BD69BL, + 0x64D28176L, 0xF9DAA31BL, 0xBB186496L, 0x078787B1L, + 0x3783C428L, 0xBDA68050L, 0x7E709830L, 0x1BBDB10EL, + 0x6349027FL, 0xF8306215L, 0xD8855420L, 0x0BE3D1A8L, + 0xD3D9C187L, 0x5329049FL, 0xE3395F69L, 0x65AC7995L, + 0x664848D1L, 0x68C64650L, 0x0F9C1F75L, 0xA4808E20L, + }, { + 0x5CFD009FL, 0x4C09F290L, 0xA786F99CL, 0x76A5A243L, + 0x2DC97400L, 0x424D9AAEL, 0x6644DE0CL, 0x30DAFAE5L, + 0x5ED77CC3L, 0xD1003D99L, 0xCD3C1222L, 0x1CA766C1L, + 0x5B976615L, 0x014E4796L, 0x0A715936L, 0x405D0D57L, + 0x0AB115F1L, 0x8A963877L, 0xBE96D670L, 0xE2310AACL, + 0x148D00F2L, 0x9787F4BFL, 0xE5F62A68L, 0xFD025DA4L, + 0x194B6DF7L, 0x960D3E7BL, 0xB330C5C1L, 0x2932C25BL, + 0x13738072L, 0x9D62ABA1L, 0x0ECD92CAL, 0xF75ACC9BL, + 0x229E433AL, 0xD0A247BFL, 0xE4B0D9BAL, 0xFA69F70EL, + 0x9B7D254FL, 0xD2849281L, 0x4132F364L, 0xF2E4B87FL, + 0x4189B43CL, 0x7E807CBCL, 0x10498724L, 0xF48C5F29L, + 0x03312ACEL, 0x239307BDL, 0x3541CEBCL, 0x1B1AE36DL, + 0xF993F1B1L, 0x3B6BE060L, 0x9782191AL, 0xACC1CC1BL, + 0xA8B4798EL, 0x486399CDL, 0x59A7ECB9L, 0x46490B98L, + 0xB80EA77EL, 0x1071EE10L, 0x8FE10517L, 0xE29D8F08L, + 0x9BDA44C2L, 0x629C5056L, 0xE40E10E3L, 0x0048CBB1L, + 0xF8E698E7L, 0x09369CB7L, 0x898942DCL, 0x0F49BFE0L, + 0x3600B868L, 0x44EE4C88L, 0x6625BBFBL, 0x7C956C83L, + 0x5C42B182L, 0x080AF33BL, 0x1503CC24L, 0xAE64DA10L, + 0x9F3537D3L, 0x99618740L, 0xE7D50FFDL, 0x6CBB4AFFL, + 0x56062EE1L, 0x70C1AD52L, 0xAC54BF35L, 0x5A7D4D07L, + 0x65DC58DEL, 0x7B362255L, 0x6133AFC8L, 0x4C2ACE68L, + 0x858FA998L, 0x5C336C93L, 0x78193EA7L, 0x5613E9BDL, + 0x8B1F58ACL, 0x563D5D47L, 0x6163AF27L, 0x71183690L, + 0x5944DDC3L, 0x817D18BEL, 0x41260F8BL, 0x259ED297L, + 0xA3CCEE2EL, 0xDBB13DDDL, 0x1009CD47L, 0xD12B82C3L, + 0x9A6FF89DL, 0x4248C9D4L, 0x31484739L, 0x7C3DEEC3L, + 0x2E2CBAC1L, 0x9597DDA3L, 0xF64414B0L, 0x066FC96FL, + 0x31F4AAA0L, 0xB2DBBCFFL, 0x50B991ADL, 0x95AC5272L, + 0x0CAA50C4L, 0x0864DE61L, 0xF38A70D4L, 0x08CE8D6CL, + 0x53941C89L, 0xC54DBEBEL, 0xE4DBC2B0L, 0x2B3E9E66L, + 0x6F3E0BA4L, 0x164DC014L, 0xCC6CEC5FL, 0x08238664L, + 0x30988E18L, 0xFDE4501AL, 0x030B3099L, 0xE6F49802L, + 0x94A08714L, 0xC3A784E5L, 0xECDA930DL, 0x0B40E2F9L, + 0x0EE564F8L, 0xF5993B88L, 0x5B8DB5DBL, 0xF77CCA85L, + 0x9C4FCDA9L, 0x2114F372L, 0x2AA12CCEL, 0x2B07C3F1L, + 0xD660E47AL, 0xD0B26A65L, 0x56F8945CL, 0x4C07FCA5L, + 0x5EF2197FL, 0x073CBFFCL, 0xF83E8935L, 0x04DB4798L, + 0x79DE4FB4L, 0x207E0BB1L, 0xD0D47C14L, 0x9DADB205L, + 0x5EBD3EA0L, 0xCA83B290L, 0xC8BF53A1L, 0x4DCBF491L, + 0xB590CD79L, 0x9C98C12EL, 0x8C877D6EL, 0xD0F17FD2L, + 0xB3FFF22FL, 0xE8D38B07L, 0x15641B63L, 0x6FE5D245L, + 0x04045C48L, 0xEF16069BL, 0xB58781CEL, 0x7D07653DL, + 0xCFB9BD0CL, 0x21CA5DE7L, 0xB35606D9L, 0xA7854DE0L, + 0xC134207CL, 0xFE978430L, 0x0C830455L, 0xCB784991L, + 0xC95A3072L, 0xC0AC5E17L, 0x7B999149L, 0xA289D877L, + 0xB4E3254EL, 0x743F72B1L, 0x98CF8054L, 0x7E4E1C3FL, + 0x0A64C32CL, 0xF04CEB0FL, 0x0488ABF6L, 0x004554B3L, + 0x359E3441L, 0x192ABA6FL, 0x28DC322EL, 0xDDE52491L, + 0xF1D8C2A7L, 0xEAE3E74AL, 0xA10B3376L, 0x7A879F55L, + 0xB5F13C45L, 0x5194862CL, 0x6F65DC08L, 0x753F6AFEL, + 0xF08EA616L, 0x26D382C3L, 0x3315E1E5L, 0x538106B9L, + 0xEC0B9F78L, 0xF298C82DL, 0x0125FD86L, 0x07465A0DL, + 0x23953151L, 0x70569F93L, 0x75D261A5L, 0xC5AD33E5L, + 0x49464CDFL, 0xB4E0D04DL, 0xA0866011L, 0x383CC817L, + 0x545FBC56L, 0xA49BED33L, 0x4E4B516AL, 0x38CBF5D4L, + 0x6DBA987CL, 0x1DFE208FL, 0x65466F04L, 0x6D3DCD1DL, + 0xEB4D60C6L, 0xE3FB6AECL, 0xFA16DBDBL, 0xCD1CDF2BL, + 0xF07F845DL, 0x4DA0ECD1L, 0x0EEB40B0L, 0x1CB7A2F0L, + 0xCD8E54F3L, 0x37376D53L, 0xF7AAC8D3L, 0x8BA724AAL, + 0xEF5C922DL, 0x6F1BE181L, 0xD1808DF8L, 0x44764B58L, + 0x0CD247C4L, 0x0C137F60L, 0xB77F6981L, 0x4AC13745L, + 0xBA311B48L, 0x42A5DE75L, 0x4522E7E0L, 0x84E90F54L, + 0xCC0AD21CL, 0x00F8D9A7L, 0x9CA2CED9L, 0x4F8E0583L, + }, { + 0x6AFF5CA7L, 0x0D8AB1F0L, 0x75E3AD44L, 0x6B5A1A52L, + 0xE9658216L, 0x71B42FBBL, 0xF57D3F6CL, 0x0A79678EL, + 0x534F306FL, 0xB9C725ABL, 0x7157BF11L, 0x2A52F490L, + 0x4D01079CL, 0x6D18FC2BL, 0x94EC0BDBL, 0xA736324EL, + 0x7540D554L, 0x6B9DFB4DL, 0xFA158CA1L, 0xECE8E1ABL, + 0xAFAF64B2L, 0x61450E7BL, 0x4CEBA4FAL, 0xB2AFAAA2L, + 0xFE669447L, 0x4E63D10BL, 0xFBD8AEC8L, 0x5F6B6B1AL, + 0x70A8F15BL, 0xA91D68B6L, 0x59034211L, 0x98273D40L, + 0xB9A9C9ADL, 0xCE4DDCD7L, 0xC3159554L, 0xFD5D1C2DL, + 0x9ABF93B5L, 0x70A8C01FL, 0xA70FCF1AL, 0x641301DDL, + 0x4EDB9E0BL, 0xC548E7B1L, 0x4884B172L, 0x714610B7L, + 0x4086DCCFL, 0xC8D88CC6L, 0x77594608L, 0xBCABFDE1L, + 0x77962F00L, 0x56F6372CL, 0xB9507A98L, 0x0EF9473EL, + 0xDBA8C6E2L, 0x5BE1AA28L, 0xCEA5C805L, 0x750F1D15L, + 0x1F986C17L, 0x3693A790L, 0x71B0C4CCL, 0xC0776116L, + 0xD660B7BCL, 0x8D0ABAB1L, 0x7F1FDFB7L, 0x4900FDE1L, + 0x2208372BL, 0xB8263157L, 0xB53378F5L, 0x10DF5849L, + 0xC3C8CD69L, 0x5E842514L, 0x8085986AL, 0xC305CE78L, + 0x6C5D3C16L, 0xC11A49B6L, 0x391DBE69L, 0x3BACD18DL, + 0x87253FDEL, 0x56D409DEL, 0x68629118L, 0x1C1E9C6FL, + 0x7F737B29L, 0x96838CC1L, 0xC300D7B2L, 0x2A23D185L, + 0x52271100L, 0xCB4B3F01L, 0xB78A9B86L, 0xB9BEDEF5L, + 0x5D8075FFL, 0x5C325E39L, 0x48A76A2BL, 0x96A61231L, + 0x933ADA05L, 0xF9971C9CL, 0xFF2C75FCL, 0x27FA5DAAL, + 0xAEF8AD6EL, 0xF2DEA20BL, 0x11F247FBL, 0xC383DA2AL, + 0xF85A5ED1L, 0xC35FBC79L, 0xBDCEF0ADL, 0xEEBBCFB3L, + 0xCA711BF4L, 0xB7DABFB3L, 0xE03177D0L, 0xBB727F1FL, + 0x142CC33DL, 0xDB6C384EL, 0xAC6D38B4L, 0xF55B4325L, + 0xF020F44FL, 0x5630D9C1L, 0xED39B172L, 0xACB5AFF7L, + 0x8D98DC58L, 0xB6DF90A1L, 0xEC98CD13L, 0xE0C6A237L, + 0xAC64BDF0L, 0x3560D439L, 0x7B0DDB44L, 0x1D3682C3L, + 0x664EBF1AL, 0xD41A4A0CL, 0x0D5DFE5BL, 0x4E133D8CL, + 0xB129ECD6L, 0xD9DA3194L, 0xE45DADBAL, 0x6B27E47FL, + 0xBA9600DDL, 0x8E1936D2L, 0x1F8B1E51L, 0x3860AE03L, + 0xEE540893L, 0x5F31C76BL, 0xE9302FA1L, 0x452CB6B9L, + 0x5D9CA533L, 0xA19F4B2FL, 0x6C0046A4L, 0x657713DDL, + 0x1B5D5A04L, 0xC3D594E6L, 0xBB80FA30L, 0x9BF9E647L, + 0x716F2F97L, 0xF2B8ADA6L, 0x7F242755L, 0x40FB6614L, + 0x4F85BCF9L, 0x18799EB2L, 0x76B4124AL, 0xFCAEC005L, + 0x38231D8AL, 0xD449CE69L, 0xC6877AD2L, 0x16B37A06L, + 0x7DAF096BL, 0xCE11C2B4L, 0x750754B5L, 0xCAC33C86L, + 0x10E20D73L, 0xE4997D0FL, 0x6B06DE8DL, 0x1D70D15FL, + 0xBF060E4FL, 0x18BC4C59L, 0xD1C8585EL, 0x1AEC12B4L, + 0x9AB3F241L, 0x46CFC4CDL, 0xCF16D587L, 0xF1722424L, + 0x0ECA4D9CL, 0xCC6131F3L, 0x0E990CC3L, 0x9771D4BFL, + 0x4C624E9FL, 0x5CA79CBCL, 0x02368C90L, 0x25826D54L, + 0x32D1B4C9L, 0xDA9A049BL, 0x616CC784L, 0x47B562F3L, + 0xB5553B6EL, 0xF205F397L, 0x6FA01B63L, 0xC857201FL, + 0xC5C7C8A1L, 0xA27C47E2L, 0xDB185877L, 0x67236F63L, + 0xBF369D88L, 0x4E7054BDL, 0xD6544BEAL, 0x36EF3BC3L, + 0x60F4B74DL, 0x430EA61EL, 0xC3E9C76DL, 0x499A0517L, + 0x91D45BCDL, 0xDCAEADFAL, 0x355FBC9DL, 0x8CA1770EL, + 0x820BE4F9L, 0x00AE9FD2L, 0x9E63CE49L, 0x46FE33E8L, + 0xA07048A3L, 0x225FBD27L, 0xAF0FD02CL, 0x8F9D7C95L, + 0xD4F0E647L, 0x6DFB3949L, 0xE289B0B0L, 0xF9CC7F56L, + 0x7F168AD2L, 0xED8433E0L, 0xEBB189B5L, 0x765AD69CL, + 0x7730DCF0L, 0xD54C3A0DL, 0xACF6BD6BL, 0x1E19DF12L, + 0xBD984D49L, 0xC4FC38B8L, 0x0D36C9FFL, 0xCC3AD912L, + 0x0A6E4ED6L, 0x27B27847L, 0x604F6917L, 0xD4C1ADADL, + 0xCB19F4BEL, 0x5127D2FDL, 0x38FFA03AL, 0xB983BC5FL, + 0x5CAF3A6EL, 0x84E94F45L, 0xFC3FA473L, 0xC9299B07L, + 0x322F38AFL, 0x2A228E93L, 0x76D63922L, 0x1326A518L, + 0xFEC3F151L, 0xB821D755L, 0x8D1C67ACL, 0x5DA96628L, + 0x04F7335FL, 0xC6F5CD2EL, 0x7D211328L, 0xE19180D3L, }}; #endif /* _CRYPT_KEY_OUTPUT_H */ diff --git a/libpiano/src/piano.c b/libpiano/src/piano.c index 1c61e15..52b72c4 100644 --- a/libpiano/src/piano.c +++ b/libpiano/src/piano.c @@ -39,7 +39,7 @@ THE SOFTWARE. #include "crypt.h" #include "config.h" -#define PIANO_PROTOCOL_VERSION "28" +#define PIANO_PROTOCOL_VERSION "29" #define PIANO_RPC_HOST "www.pandora.com" #define PIANO_RPC_PORT "80" #define PIANO_RPC_PATH "/radio/xmlrpc/v" PIANO_PROTOCOL_VERSION "?" @@ -124,7 +124,6 @@ void PianoDestroyPlaylist (PianoSong_t *playlist) { free (curSong->musicId); free (curSong->title); free (curSong->userSeed); - free (curSong->identity); free (curSong->stationId); free (curSong->album); free (curSong->artistMusicId); @@ -282,17 +281,24 @@ PianoReturn_t PianoRequest (PianoHandle_t *ph, PianoRequest_t *req, assert (reqData->station->id != NULL); assert (reqData->format != PIANO_AF_UNKNOWN); - /* FIXME: remove static, "magic" numbers */ snprintf (xmlSendBuf, sizeof (xmlSendBuf), "<?xml version=\"1.0\"?>" "<methodCall><methodName>playlist.getFragment</methodName>" "<params><param><value><int>%lu</int></value></param>" + /* auth token */ "<param><value><string>%s</string></value></param>" + /* station id */ "<param><value><string>%s</string></value></param>" + /* total listening time */ "<param><value><string>0</string></value></param>" + /* time since last session */ "<param><value><string></string></value></param>" + /* tracking code */ "<param><value><string></string></value></param>" + /* audio format */ "<param><value><string>%s</string></value></param>" + /* delta listening time */ "<param><value><string>0</string></value></param>" + /* listening timestamp */ "<param><value><string>0</string></value></param>" "</params></methodCall>", (unsigned long) timestamp, ph->user.authToken, reqData->station->id, @@ -368,8 +374,11 @@ PianoReturn_t PianoRequest (PianoHandle_t *ph, PianoRequest_t *req, snprintf (xmlSendBuf, sizeof (xmlSendBuf), "<?xml version=\"1.0\"?>" "<methodCall><methodName>station.setStationName</methodName>" "<params><param><value><int>%lu</int></value></param>" + /* auth token */ "<param><value><string>%s</string></value></param>" + /* station id */ "<param><value><string>%s</string></value></param>" + /* new name */ "<param><value><string>%s</string></value></param>" "</params></methodCall>", (unsigned long) timestamp, ph->user.authToken, reqData->station->id, @@ -393,7 +402,9 @@ PianoReturn_t PianoRequest (PianoHandle_t *ph, PianoRequest_t *req, snprintf (xmlSendBuf, sizeof (xmlSendBuf), "<?xml version=\"1.0\"?>" "<methodCall><methodName>station.removeStation</methodName>" "<params><param><value><int>%lu</int></value></param>" + /* auth token */ "<param><value><string>%s</string></value></param>" + /* station id */ "<param><value><string>%s</string></value></param>" "</params></methodCall>", (unsigned long) timestamp, ph->user.authToken, station->id); @@ -419,7 +430,9 @@ PianoReturn_t PianoRequest (PianoHandle_t *ph, PianoRequest_t *req, snprintf (xmlSendBuf, sizeof (xmlSendBuf), "<?xml version=\"1.0\"?>" "<methodCall><methodName>music.search</methodName>" "<params><param><value><int>%lu</int></value></param>" + /* auth token */ "<param><value><string>%s</string></value></param>" + /* search string */ "<param><value><string>%s</string></value></param>" "</params></methodCall>", (unsigned long) timestamp, ph->user.authToken, xmlencodedSearchStr); @@ -487,12 +500,23 @@ PianoReturn_t PianoRequest (PianoHandle_t *ph, PianoRequest_t *req, "<methodCall><methodName>listener.addTiredSong</methodName><params>" "<param><value><int>%lu</int></value></param>" "<param><value><string>%s</string></value></param>" + /* key */ + "<param><value><string>%s</string></value></param>" + /* user seed */ + "<param><value><string>%s</string></value></param>" + /* station id */ "<param><value><string>%s</string></value></param>" "</params></methodCall>", (unsigned long) timestamp, - ph->user.authToken, song->identity); + ph->user.authToken, + (song->musicId == NULL) ? "" : song->musicId, + (song->userSeed == NULL) ? "" : song->userSeed, + song->stationId); snprintf (req->urlPath, sizeof (req->urlPath), PIANO_RPC_PATH - "rid=%s&lid=%s&method=addTiredSong&arg1=%s", ph->routeId, - ph->user.listenerId, song->identity); + "rid=%s&lid=%s&method=addTiredSong&arg1=%s&arg2=%s&arg3=%s", + ph->routeId, ph->user.listenerId, + (song->musicId == NULL) ? "" : song->musicId, + (song->userSeed == NULL) ? "" : song->userSeed, + song->stationId); break; } @@ -507,6 +531,7 @@ PianoReturn_t PianoRequest (PianoHandle_t *ph, PianoRequest_t *req, "<methodCall><methodName>station.setQuickMix</methodName><params>" "<param><value><int>%lu</int></value></param>" "<param><value><string>%s</string></value></param>" + /* quick mix type */ "<param><value><string>RANDOM</string></value></param>" "<param><value><array><data>", (unsigned long) timestamp, ph->user.authToken); @@ -533,7 +558,9 @@ PianoReturn_t PianoRequest (PianoHandle_t *ph, PianoRequest_t *req, } strncat (xmlSendBuf, "</data></array></value></param>" + /* content type */ "<param><value><string>CUSTOM</string></value></param>" + /* genre */ "<param><value><string></string></value></param>" "</params></methodCall>", sizeof (xmlSendBuf) - strlen (xmlSendBuf) - 1); @@ -560,7 +587,9 @@ PianoReturn_t PianoRequest (PianoHandle_t *ph, PianoRequest_t *req, snprintf (xmlSendBuf, sizeof (xmlSendBuf), "<?xml version=\"1.0\"?>" "<methodCall><methodName>station.transformShared</methodName>" "<params><param><value><int>%lu</int></value></param>" + /* auth token */ "<param><value><string>%s</string></value></param>" + /* station id */ "<param><value><string>%s</string></value></param>" "</params></methodCall>", (unsigned long) timestamp, ph->user.authToken, station->id); @@ -580,8 +609,11 @@ PianoReturn_t PianoRequest (PianoHandle_t *ph, PianoRequest_t *req, snprintf (xmlSendBuf, sizeof (xmlSendBuf), "<?xml version=\"1.0\"?>" "<methodCall><methodName>playlist.narrative</methodName>" "<params><param><value><int>%lu</int></value></param>" + /* auth token */ "<param><value><string>%s</string></value></param>" + /* station id */ "<param><value><string>%s</string></value></param>" + /* music id */ "<param><value><string>%s</string></value></param>" "</params></methodCall>", (unsigned long) timestamp, ph->user.authToken, reqData->song->stationId, @@ -604,8 +636,11 @@ PianoReturn_t PianoRequest (PianoHandle_t *ph, PianoRequest_t *req, snprintf (xmlSendBuf, sizeof (xmlSendBuf), "<?xml version=\"1.0\"?>" "<methodCall><methodName>music.getSeedSuggestions</methodName>" "<params><param><value><int>%lu</int></value></param>" + /* auth token */ "<param><value><string>%s</string></value></param>" + /* seed music id */ "<param><value><string>%s</string></value></param>" + /* max */ "<param><value><int>%u</int></value></param>" "</params></methodCall>", (unsigned long) timestamp, ph->user.authToken, reqData->musicId, reqData->max); @@ -624,8 +659,11 @@ PianoReturn_t PianoRequest (PianoHandle_t *ph, PianoRequest_t *req, snprintf (xmlSendBuf, sizeof (xmlSendBuf), "<?xml version=\"1.0\"?>" "<methodCall><methodName>station.createBookmark</methodName>" "<params><param><value><int>%lu</int></value></param>" + /* auth token */ "<param><value><string>%s</string></value></param>" + /* station id */ "<param><value><string>%s</string></value></param>" + /* music id */ "<param><value><string>%s</string></value></param>" "</params></methodCall>", (unsigned long) timestamp, ph->user.authToken, song->stationId, song->musicId); @@ -645,7 +683,9 @@ PianoReturn_t PianoRequest (PianoHandle_t *ph, PianoRequest_t *req, snprintf (xmlSendBuf, sizeof (xmlSendBuf), "<?xml version=\"1.0\"?>" "<methodCall><methodName>station.createArtistBookmark</methodName>" "<params><param><value><int>%lu</int></value></param>" + /* auth token */ "<param><value><string>%s</string></value></param>" + /* music id */ "<param><value><string>%s</string></value></param>" "</params></methodCall>", (unsigned long) timestamp, ph->user.authToken, song->artistMusicId); diff --git a/libpiano/src/piano.h b/libpiano/src/piano.h index 6dac931..52cfa75 100644 --- a/libpiano/src/piano.h +++ b/libpiano/src/piano.h @@ -70,7 +70,6 @@ typedef struct PianoSong { char *audioUrl; char *musicId; char *title; - char *identity; float fileGain; PianoSongRating_t rating; PianoAudioFormat_t audioFormat; diff --git a/libpiano/src/xml.c b/libpiano/src/xml.c index cfbfe85..36afc87 100644 --- a/libpiano/src/xml.c +++ b/libpiano/src/xml.c @@ -267,8 +267,6 @@ static void PianoXmlParsePlaylistCb (const char *key, const ezxml_t value, song->userSeed = strdup (valueStr); } else if (strcmp ("songTitle", key) == 0) { song->title = strdup (valueStr); - } else if (strcmp ("identity", key) == 0) { - song->identity = strdup (valueStr); } else if (strcmp ("rating", key) == 0) { if (strcmp (valueStr, "1") == 0) { song->rating = PIANO_RATE_LOVE; |