# FP ARITHMETICS - 384PM, Modulo = 0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec3;

#test1
FP_1 = 2A9FFD6529
FP_2 = 455E41B91C
FPadd = 6FFE3F1E45
FPsub = FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE541BBAAD0
FP_1nres = 2A9FFD6529
FP_2nres = 455E41B91C
FPmulmod = 0B8CD0FCC0D05B3AB17C
FPsmallmul = 01AA3FE5F39A
FPsqr = 0718E321EFEE09036091
FPreduce = 2A9FFD6529
FPneg = FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD56002999A
FPdiv2 = 80000000000000000000000000000000000000000000000000000000000000000000000000000000000000154FFEB1F6
FPinv = 40535BE4746F8AF96E32EC7C2739CC10EC119AD8DE956CD66BA6C3199FEBB207E4E1DACB2F993A6D750365D3858DF402
FPexp = 6BA24CE422988D5DD6016C447F0E6DDB2856FF6233E663A787D88B58CE15E41DDB48727C93F6800D20E0A14F6C905F60

#test2
FP_1 = 1EEB364BAA1C
FP_2 = 1A46AEA7FC7DF31E6685
FPadd = 1A46AEA81B69296A10A1
FPsub = FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE5B95158226D432D425A
FP_1nres = 1EEB364BAA1C
FP_2nres = 1A46AEA7FC7DF31E6685
FPmulmod = 032C6CECB0CDF44BEF2596D7DE5E888C
FPsmallmul = 0135301EF4A518
FPsqr = 03BBF8D6764CE188ED713310
FPreduce = 1EEB364BAA1C
FPneg = FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE114C9B454A7
FPdiv2 = 0F759B25D50E
FPinv = 5A54BFCFED653F548031090EE3B82C09AAEE6DB0A49D90C721056121C62D5A4812DFD15853649F492854D06648AA1847
FPexp = 3E22B82639A9C5BF3089FB12FB272E59D4908FA12BABDEF047AD31E857CF733C6C37ECB74DCDBDB36607DC5CEAF7B95D

#test3
FP_1 = 99AF18FA41E1FDFD23
FP_2 = 07EF0CD29DDDDE0C6D4F850E80FE3D
FPadd = 07EF0CD29DDE77BB8649C6F07EFB60
FPsub = FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF810F32D6222BBA2ABAABCD37CFDA9
FP_1nres = 99AF18FA41E1FDFD23
FP_2nres = 07EF0CD29DDDDE0C6D4F850E80FE3D
FPmulmod = 04C34BD9CF047C160682D890391CBFDA728732F2562E0B57
FPsmallmul = 0600D6F9C692D3EBE35E
FPsqr = 5C42C39E4B561590F1E3ED735ABBD77C32C9
FPreduce = 99AF18FA41E1FDFD23
FPneg = FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6650E705BE1E0201A0
FPdiv2 = 8000000000000000000000000000000000000000000000000000000000000000000000000000004CD78C7D20F0FEFDF3
FPinv = ACEEBA94F6234D2CCC984F3AA4FF1F8C9285D02DE194009AD2BFC3BD38730CD19E827AAB1D572D7116C2B1DC6B87B41E
FPexp = 6493FFA28A47B58707EA538538982B6E72D6CC37F3BC8F9CF596B32DA85B38BE5D046363B3AB63DFEDF8C51A67743D13

