# FP ARITHMETICS - CURVE: NIST256, Modulo = ffffffff00000001000000000000000000000000ffffffffffffffffffffffff; BIGmax = 2^256

#test1
FP_1 = 0C8207
FP_2 = 014BD6F9
FPadd = 01585900
FPsub = FFFFFFFF00000001000000000000000000000000FFFFFFFFFFFFFFFFFEC0AB0D
FP_1nres = 0C8207
FP_2nres = 014BD6F9
FPmulmod = 10369FE952CF
FPsmallmul = 7D1446
FPsqr = 9C72B31C31
FPreduce = 0C8207
FPneg = FFFFFFFF00000001000000000000000000000000FFFFFFFFFFFFFFFFFFF37DF8
FPdiv2 = 7FFFFFFF80000000800000000000000000000000800000000000000000064103
FPinv = AE1A00BD7080DF94BD0C60F3CBA8CF19EE463C21A5DFE5AFC9A64146887AFC0D
FPexp = 9CAD738B7461C8D1E38DD5707B056E15655B4B1350005445F16504B0B52F38A8

#test2
FP_1 = 05FA172F
FP_2 = 0E28901C2C13F6
FPadd = 0E289022262B25
FPsub = FFFFFFFF00000001000000000000000000000000FFFFFFFFFFF1D76FE9CE0338
FP_1nres = 05FA172F
FP_2nres = 0E28901C2C13F6
FPmulmod = 549FB586C46C6E1EC42A
FPsmallmul = 3BC4E7D6
FPsqr = 23B9391FE57AA1
FPreduce = 05FA172F
FPneg = FFFFFFFF00000001000000000000000000000000FFFFFFFFFFFFFFFFFA05E8D0
FPdiv2 = 7FFFFFFF80000000800000000000000000000000800000000000000002FD0B97
FPinv = 2C563C6BB46902EB55B8A36AD20DCE817DBBB8BB0F45B8B5CF9A6E6EE32E62E8
FPexp = 0975D8C5CB9061CDE67C7D98054E88D1B090182892E8884601031045DDDBA4E1

#test3
FP_1 = 02F05E155174813BDC9B
FP_2 = 0D8D0109F41C57E159C0
FPadd = 107D5F1F4590D91D365B
FPsub = FFFFFFFF00000001000000000000000000000000FFFFF5635D0B5D58295A82DA
FP_1nres = 02F05E155174813BDC9B
FP_2nres = 0D8D0109F41C57E159C0
FPmulmod = 27D32DF47F98C56C01CFA8B5E262D84DD25740
FPsmallmul = 1D63ACD52E8D0C569E0E
FPsqr = 08A328DFD2360F45A02741468564CBA38CC5D9
FPreduce = 02F05E155174813BDC9B
FPneg = FFFFFFFF00000001000000000000000000000000FFFFFD0FA1EAAE8B7EC42364
FPdiv2 = 7FFFFFFF80000000800000000000000000000000800001782F0AA8BA409DEE4D
FPinv = E9E6A2385598B376FBEDA42FFDC6863041986181C8F64513D666723079346301
FPexp = E19DB9B34A1E4BFE2E9493CD069DAE5B88EA50D0B5D102DF26D4BB99608CBE57

#test4
FP_1 = 0C7E3D884E881C8E
FP_2 = 59352B2A053B183796281E7676
FPadd = 59352B2A054796751E76A69304
FPsub = FFFFFFFF00000000FFFFFFFFFFFFFFFFFFFFFFA7CAD4D5FAD16605F22669A617
FP_1nres = 0C7E3D884E881C8E
FP_2nres = 59352B2A053B183796281E7676
FPmulmod = 045A7BA261D2EB236AB138230B1DFEE6A4788A9D74
FPsmallmul = 7CEE675311511D8C
FPsqr = 9C140568544EA9D2193CA4E20F5EC4
FPreduce = 0C7E3D884E881C8E
FPneg = FFFFFFFF00000001000000000000000000000000FFFFFFFFF381C277B177E371
FPdiv2 = 063F1EC427440E47
FPinv = A6301B0E75AC524FE4C4443DD5FFDED9B3E9055331ACE89E99D1C3510DEC0EC7
FPexp = 10F26ACDF19445515CC6253385FCAD2C06912441BF467B8864883B4A33C5DE72

