ROM_CURVE_BLS24 = function()

in src/rom_curve.js [150:232]


ROM_CURVE_BLS24 = function() {
    /* Fixed Data in ROM - Field and Curve parameters */

    var ROM_CURVE_BLS24 = {

        // BLS24 Curve
        // Base Bits= 23
        CURVE_Cof_I: 0,
        CURVE_A: 0,
        CURVE_B_I: 19,
        CURVE_B: [0x13, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0],
        CURVE_Order: [0x1, 0x11FFE0, 0x464068, 0x1FFAA8, 0x71E703, 0x645BB5, 0x379FB8, 0x689D35, 0x49D0CE, 0x49091F, 0x4A7308, 0x286C0B, 0x3B44A0, 0x60B731, 0x6807C3, 0x8002, 0x10010, 0x0, 0x0, 0x0, 0x0],
        CURVE_Gx: [0x63CCD4, 0x41EBD7, 0x15919D, 0x576CFA, 0x1EFE2D, 0x743F98, 0xFC23A, 0x409A3C, 0x595AF8, 0x6F8DF1, 0x38B611, 0x65468D, 0x7E4BFD, 0x6B0D9D, 0x7641D, 0x2ECCDE, 0xB7FEA, 0x5BD3C3, 0x2BE521, 0x71A0BE, 0x1AB2B],
        CURVE_Gy: [0x1E5245, 0x4B95A4, 0x5B132E, 0x462AEF, 0x36D660, 0x672E8D, 0x7B4A53, 0x79E459, 0x24920F, 0x4828B0, 0x58F969, 0x1D527E, 0x4E00F6, 0x457EF3, 0x66924A, 0x294FFB, 0x66A7A4, 0x70C394, 0x4F91DE, 0x386362, 0x47FCB],

        CURVE_Bnx: [0x11FF80, 0x400, 0x4, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0],
        CURVE_Cof: [0x7415AB, 0x7F7FF3, 0x5FFF07, 0x2AB555, 0x5, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0],
        CURVE_Cru: [0x5794A9, 0x4E28DB, 0x690EF0, 0x1C5799, 0x63A309, 0x447BB8, 0x4485D4, 0x36FDD8, 0x7BB423, 0xE24B9, 0x5E7398, 0x11AC71, 0x806E0, 0x18DD64, 0x5DF5A0, 0x4307F, 0x314C20, 0x4D1C8, 0x2F16A2, 0x3C01E, 0x555C0],
        CURVE_Pxaa: [0x624678, 0x26A6E9, 0x22F8A, 0x212C12, 0x60C343, 0x3DF8D3, 0x5D9733, 0x6BFC87, 0x2D2888, 0x758675, 0x259D1C, 0x7E922C, 0x4BAB37, 0x11DAAB, 0x6214A4, 0x758A55, 0x786671, 0x72B190, 0x32581D, 0x729D1F, 0x959D],
        CURVE_Pxab: [0x3099B8, 0x3D75FF, 0x40E1FE, 0x9523, 0x63775A, 0x78470A, 0x5746C7, 0x7CF1B5, 0x26A730, 0x14FE14, 0x76CA97, 0x61C7C2, 0x669261, 0x6A7C2F, 0x3E5DA9, 0x5F2D68, 0x2D39D1, 0x4A3C98, 0x4CF7F1, 0x68418B, 0x3B0DE],
        CURVE_Pxba: [0x2D15D3, 0x1BCE23, 0x5BB687, 0x46FB70, 0x185317, 0x47C134, 0x2FD0FA, 0x3597B2, 0x56DE56, 0x165B19, 0x1D3F6E, 0x10E136, 0x76B1EF, 0x1913C7, 0x4011EF, 0x1F994F, 0x3FE210, 0x545186, 0x41EBCA, 0x7D6A72, 0x3EC27],
        CURVE_Pxbb: [0x60F480, 0x650EBD, 0x2E31EA, 0x21EB62, 0x14556E, 0x1C3973, 0x48B7E0, 0xFFEFD, 0x50122F, 0x55EE1F, 0x263BD7, 0x2ED92B, 0x1BA3AD, 0x39C35E, 0x2DD201, 0x17232E, 0x1DA7CE, 0x4CB0AA, 0x1E67DF, 0x46DE50, 0xA5B3],
        CURVE_Pyaa: [0x781AA0, 0x132628, 0x2AC619, 0x181DB8, 0x3609DA, 0x3F8897, 0x4A9851, 0x189252, 0x4C42A, 0x768C5C, 0x66B9A2, 0x1C1D70, 0x4FCADC, 0x69ED7C, 0x7D286C, 0xD685, 0x198F9, 0x459DA0, 0x30250D, 0x1AEB9B, 0x5057F],
        CURVE_Pyab: [0x2E08FA, 0x58AFDD, 0x5AB6EF, 0x5D52FC, 0x78774, 0x348594, 0x32BC26, 0x23C32, 0x3BCCF7, 0xB913F, 0x3E1549, 0x5B907F, 0x77B3E6, 0x22C6ED, 0x7865FE, 0x3DAEFB, 0x60F558, 0x702D7A, 0x3A258D, 0x24B30F, 0x2CE2B],
        CURVE_Pyba: [0x70CC41, 0x4ED4B, 0x7D5CC, 0x2A9855, 0x7F8932, 0x5F1428, 0x7361E6, 0x14406C, 0x68A9FE, 0x21DCA7, 0x4DC54E, 0x10783E, 0x71F3A4, 0x3AA336, 0x6C5305, 0x1E5ADC, 0x1A39DD, 0x7C73F0, 0x18C69A, 0x2331F7, 0x18070],
        CURVE_Pybb: [0x5C1CAE, 0x65CCA2, 0x2373C6, 0x2AD84C, 0x2D40D3, 0x714EEE, 0x10FF70, 0x3AE561, 0x136B6, 0x3EBA67, 0x75CBF3, 0x327450, 0x161AC1, 0x5CB9A1, 0x2C42EE, 0x48BB8F, 0x56D046, 0x725081, 0x77B22D, 0x2756CD, 0x499D1],
        CURVE_W: [
            [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, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]
        ],
        CURVE_SB: [
            [
                [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, 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, 0x0],
                [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]
            ]
        ],
        CURVE_WB: [
            [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, 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, 0x0],
            [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]
        ],
        CURVE_BB: [
            [
                [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, 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, 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, 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, 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, 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, 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, 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, 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, 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, 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]
            ]
        ],

        USE_GLV: true,
        USE_GS_G2: true,
        USE_GS_GT: true,
        GT_STRONG: true,

        //debug: false,
    };

    return ROM_CURVE_BLS24;
};