light-merkle-tree-program 0.3.1

Light Protocol on-chain program which manages Merkle trees
Documentation
use anchor_lang::constant;

#[constant]
pub const ENCRYPTED_UTXOS_LENGTH: usize = 174;
#[constant]
pub const MERKLE_TREE_HISTORY_SIZE: u64 = 256;

#[constant]
pub const MERKLE_TREE_HEIGHT: usize = 18;

#[constant]
pub const INITIAL_MERKLE_TREE_AUTHORITY: [u8; 32] = [
    2, 99, 226, 251, 88, 66, 92, 33, 25, 216, 211, 185, 112, 203, 212, 238, 105, 144, 72, 121, 176,
    253, 106, 168, 115, 158, 154, 188, 62, 255, 166, 81,
];

/// Zero values to fill an empty sparse merkle tree.
/// Every hash is the hash of its previous hash ([prev_hash, prev_hash].concat())
#[constant]
pub const ZERO_BYTES_MERKLE_TREE_18: [[u8; 32]; 19] = [
    [
        40, 66, 58, 227, 48, 224, 249, 227, 188, 18, 133, 168, 156, 214, 220, 144, 244, 144, 67,
        82, 76, 6, 135, 78, 64, 186, 52, 113, 234, 47, 27, 32,
    ],
    [
        227, 42, 164, 149, 188, 70, 170, 8, 197, 44, 134, 162, 211, 186, 50, 238, 97, 71, 25, 130,
        77, 70, 37, 128, 172, 154, 54, 111, 93, 193, 105, 27,
    ],
    [
        25, 241, 255, 33, 65, 214, 48, 229, 38, 116, 134, 103, 44, 146, 163, 214, 31, 238, 148,
        206, 34, 137, 144, 221, 184, 11, 5, 213, 10, 188, 143, 18,
    ],
    [
        211, 61, 251, 33, 128, 34, 4, 100, 229, 47, 99, 121, 109, 204, 224, 90, 200, 149, 219, 20,
        48, 206, 210, 177, 161, 66, 44, 10, 169, 56, 248, 8,
    ],
    [
        200, 15, 65, 80, 151, 74, 72, 69, 229, 131, 25, 215, 86, 36, 195, 74, 67, 59, 117, 179, 51,
        60, 181, 13, 242, 192, 228, 228, 189, 238, 70, 8,
    ],
    [
        171, 62, 122, 81, 181, 197, 22, 238, 224, 40, 154, 231, 127, 202, 201, 169, 196, 109, 244,
        175, 117, 101, 23, 67, 103, 57, 127, 200, 37, 43, 111, 7,
    ],
    [
        59, 78, 126, 104, 199, 143, 213, 10, 2, 158, 64, 78, 153, 25, 107, 190, 32, 122, 123, 211,
        116, 179, 175, 172, 70, 54, 175, 59, 201, 120, 64, 44,
    ],
    [
        110, 91, 92, 81, 205, 89, 122, 223, 55, 163, 42, 227, 109, 54, 38, 22, 110, 217, 29, 148,
        107, 99, 128, 106, 146, 47, 239, 41, 55, 157, 155, 22,
    ],
    [
        18, 231, 42, 5, 245, 159, 211, 227, 239, 89, 35, 142, 223, 69, 166, 224, 14, 114, 128, 14,
        123, 123, 215, 2, 241, 185, 191, 60, 252, 61, 146, 12,
    ],
    [
        231, 0, 84, 227, 127, 64, 158, 7, 171, 179, 137, 231, 92, 87, 25, 221, 156, 229, 53, 208,
        194, 201, 12, 165, 105, 150, 41, 142, 29, 205, 136, 29,
    ],
    [
        195, 2, 103, 231, 62, 207, 214, 105, 214, 210, 108, 23, 28, 151, 77, 100, 78, 194, 210, 29,
        227, 14, 17, 242, 211, 50, 33, 194, 106, 18, 246, 45,
    ],
    [
        131, 178, 24, 157, 251, 247, 103, 69, 101, 229, 194, 14, 167, 57, 158, 128, 212, 19, 140,
        234, 69, 37, 10, 156, 249, 96, 152, 52, 97, 96, 119, 41,
    ],
    [
        30, 223, 20, 181, 108, 110, 112, 102, 234, 54, 99, 29, 213, 3, 55, 225, 125, 185, 223, 234,
        188, 108, 83, 89, 27, 3, 100, 6, 65, 107, 3, 24,
    ],
    [
        167, 32, 85, 233, 205, 253, 154, 214, 236, 82, 147, 75, 252, 144, 109, 73, 63, 167, 77,
        233, 12, 201, 150, 242, 103, 15, 158, 83, 137, 24, 170, 16,
    ],
    [
        45, 98, 238, 69, 136, 141, 101, 226, 94, 209, 58, 215, 212, 14, 210, 135, 110, 96, 52, 16,
        101, 177, 121, 109, 134, 81, 189, 146, 113, 243, 97, 42,
    ],
    [
        71, 51, 251, 48, 95, 193, 94, 26, 180, 17, 124, 203, 48, 98, 55, 17, 60, 104, 186, 175,
        213, 189, 7, 239, 92, 175, 16, 5, 220, 168, 70, 21,
    ],
    [
        35, 92, 72, 197, 23, 142, 16, 200, 136, 38, 44, 255, 162, 115, 11, 1, 248, 182, 236, 78,
        90, 24, 128, 245, 168, 17, 130, 2, 73, 51, 196, 6,
    ],
    [
        89, 178, 154, 246, 236, 130, 30, 100, 27, 230, 24, 196, 8, 172, 176, 196, 197, 13, 157,
        194, 169, 106, 207, 70, 66, 117, 69, 53, 56, 154, 78, 0,
    ],
    [
        231, 174, 226, 37, 211, 160, 187, 178, 149, 82, 17, 60, 110, 116, 28, 61, 58, 145, 58, 71,
        25, 42, 67, 46, 189, 214, 248, 234, 182, 251, 238, 34,
    ],
];