#test5
FP_1 = D7D9
FP_2 = 39B524D30AE251A7487414851BAA8521
FPadd = 39B524D30AE251A7487414851BAB5CFA
FPsub = FFFFFFFF00000000FFFFFFFFFFFFFFFFC64ADB2DF51DAE58B78BEB7AE45652B7
FP_1nres = D7D9
FP_2nres = 39B524D30AE251A7487414851BAA8521
FPmulmod = 30A80C7975084C6AB4A5E7A12F10A9598FF9
FPsmallmul = 086E7A
FPsqr = B5FE35F1
FPreduce = D7D9
FPneg = FFFFFFFF00000001000000000000000000000000FFFFFFFFFFFFFFFFFFFF2826
FPdiv2 = 7FFFFFFF80000000800000000000000000000000800000000000000000006BEC
FPinv = 5CFDD3C1213437A6DB0D7A2316ED9F0D4F70B6B90EEE8C419ECFA31EA3294FC1
FPexp = 2F417052766BD036DA6592D261F3C1AE8A76F5AC4523B93CFC92637043DFDF5C

#test6
FP_1 = 010044E250FFC48A6BD05D
FP_2 = 0123B3F8CBC8643DD828391FCDECEE3F4C6B210E
FPadd = 0123B3F8CBC8643DD8293964B03DEE03D6D6F16B
FPsub = FFFFFFFF00000000FFFFFFFFFEDC4C0734379BC327D8C725146411853E00AF4E
FP_1nres = 010044E250FFC48A6BD05D
FP_2nres = 0123B3F8CBC8643DD828391FCDECEE3F4C6B210E
FPmulmod = 012402767B0BD7576709F4461CC9343A35C5A7CC1449EC9EEC662AA06216
FPsmallmul = 0A02B0D729FDAD683623A2
FPsqr = 010089D72B02A4127908C6B3557728BE741B5541C9
FPreduce = 010044E250FFC48A6BD05D
FPneg = FFFFFFFF00000001000000000000000000000000FFFEFFBB1DAF003B75942FA2
FPdiv2 = 7FFFFFFF800000008000000000000000000000008000802271287FE24535E82E
FPinv = 80441CDEC4D2C09FFAAC3C148404BD99C7F3E705C1E2DA71482658CE97FBEF63
FPexp = 9BD4C5C3EACC95EAE482C38E1D79A35823870ADD23378E12B099B6381435151F

#test7
FP_1 = 0377E04D4E5EA8F2F8221F24
FP_2 = 0D2BEB6805B88321FEA4DB19A2FD73FC4D86E0EE706CA2
FPadd = 0D2BEB6805B88321FEA4DB1D1ADDC14AAC2FD3E6928BC6
FPsub = FFFFFFFF00000000FFF2D41497FA477CDE015B25E9D4E2D95211221209B1B281
FP_1nres = 0377E04D4E5EA8F2F8221F24
FP_2nres = 0D2BEB6805B88321FEA4DB19A2FD73FC4D86E0EE706CA2
FPmulmod = B70DD29424FA8E3A8432B646E654A35D6C4359044AA6A5091C25C9D0827B1276
FPsmallmul = 22AEC3050FB2997DB1553768
FPsqr = 0C07641C3C7474A84C22CD57A08BF7A85440F20959BD10
FPreduce = 0377E04D4E5EA8F2F8221F24
FPneg = FFFFFFFF00000001000000000000000000000000FC881FB2B1A1570D07DDE0DB
FPdiv2 = 01BBF026A72F54797C110F92
FPinv = A3173EC40F70E0D140926563581F0BB5657C9A522C22633E6E4E6844176AD57B
FPexp = A07EB05E94FED47DFCB40AE6D657AE1497F48D17BB1455E0C4BF5C1F397927C2