#test4
FP_1 = 021268807BC625D5D141F25398
FP_2 = 029C8E19E470D39B577719D2B76F0CC1AD454526
FPadd = 029C8E19E470D39D69DF9A4E7D94E292EF3798BE
FPsub = FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD6371E61B8F2C66BAF166A90EB6C90F94AD0D35
FP_1nres = 021268807BC625D5D141F25398
FP_2nres = 029C8E19E470D39B577719D2B76F0CC1AD454526
FPmulmod = 05692F1ADFC1154DB3588252A2495216B7D7814BE76EA6D6A1BAD23C5A786090
FPsmallmul = 14B81504D5BD7A5A2C937743F0
FPsqr = 044AF4DEA92581AA1206A03C64310A203547B4620556ABEA40
FPreduce = 021268807BC625D5D141F25398
FPneg = FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFDED977F8439DA2A2EBE0DAB2B
FPdiv2 = 010934403DE312EAE8A0F929CC
FPinv = CBDD8CBA71056A0A0084DF6DDE4927C747CBE407D396CF62C85BAD85154CB787E399F815FCAE9AE40458F0031F9DF92A
FPexp = 04866E1D41C3613DC3D289F8F98BDB4316498604B1B90CECE5015E0A9BDF16E4D35D9AD80337C18019BA8C8055C849DB

#test5
FP_1 = 5CF1F5CFD164609E37B9DC7A78E695FE
FP_2 = C4D40F58230A2956474DF4E5ECCAC10B7B36E94037A85BA8
FPadd = C4D40F58230A2956A43FEAB5BE2F21A9B2F0C5BAB08EF1A6
FPsub = FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3B2BF0A7DCF5D6AA15A400E9E4999F92BC82F33A413E3919
FP_1nres = 5CF1F5CFD164609E37B9DC7A78E695FE
FP_2nres = C4D40F58230A2956474DF4E5ECCAC10B7B36E94037A85BA8
FPmulmod = 47763E24D9B6B2DF19241AB7E4127789A4D918EC6A6A30CBF3A36BB27B7CF741696EC8654F53B8B0
FPsmallmul = 03A1739A1E2DEBC62E2D429CC8B901DBEC
FPsqr = 21BECD5E1BCFD3EE0E7AA60EFB2266364C3B17591E6831A3B3C88267FC49A804
FPreduce = 5CF1F5CFD164609E37B9DC7A78E695FE
FPneg = FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA30E0A302E9B9F61C8462385871968C5
FPdiv2 = 2E78FAE7E8B2304F1BDCEE3D3C734AFF
FPinv = FB4E5DF5625710CA34DCF66658AFDFA8422B1C21A09EA36AEA7292984575C011B7EBF4D8F473EE7CBA5AFEF0F466221A
FPexp = 2846E55D4EDAD623FB5D423E96E44F967AE6C5D706E320E3F16B155BA056679BBEF63418F96D4DFB627665DDE6D8EE7B

#test6
FP_1 = 0CE923E0CFED52FA9680CA73EB
FP_2 = 3C5A587191240AEBF327992E097954969AC03C68C9EF652E76910CDC96
FPadd = 3C5A587191240AEBF327992E09795496A7A9604999DCB8290D11D75081
FPsub = FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC3A5A78E6EDBF5140CD866D1F686AB697228E77805FDEDCC1FEFBD9618
FP_1nres = 0CE923E0CFED52FA9680CA73EB
FP_2nres = 3C5A587191240AEBF327992E097954969AC03C68C9EF652E76910CDC96
FPmulmod = 030B32D52C54B53FA6B78A3D5048F8F2B490A0E26BE11162D772E7DECE5A356863BA3AD58854FC41DFB2
FPsmallmul = 811B66C81F453DC9E107E8872E
FPsqr = A6AFAF67BFFC0FF7256D4DFC0C32B05E63F8FDE76A2358F9B9
FPreduce = 0CE923E0CFED52FA9680CA73EB
FPneg = FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF316DC1F3012AD05697F358AD8
FPdiv2 = 8000000000000000000000000000000000000000000000000000000000000000000000067491F067F6A97D4B40653957
FPinv = 7CBDC6E16B83C6957E2E8F0A0996E01A8C6E9672F5FCE108532E306F9EFDBBFFE9F98E7D4ED6BE8B15E83FCFF3347048
FPexp = AB42F1EA54BF1BD698DE5B89499614ADE6238F398E56B95CDB00CA4C1E7ECF7CDD382B12BE5DF6B2DCA45D624F836398

