# FP ARITHMETICS - CURVE: BN454, Modulo = 3f80ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff; BIGmax = 2^256

#test1
FP_1 = 41E9
FP_2 = 03694387
FPadd = 03698570
FPsub = 3F80FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC96FE61
FP_1nres = 41E9
FP_2nres = 03694387
FPmulmod = E0D4F3BCDF
FPsmallmul = 02931A
FPsqr = 10F82611
FPreduce = 41E9
FPneg = 3F80FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFBE16
FPdiv2 = 1FC08000000000000000000000000000000000000000000000000000000020F4
FPinv = 1D460A60B518522C26A89F9C78778E831E2D6CEBC6871F92C2A8AF25C3768A47
FPexp = 2FB7B4FF3F9207CBBAE8C6B1C35E806DE80700E86F70908A02E6D70A6255DB5E

#test2
FP_1 = 08267B9337
FP_2 = 0B655EF7D69617
FPadd = 0B65671E52294E
FPsub = 3F80FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF49AA92EA4FD1F
FP_1nres = 08267B9337
FP_2nres = 0B655EF7D69617
FPmulmod = 5CE18419C7EED0FE5673F1
FPsmallmul = 5180D3C026
FPsqr = 426D821ECB1F8235D1
FPreduce = 08267B9337
FPneg = 3F80FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7D9846CC8
FPdiv2 = 1FC08000000000000000000000000000000000000000000000000004133DC99B
FPinv = 30F87B437B44CA931B260A20D2BEAD52F48B3ED0E9FCF2484AF57F525111F848
FPexp = 151BE47A21E2D556A4FE01B0E3484F546E228AF1173B18F93953235FDD59A2EE

#test3
FP_1 = 590328A19D6D
FP_2 = 1FC44782A122E1DEE141
FPadd = 1FC44782FA260A807EAE
FPsub = 3F80FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE03BB87DB7E046C2BC2B
FP_1nres = 590328A19D6D
FP_2nres = 1FC44782A122E1DEE141
FPmulmod = 0B0BA133F9B34CB17B981D80ADEBC5AD
FPsmallmul = 037A1F96502642
FPsqr = 1EF3324A59B261C773E8E069
FPreduce = 590328A19D6D
FPneg = 3F80FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA6FCD75E6292
FPdiv2 = 1FC08000000000000000000000000000000000000000000000002C819450CEB6
FPinv = D997C12317F2DE49B82F1E693F62DAB427DE2182125C930667CE4FD2058AA0
FPexp = 06EE1A68F5B8FCC1741610F696D332C87C9579F186A182C57BB7BEE603DBB5AA

#test4
FP_1 = 03D920633E5667
FP_2 = 1C88E7DB33293EEFB907258DE7
FPadd = 1C88E7DB332942C8D96A63E44E
FPsub = 3F80FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE3771824CCD6C4E9675C18C87F
FP_1nres = 03D920633E5667
FP_2nres = 1C88E7DB33293EEFB907258DE7
FPmulmod = 6DCE604747B37D28809903BD1D68B130B9B1F1
FPsmallmul = 267B43E06F6006
FPsqr = 0ECEEA3FCEAAF37DC1A10D5D71
FPreduce = 03D920633E5667
FPneg = 3F80FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC26DF9CC1A998
FPdiv2 = 1FC0800000000000000000000000000000000000000000000001EC90319F2B33
FPinv = 1A2CE831A2F1B54A69167617B16DFF44E6C3038E873BF940166DCDE55FD927BC
FPexp = 2DF1721320DB3EB90D8E9E4CE986239BAE1B8B5273E4A20228C759A3A3BB2522

#test5
FP_1 = 1236DC6D5C
FP_2 = 66E95044DFCEC5573D098ECD2F24568F
FPadd = 66E95044DFCEC5573D098EDF6600C3EB
FPsub = 3F80FFFFFFFFFFFFFFFFFFFFFFFFFFFF9916AFBB20313AA8C2F6714507B816CC
FP_1nres = 1236DC6D5C
FP_2nres = 66E95044DFCEC5573D098ECD2F24568F
FPmulmod = 075275783D91F5FF7FC0D9931A5210F259F6CDFE64
FPsmallmul = B6249C4598
FPsqr = 014BC2C11CDEF4D77910
FPreduce = 1236DC6D5C
FPneg = 3F80FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEDC92392A3
FPdiv2 = 091B6E36AE
FPinv = 2C4E2EA2763B7EBEB94272141A5F6CCF7A915D50462E11E239F47E2EDFF032EC
FPexp = 36273A3E2461A9632D792237C912399E739EDE7FF3A036805A666347A43CCD17

#test6
FP_1 = 0A123783F2A9
FP_2 = EB7A3093D6BAFC75E731E84C80126B3805A2CE
FPadd = EB7A3093D6BAFC75E731E84C801C7D6F899577
FPsub = 3F80FFFFFFFFFFFFFFFFFFFFFF1485CF6C2945038A18CE17B37FF7A6FF7E4FDA
FP_1nres = 0A123783F2A9
FP_2nres = EB7A3093D6BAFC75E731E84C80126B3805A2CE
FPmulmod = 0943878DCFF3FB613BD43DAE7836D5AFE4309DE315E10935FE
FPsmallmul = 64B62B277A9A
FPsqr = 656DA2298D4A0ADCF9F391
FPreduce = 0A123783F2A9
FPneg = 3F80FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5EDC87C0D56
FPdiv2 = 1FC080000000000000000000000000000000000000000000000005091BC1F954
FPinv = 31DF468855D59075A065DD3142D5B4DBAA042C31E9B4673418F13C93B7E1F329
FPexp = 1F6ABEA341EED984E2F4EF516C56B4095E0B01D0E216327A8DB9003C76844E5C