#test8
FP_1 = 0E9A743145B3672457CDBD9CA12F0D
FP_2 = 1C7062C2CCA08B6BA4E6F8F0D2BA9E437C53C0A2B4691ACE9F9C
FPadd = 1C7062C2CCA08B6BA4E6F8FF6D2ECF892FBAE4FA8226B76FCEA9
FPsub = FFFFFFFEFFFFE3909D3D335F74945B19071DC7BA9302371363B5195481D28F70
FP_1nres = 0E9A743145B3672457CDBD9CA12F0D
FP_2nres = 1C7062C2CCA08B6BA4E6F8F0D2BA9E437C53C0A2B4691ACE9F9C
FPmulmod = B639EF269FF8B4BD213169BC9B258E9734540E82652CCF62377FE71BBD7A87DE
FPsmallmul = 920889ECB902076B6E09681E4BD682
FPsqr = D541E563A42BC66874C31450618FCDF24698C90E8A6E0522060EFFC6A9
FPreduce = 0E9A743145B3672457CDBD9CA12F0D
FPneg = FFFFFFFF00000000FFFFFFFFFFFFFFFFFFF1658CCEBA4C98DBA83242635ED0F2
FPdiv2 = 7FFFFFFF80000000800000000000000000074D3A98A2D9B3922BE6DECE509786
FPinv = 5CA5D1F7D01646DED636148DA3B09F9CB11926DF17040E69F35FD91E8D7B311C
FPexp = 2861D14FEB951CAA64587D7028F9F82D4240F9C9FE983CCAAA52B459F816B234

#test9
FP_1 = 2C
FP_2 = 30C812B2BDF6A555EA88D3C1C4486FC6DD1D352A092D15DB57973DDE37
FPadd = 30C812B2BDF6A555EA88D3C1C4486FC6DD1D352A092D15DB57973DDE63
FPsub = FFFFFFCE37ED4D43095AAA15772C3E3BB7903923E2CAD5F6D2EA24A868C221F4
FP_1nres = 2C
FP_2nres = 30C812B2BDF6A555EA88D3C1C4486FC6DD1D352A092D15DB57973DDE37
FPmulmod = 08626336B8A6646AC44F84654DBC73362E0105233993BFC1B30DFEA23174
FPsmallmul = 01B8
FPsqr = 0790
FPreduce = 2C
FPneg = FFFFFFFF00000001000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFD3
FPdiv2 = 16
FPinv = 4BA2E8B9E2E8BA2ED745D1745D1745D1745D17461D1745D1745D1745D1745D17
FPexp = FEDA7EF53BDA16CBAAA033898F6C07CC5BD8E674956F7B1A98ECAAC2000AE5AC

#test10
FP_1 = 03E4E4A3C7C23546B5472C5C
FP_2 = 55452904E7F74DE3E827EA818A4B701787745BE3F56D6FEF0B84EE5230EC6A42
FPadd = 55452904E7F74DE3E827EA818A4B701787745BE3F9525492D3472398E633969E
FPsub = AABAD6FA1808B21D17D8157E75B48FE8788BA41D0E7774B4BC3D46F4845AC219
FP_1nres = 03E4E4A3C7C23546B5472C5C
FP_2nres = 55452904E7F74DE3E827EA818A4B701787745BE3F56D6FEF0B84EE5230EC6A42
FPmulmod = B18491959B9B62FAF8D933DBD6F60C8D30AEFEAA5A4203DF1744B1D9DA13A11A
FPsmallmul = 26F0EE65CD9614C314C7BB98
FPsqr = 0F2A03E69E83C87A47DEEB839C1E955F1812D3BAB7C110
FPreduce = 03E4E4A3C7C23546B5472C5C
FPneg = FFFFFFFF00000001000000000000000000000000FC1B1B5C383DCAB94AB8D3A3
FPdiv2 = 01F27251E3E11AA35AA3962E
FPinv = C8BCF6BD315B156A49BCFD7DE6806BC5445F6A0AA4FF4A0119DF2405D2DD87EE
FPexp = FF42D9BCF1FC41371CE1FD37182D5AF6FCD88EC5465E190EBB00DBCEBCE1E2C7