#test7
FP_1 = 0AEA7F571A9299C90D6199976830E0FA
FP_2 = 075DF06B13308A55817FFDCB694988E92DF6496B3917D6EE534D6A6D8E1597DDBA16
FPadd = 075DF06B13308A55817FFDCB694988E92DF65455B86EF180ED1677CF27AD000E9B10
FPsub = FFFFFFFFFFFFFFFFFFFFFFFFFFFFF8A20F94ECCF75AA7E80023496B67716D209C17F463F43A4467BA2F40B81D05325A7
FP_1nres = 0AEA7F571A9299C90D6199976830E0FA
FP_2nres = 075DF06B13308A55817FFDCB694988E92DF6496B3917D6EE534D6A6D8E1597DDBA16
FPmulmod = 6AEC0C9505194E2F03B41FCAF40724FB4062BD426E0E7DE3A33544076F8226067100C66ACCAA5239ED641C1E257B5C8C
FPsmallmul = 6D28F96709BA01DA85CFFFEA11E8C9C4
FPsqr = 7728BFD8A792055F94338B2815EFA2C0E2F47A904C5C8E626FFB0C43767424
FPreduce = 0AEA7F571A9299C90D6199976830E0FA
FPneg = FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF51580A8E56D6636F29E666897CF1DC9
FPdiv2 = 05753FAB8D494CE486B0CCCBB418707D
FPinv = C82C3CE7B814F92EB7539EC349A45A7AABA7CF8EEA7A0E992E40AA5BA94C777CCB9F9BC9FA5F77A546BF0283081ABE8E
FPexp = 7069A179BC0C1A282371C7D7BC188AD2DC4AF0574BFD2F7D3F5E43A9CCBEC67D2F363F9F2B3EEA1FAE34AEF40802501B

#test8
FP_1 = 014E3B
FP_2 = 01344FE5B4CE22D13BC0E3FC831A579C173EA7AC21B63F36B0B10DC08323D6A87F35A9C801A871
FPadd = 01344FE5B4CE22D13BC0E3FC831A579C173EA7AC21B63F36B0B10DC08323D6A87F35A9C802F6AC
FPsub = FFFFFFFFFFFFFFFFFFFECBB01A4B31DD2EC43F1C037CE5A863E8C15853DE49C0C94F4EF23F7CDC295780CA5637FFA48D
FP_1nres = 014E3B
FP_2nres = 01344FE5B4CE22D13BC0E3FC831A579C173EA7AC21B63F36B0B10DC08323D6A87F35A9C801A871
FPmulmod = 0192874C1BD59CEF022E6EE7FE3E955FD74D1A3338A78B79EC21B8BF5676FB524ECD54E1134225400B
FPsmallmul = 0D0E4E
FPsqr = 01B45E0199
FPreduce = 014E3B
FPneg = FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEB088
FPdiv2 = 80000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000A67F
FPinv = 01FEE189FAC9BC2C2C5114EF45A3383EE0F6EB6062B5D8368C9773CF2EF2577D9334F1485928F7FF1D483D96143E5716
FPexp = 68E2CD50FFEFE5BCA5527BF722388C3657BF7EC7722C17E7D37AFA8B675FDCB85A9AC6B5FDCEDC3470DE38DF8892CEDE