#test7
FP_1 = 53
FP_2 = 070E3F7541B0AD23EC9A551BB2B900BCBA3BD3FAAF852B
FPadd = 070E3F7541B0AD23EC9A551BB2B900BCBA3BD3FAAF857E
FPsub = 3F80FFFFFFFFFFFFFFF8F1C08ABE4F52DC1365AAE44D46FF4345C42C05507B27
FP_1nres = 53
FP_2nres = 070E3F7541B0AD23EC9A551BB2B900BCBA3BD3FAAF852B
FPmulmod = 02499E93044C4822A5B60997FAF1FB3D306165BA46E82CF1
FPsmallmul = 033E
FPsqr = 1AE9
FPreduce = 53
FPneg = 3F80FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFAC
FPdiv2 = 1FC0800000000000000000000000000000000000000000000000000000000029
FPinv = 39620F6BF3A9A3784A062B2E43DAFCEA68DE12818ACB90F6BF3A9A3784A062B2
FPexp = 2FA04DFA8E604868C01260AD2DF5D339DB0A69E32F6BE9C144FDA98A6128E7B7

#test8
FP_1 = D708C7335B3A4D257B1E1FA43D3E
FP_2 = 0DBD04CEB2BAAE4D105B49B2C02F6C3EBF01ED62B7B9E66B3874
FPadd = 0DBD04CEB2BAAE4D105B49B3973833721A3C3A8832D8060F75B2
FPsub = 3F80FFFFFFFFF242FB314D4551B2EFA4B64E16D95AF49C385FC2C364393904C9
FP_1nres = D708C7335B3A4D257B1E1FA43D3E
FP_2nres = 0DBD04CEB2BAAE4D105B49B2C02F6C3EBF01ED62B7B9E66B3874
FPmulmod = 0125F5DC17341BF0436148786014412B8DF73E4F382D2CC5F9A7EBDE3624D582
FPsmallmul = 086657C80190470376CF2D3C6A646C
FPsqr = B49FBEE55172835BE4D1CD7F6E16B038D59DBC5C412D1EBB8A169B04
FPreduce = D708C7335B3A4D257B1E1FA43D3E
FPneg = 3F80FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF28F738CCA4C5B2DA84E1E05BC2C1
FPdiv2 = 6B846399AD9D2692BD8F0FD21E9F
FPinv = 0B21E05B69F0751B57B37C9F1BE99DCD61AC702040B618E9F571BB1C2E747402
FPexp = 21509F7978038E7A23C75E169F42BA932C31A6440AA818B1AAD099EDA5E5FB32

#test9
FP_1 = 1AFAA53B6E6C
FP_2 = 6B0BF3F5590406FECCDCF118600D54390ECC8A20A98500C32826EF72F9
FPadd = 6B0BF3F5590406FECCDCF118600D54390ECC8A20A98500DE22CC2AE165
FPsub = 3F80FF94F40C0AA6FBF90133230EE79FF2ABC6F13375DF567AFF57D27E4BFB72
FP_1nres = 1AFAA53B6E6C
FP_2nres = 6B0BF3F5590406FECCDCF118600D54390ECC8A20A98500C32826EF72F9
FPmulmod = 3A62CDFE6E29D39FB7F964CAE6F522A9467FB61264AA6CCAA30A751F4CFBF960
FPsmallmul = 010DCA74525038
FPsqr = 02D7DEF7352745134D68FD90
FPreduce = 1AFAA53B6E6C
FPneg = 3F80FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE5055AC49193
FPdiv2 = 0D7D529DB736
FPinv = 192CF6FE67D7FDE64C150183B8256B52AEE6788FCBFB3B2D8200ADB598752C98
FPexp = 1D0FAF3EC378EE9DBA60929E314881686B8D408EDA2017F37110CA4FCE156E4F

#test10
FP_1 = F1CD472BD97F6080F4AE4D
FP_2 = D1632F52F3190B7338E1D5CBED0ADF3CB08D6C42B521D836412CCB04A93717CE
FPadd = 12E02F52F3190B7338E1D5CBED0ADF3CB08D6C42B613A57D6D064A652A2BC61E
FPsub = 2CA0D0AD0CE6F48CC71E2A3412F520C34F7293BD4BCFF510EAACB45BD7BD967B
FP_1nres = F1CD472BD97F6080F4AE4D
FP_2nres = 12E02F52F3190B7338E1D5CBED0ADF3CB08D6C42B521D836412CCB04A93717D1
FPmulmod = 35F031281DEAB5982EC47940066F1076EF8A91F3B1B5668A7B52544FADF8DDBE
FPsmallmul = 097204C7B67EF9C5098ECF02
FPsqr = E464249B9F8583DACC533027B66719F2B7E9B974C329
FPreduce = F1CD472BD97F6080F4AE4D
FPneg = 3F80FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF0E32B8D426809F7F0B51B2
FPdiv2 = 1FC08000000000000000000000000000000000000078E6A395ECBFB0407A5726
FPinv = 1B20BBD7C924452752C10A56D72C450B09E192D2E7FEA6E32AB80DF24D43E328
FPexp = 2004D13CA37B46D412296171B023A36059DD70721B9B673963ED0BD49479B1BE