#test9
FP_1 = 1E2D99D469D5C546EFCD721028687C35651363A8899A077A51BBC7C62225CE24
FP_2 = 026233F63D0A5DDF3340D07B9C728C4BB2D56905C41C869D475E6FC9E656287CB73BF0F63C3A0B7691331A08
FPadd = 026233F63D0A5DDF3340D07BBAA026201CAB2E4CB3E9F8AD6FC6EBFF4B698C2540D5F8708DF5D33CB358E82C
FPsub = FFFFFFFFFD9DCC09C2F5A220CCBF2F8481BB0D88B7005C412BB0EB72E10A0C6B7EBD3B2BD25E16841581BC4F90F2B2DF
FP_1nres = 1E2D99D469D5C546EFCD721028687C35651363A8899A077A51BBC7C62225CE24
FP_2nres = 026233F63D0A5DDF3340D07B9C728C4BB2D56905C41C869D475E6FC9E656287CB73BF0F63C3A0B7691331A08
FPmulmod = 9D4EF0B4936E5180395E2094C5E42E1AE52F7C1A7BA496CEA5A015F7A499A46BD2901AC6313DAF323037DA1A943DF3B3
FPsmallmul = 012DC8024C2259B4C55E0674A19414DA15F2C1E49560044AC73155CDBD557A0D68
FPsqr = 468D121090F5669147D48ACFA31175D78264A71034A9494AF178FEB3ECCBD050290DA03EB974E0331DA20D9FE2370997
FPreduce = 1E2D99D469D5C546EFCD721028687C35651363A8899A077A51BBC7C62225CE24
FPneg = FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE1D2662B962A3AB910328DEFD79783CA9AEC9C577665F885AE443839DDDA309F
FPdiv2 = 0F16CCEA34EAE2A377E6B90814343E1AB289B1D444CD03BD28DDE3E31112E712
FPinv = 9EF287139338690813E210739BBF8DAE8373733F995846614ABBBC746704AAFD8F711B2A52F29723727A3248CB15D9D8
FPexp = A33E2FC40535830405AD58185A604B369BDADBDA13D5EF7AB7747F7B0680E55315887B8B2272CE13C552B9B28D5EB8D7

#test10
FP_1 = 0387B9454F9E9443CF851E0138A6BE14A9D220E6B7549CE67663E5C127E0BA06411A7F1203E542BAA40A
FP_2 = 811E78A2D0D2F30DDA3A10BD11917FA942F8E12D9E12E5004EE71CEF316E4BAE5BA1A701523D9B2AD0DC9C941929BE08
FPadd = 811E78A2D0D2F695937F605BA5D54F2E60FA19D45C278ED26FCDD443CE54C2124162CEE20C43DC454FEEA0795BE46212
FPsub = 7EE1875D2F2D1079DF0B3EE182B24FDBDB0857792001C4D1D1FF9A656B782AB58A1F80DF67C8A5EFAE3567512990E4C5
FP_1nres = 0387B9454F9E9443CF851E0138A6BE14A9D220E6B7549CE67663E5C127E0BA06411A7F1203E542BAA40A
FP_2nres = 811E78A2D0D2F30DDA3A10BD11917FA942F8E12D9E12E5004EE71CEF316E4BAE5BA1A701523D9B2AD0DC9C941929BE08
FPmulmod = 346BF03A043DACBFE41DCE661CD61B8603CE39DEF4A7CB51CBF818D1C3B22AFF45177CDF95BD4E635577EA54664093FC
FPsmallmul = 234D3CB51C31CAA61B332C0C36836CCEA2354903294E21009FE6F98B8EC7443E8B08F6B426F49B4A6864
FPsqr = A112192350DC7021C02D3F9B83B4E4DB65EE090094CB55338E55EE7AFF02C9242471C080DD544D2C22454C88B0CD04D4
FPreduce = 0387B9454F9E9443CF851E0138A6BE14A9D220E6B7549CE67663E5C127E0BA06411A7F1203E542BAA40A
FPneg = FFFFFFFFFFFFFC7846BAB0616BBC307AE1FEC75941EB562DDF1948AB6319899C1A3ED81F45F9BEE580EDFC1ABD455AB9
FPdiv2 = 01C3DCA2A7CF4A21E7C28F009C535F0A54E910735BAA4E733B31F2E093F05D03208D3F8901F2A15D5205
FPinv = 262F255F11C62645FB624C1647B1867123CBC062038CB8BC56D719104ABDBBD1331E8CB29AB3634AF18B15E705228921
FPexp = 058997A2AAC8D4E69DDD7D786E9D574F96E266106BC0C7540EA4290B6A0581032FA53162C787BCED178DF6E49BDDF69B
