Arcium LogoArcium TS SDK Docs
@arcium-hq/client/Type aliases

ArciumIdlType

ArciumIdlType = object

Program IDL in camelCase format in order to be used in JS/TS.

Note that this is only a type helper and is not the actual IDL. The original IDL can be found at target/idl/arcium.json.

Properties

accounts

accounts: [{ discriminator: [2, 207, 122, 223, 93, 97, 231, 199]; name: "arxNode"; }, { discriminator: [152, 171, 158, 195, 75, 61, 51, 8]; name: "clockAccount"; }, { discriminator: [236, 225, 118, 228, 173, 106, 18, 60]; name: "cluster"; }, { discriminator: [136, 34, 167, 71, 41, 174, 103, 77]; name: "computationAccount"; }, { discriminator: [245, 176, 217, 221, 253, 104, 172, 200]; name: "computationDefinitionAccount"; }, { discriminator: [226, 70, 57, 224, 38, 233, 59, 136]; name: "computationDefinitionRaw"; }, { discriminator: [132, 11, 106, 171, 253, 138, 56, 78]; name: "failureClaimAccountHeader"; }, { discriminator: [172, 38, 77, 146, 148, 5, 51, 242]; name: "feePool"; }, { discriminator: [147, 145, 148, 170, 30, 13, 43, 216]; name: "largeExecPool"; }, { discriminator: [16, 168, 90, 235, 249, 207, 73, 223]; name: "largeMempool"; }, { discriminator: [103, 26, 85, 250, 179, 159, 17, 117]; name: "mxeAccount"; }, { discriminator: [97, 117, 128, 202, 213, 76, 5, 163]; name: "mediumExecPool"; }, { discriminator: [10, 249, 58, 39, 255, 231, 199, 168]; name: "mediumMempool"; }, { discriminator: [219, 31, 188, 145, 69, 139, 204, 117]; name: "operator"; }, { discriminator: [37, 147, 249, 253, 217, 136, 3, 87]; name: "smallExecPool"; }, { discriminator: [123, 153, 151, 118, 126, 71, 73, 92]; name: "smallMempool"; }, { discriminator: [80, 245, 5, 90, 154, 189, 190, 172]; name: "tinyExecPool"; }, { discriminator: [176, 33, 67, 108, 73, 135, 110, 166]; name: "tinyMempool"; }]


address

address: "Bv3Fb9VjzjWGfX18QTUcVycAfeLoQ5zZN6vv2g3cTZxp"


errors

errors: [{ code: 6000; msg: "The given authority is invalid"; name: "invalidAuthority"; }, { code: 6001; msg: "The MXE keys are already set, i.e. all the nodes of the MXE cluster already agreed on the MXE keys"; name: "mxeKeysAlreadySet"; }, { code: 6002; msg: "The MXE keys are not set, i.e. not all the nodes of the MXE cluster agreed on the MXE keys"; name: "mxeKeysNotSet"; }, { code: 6003; msg: "An invalid MXE account has been supplied"; name: "invalidMxe"; }, { code: 6004; msg: "The cluster is already set"; name: "clusterAlreadySet"; }, { code: 6005; msg: "The cluster is not set"; name: "clusterNotSet"; }, { code: 6006; msg: "An invalid cluster account has been supplied"; name: "invalidCluster"; }, { code: 6007; msg: "An invalid computation definition account has been supplied"; name: "invalidComputationDefinition"; }, { code: 6008; msg: "Couldn't find a mempool ID for the computation"; name: "cantFindMempoolId"; }, { code: 6100; msg: "Mempool discriminator is invalid"; name: "invalidMempoolDiscriminator"; }, { code: 6101; msg: "Mempool size is invalid"; name: "invalidMempoolSize"; }, { code: 6102; msg: "Execpool discriminator is invalid"; name: "invalidExecpoolDiscriminator"; }, { code: 6103; msg: "Max parallelism reached"; name: "maxParallelismReached"; }, { code: 6200; msg: "Computation offset is invalid"; name: "invalidComputationOffset"; }, { code: 6201; msg: "Callback accounts are invalid"; name: "invalidCallbackAccs"; }, { code: 6202; msg: "Callback accounts length is invalid"; name: "invalidCallbackAccsLen"; }, { code: 6203; msg: "The computation is already initialized"; name: "alreadyInitializedComputation"; }, { code: 6204; msg: "Callback computation already called"; name: "alreadyCallbackedComputation"; }, { code: 6205; msg: "Callback tx is invalid"; name: "invalidCallbackTx"; }, { code: 6206; msg: "Computation status is invalid"; name: "invalidComputationStatus"; }, { code: 6207; msg: "Computation is invalid"; name: "invalidComputation"; }, { code: 6208; msg: "Computation authority is invalid"; name: "invalidComputationAuthority"; }, { code: 6209; msg: "Callback instructions are invalid"; name: "invalidCallbackInstructions"; }, { code: 6210; msg: "Computation has not expired from mempool yet"; name: "computationNotExpired"; }, { code: 6300; msg: "Computation definition is not completed"; name: "computationDefinitionNotCompleted"; }, { code: 6301; msg: "Arguments supplied are invalid"; name: "invalidArguments"; }, { code: 6302; msg: "Circuit source is invalid"; name: "invalidCircuitSource"; }, { code: 6303; msg: "Computation definition already completed"; name: "computationDefinitionAlreadyCompleted"; }, { code: 6400; msg: "Node is invalid"; name: "invalidNode"; }, { code: 6401; msg: "Maximum number of nodes in the cluster has been reached"; name: "maxClusterMembershipReached"; }, { code: 6402; msg: "The node already exists in the cluster"; name: "nodeAlreadyExists"; }, { code: 6403; msg: "Node authority is invalid"; name: "invalidNodeAuthority"; }, { code: 6404; msg: "Node is not inactive"; name: "nodeNotInactive"; }, { code: 6405; msg: "Node is not active"; name: "nodeNotActive"; }, { code: 6406; msg: "Cluster membership is invalid"; name: "invalidClusterMembership"; }, { code: 6407; msg: "Node is in an active cluster"; name: "nodeInActiveCluster"; }, { code: 6408; msg: "Node config is invalid"; name: "invalidNodeConfig"; }, { code: 6409; msg: "Unauthorized to create node on mainnet"; name: "unauthorizedNodeCreation"; }, { code: 6500; msg: "Cluster is full"; name: "clusterFull"; }, { code: 6501; msg: "Cluster deactivation epoch is invalid"; name: "invalidDeactivationEpoch"; }, { code: 6502; msg: "Cluster maximum size is invalid"; name: "invalidMaxSize"; }, { code: 6503; msg: "Cluster authority is invalid"; name: "invalidClusterAuthority"; }, { code: 6504; msg: "Cluster fee proposal is invalid"; name: "invalidFeeProposal"; }, { code: 6505; msg: "Cluster state is invalid"; name: "invalidClusterState"; }, { code: 6506; msg: "Cluster vote is invalid"; name: "invalidVote"; }, { code: 6600; msg: "Borsh serialization failed"; name: "serializationFailed"; }, { code: 6601; msg: "Borsh deserialization failed"; name: "deserializationFailed"; }, { code: 6602; msg: "Heap is full"; name: "heapFull"; }, { code: 6603; msg: "Current slot is before the last updated slot"; name: "invalidSlot"; }, { code: 6604; msg: "Epoch is infinity"; name: "epochIsInfinity"; }, { code: 6605; msg: "Timestamp is invalid"; name: "invalidTimestamp"; }, { code: 6606; msg: "Epoch is invalid"; name: "invalidEpoch"; }, { code: 6607; msg: "Epoch overflowed"; name: "epochOverflow"; }, { code: 6608; msg: "Lighthouse program ID is invalid"; name: "invalidLighthouseProgramId"; }, { code: 6609; msg: "Extra instruction found in transaction"; name: "extraInstructionFound"; }, { code: 6610; msg: "Invalid number of Lighthouse program instructions"; name: "invalidLighthouseInstructionCount"; }]


events

events: [{ discriminator: [155, 213, 238, 159, 240, 76, 167, 19]; name: "callbackComputationEvent"; }, { discriminator: [143, 97, 229, 166, 72, 218, 87, 145]; name: "claimFailureEvent"; }, { discriminator: [27, 75, 117, 221, 191, 213, 253, 249]; name: "finalizeComputationEvent"; }, { discriminator: [132, 26, 138, 201, 214, 29, 244, 167]; name: "finalizeFailureDataEvent"; }, { discriminator: [17, 51, 124, 226, 70, 97, 58, 186]; name: "initComputationEvent"; }, { discriminator: [118, 53, 33, 169, 32, 14, 197, 147]; name: "queueComputationEvent"; }]


instructions

instructions: [{ accounts: [{ name: "signer"; signer: true; writable: true; }, { name: "arxNodeAcc"; pda: { seeds: [{ kind: "const"; value: [65, 114, 120, 78, 111, 100, 101]; }, { kind: "arg"; path: "nodeOffset"; }]; }; writable: true; }, { name: "clock"; pda: { seeds: [{ kind: "const"; value: [67, 108, 111, 99, 107, 65, 99, 99, 111, 117, 110, 116]; }]; }; writable: true; }]; args: [{ name: "nodeOffset"; type: "u32"; }]; discriminator: [15, 203, 48, 186, 243, 85, 60, 115]; name: "activateArx"; }, { accounts: [{ name: "authority"; signer: true; writable: true; }, { name: "clusterAcc"; pda: { seeds: [{ kind: "const"; value: [67, 108, 117, 115, 116, 101, 114]; }, { kind: "arg"; path: "id"; }]; }; writable: true; }, { name: "clock"; pda: { seeds: [{ kind: "const"; value: [67, 108, 111, 99, 107, 65, 99, 99, 111, 117, 110, 116]; }]; }; }, { address: "11111111111111111111111111111111"; name: "systemProgram"; }]; args: [{ name: "clusterId"; type: "u32"; }]; discriminator: [228, 170, 10, 172, 246, 96, 63, 154]; name: "activateCluster"; }, { accounts: [{ name: "signer"; signer: true; writable: true; }, { name: "clusterAcc"; pda: { seeds: [{ kind: "const"; value: [67, 108, 117, 115, 116, 101, 114]; }, { kind: "arg"; path: "clusterOffset"; }]; }; writable: true; }, { name: "clock"; pda: { seeds: [{ kind: "const"; value: [67, 108, 111, 99, 107, 65, 99, 99, 111, 117, 110, 116]; }]; }; }]; args: [{ name: "clusterOffset"; type: "u32"; }]; discriminator: [172, 203, 90, 207, 128, 221, 229, 246]; name: "bumpEpochCluster"; }, { accounts: [{ name: "signer"; signer: true; writable: true; }, { name: "node"; pda: { seeds: [{ kind: "const"; value: [65, 114, 120, 78, 111, 100, 101]; }, { kind: "arg"; path: "nodeOffset"; }]; }; }, { name: "mxe"; pda: { seeds: [{ kind: "const"; value: [77, 88, 69, 65, 99, 99, 111, 117, 110, 116]; }, { kind: "arg"; path: "mxeProgram"; }]; }; }, { name: "clusterAcc"; pda: { seeds: [{ kind: "const"; value: [67, 108, 117, 115, 116, 101, 114]; }, { account: "mxeAccount"; kind: "account"; path: "mxe.cluster.ok_or(ArciumError :: ClusterNotSet) ? "; }]; }; writable: true; }, { name: "comp"; pda: { seeds: [{ kind: "const"; value: [67, 111, 109, 112, 117, 116, 97, 116, 105, 111, 110, 65, 99, 99, 111, 117, 110, 116]; }, { account: "mxeAccount"; kind: "account"; path: "mxe.cluster.ok_or(ArciumError :: ClusterNotSet) ? "; }, { kind: "arg"; path: "compOffset"; }]; }; writable: true; }, { name: "mempool"; pda: { seeds: [{ kind: "const"; value: [77, 101, 109, 112, 111, 111, 108]; }, { account: "mxeAccount"; kind: "account"; path: "mxe.cluster.ok_or(ArciumError :: ClusterNotSet) ? "; }]; }; writable: true; }, { name: "executingPool"; pda: { seeds: [{ kind: "const"; value: [69, 120, 101, 99, 112, 111, 111, 108]; }, { account: "mxeAccount"; kind: "account"; path: "mxe.cluster.ok_or(ArciumError :: ClusterNotSet) ? "; }]; }; writable: true; }, { name: "compDefAcc"; pda: { seeds: [{ kind: "const"; value: [67, 111, 109, 112, 117, 116, 97, 116, 105, 111, 110, 68, 101, 102, 105, 110, 105, 116, 105, 111, 110, 65, 99, 99, 111, 117, 110, 116]; }, { kind: "arg"; path: "mxeProgram"; }, { kind: "arg"; path: "compDefOffset"; }]; }; }, { address: "11111111111111111111111111111111"; name: "systemProgram"; }, { address: "Sysvar1nstructions1111111111111111111111111"; name: "instructionsSysvar"; }]; args: [{ name: "compOffset"; type: "u64"; }, { name: "nodeOffset"; type: "u32"; }, { name: "compDefOffset"; type: "u32"; }, { name: "mxeProgram"; type: "pubkey"; }, { name: "executionStatus"; type: { defined: { name: "executionStatus"; }; }; }, { name: "callbackTransactionIndex"; type: "u8"; }]; discriminator: [11, 224, 42, 236, 0, 154, 74, 163]; name: "callbackComputation"; }, { accounts: [{ name: "signer"; signer: true; writable: true; }, { name: "comp"; pda: { seeds: [{ kind: "const"; value: [67, 111, 109, 112, 117, 116, 97, 116, 105, 111, 110, 65, 99, 99, 111, 117, 110, 116]; }, { kind: "arg"; path: "clusterOffset"; }, { kind: "arg"; path: "compOffset"; }]; }; writable: true; }, { address: "11111111111111111111111111111111"; name: "systemProgram"; }]; args: [{ name: "compOffset"; type: "u64"; }, { name: "clusterOffset"; type: "u32"; }]; discriminator: [215, 218, 1, 166, 81, 218, 16, 151]; name: "claimComputationRent"; }, { accounts: [{ name: "signer"; signer: true; writable: true; }, { name: "failureAcc"; pda: { seeds: [{ kind: "const"; value: [70, 97, 105, 108, 117, 114, 101, 67, 108, 97, 105, 109, 65, 99, 99, 111, 117, 110, 116, 72, 101, 97, 100, 101, 114]; }, { kind: "arg"; path: "mxeProgram"; }, { kind: "arg"; path: "compOffset"; }]; }; writable: true; }, { address: "11111111111111111111111111111111"; name: "systemProgram"; }]; args: [{ name: "compOffset"; type: "u64"; }, { name: "nodeOffset"; type: "u32"; }, { name: "mxeProgram"; type: "pubkey"; }, { name: "chunk"; type: "bytes"; }, { name: "failureClaimOffset"; type: "u32"; }]; discriminator: [92, 52, 184, 203, 76, 221, 128, 69]; name: "claimFailureAppend"; }, { accounts: [{ name: "signer"; signer: true; }, { name: "failureAcc"; pda: { seeds: [{ kind: "const"; value: [70, 97, 105, 108, 117, 114, 101, 67, 108, 97, 105, 109, 65, 99, 99, 111, 117, 110, 116, 72, 101, 97, 100, 101, 114]; }, { kind: "arg"; path: "mxeProgram"; }, { kind: "arg"; path: "compOffset"; }]; }; writable: true; }, { name: "executingPool"; pda: { seeds: [{ kind: "const"; value: [69, 120, 101, 99, 112, 111, 111, 108]; }, { account: "mxeAccount"; kind: "account"; path: "mxe.cluster.ok_or(ArciumError :: ClusterNotSet) ? "; }]; }; writable: true; }, { name: "mempool"; pda: { seeds: [{ kind: "const"; value: [77, 101, 109, 112, 111, 111, 108]; }, { account: "mxeAccount"; kind: "account"; path: "mxe.cluster.ok_or(ArciumError :: ClusterNotSet) ? "; }]; }; writable: true; }, { name: "comp"; pda: { seeds: [{ kind: "const"; value: [67, 111, 109, 112, 117, 116, 97, 116, 105, 111, 110, 65, 99, 99, 111, 117, 110, 116]; }, { account: "mxeAccount"; kind: "account"; path: "mxe.cluster.ok_or(ArciumError :: ClusterNotSet) ? "; }, { kind: "arg"; path: "compOffset"; }]; }; writable: true; }, { name: "clusterAcc"; pda: { seeds: [{ kind: "const"; value: [67, 108, 117, 115, 116, 101, 114]; }, { account: "mxeAccount"; kind: "account"; path: "mxe.cluster.ok_or(ArciumError :: ClusterNotSet) ? "; }]; }; writable: true; }, { name: "mxe"; pda: { seeds: [{ kind: "const"; value: [77, 88, 69, 65, 99, 99, 111, 117, 110, 116]; }, { kind: "arg"; path: "mxeProgram"; }]; }; }]; args: [{ name: "compOffset"; type: "u64"; }, { name: "nodeOffset"; type: "u32"; }, { name: "mxeProgram"; type: "pubkey"; }]; discriminator: [192, 133, 215, 19, 76, 107, 111, 217]; name: "claimFailureFinalize"; }, { accounts: [{ name: "signer"; signer: true; writable: true; }, { name: "nodeAcc"; pda: { seeds: [{ kind: "const"; value: [65, 114, 120, 78, 111, 100, 101]; }, { kind: "arg"; path: "nodeOffset"; }]; }; }, { name: "mxe"; pda: { seeds: [{ kind: "const"; value: [77, 88, 69, 65, 99, 99, 111, 117, 110, 116]; }, { kind: "arg"; path: "mxeProgram"; }]; }; }, { name: "clusterAcc"; pda: { seeds: [{ kind: "const"; value: [67, 108, 117, 115, 116, 101, 114]; }, { account: "mxeAccount"; kind: "account"; path: "mxe.cluster.ok_or(ArciumError :: ClusterNotSet) ? "; }]; }; writable: true; }, { name: "compAcc"; pda: { seeds: [{ kind: "const"; value: [67, 111, 109, 112, 117, 116, 97, 116, 105, 111, 110, 65, 99, 99, 111, 117, 110, 116]; }, { account: "mxeAccount"; kind: "account"; path: "mxe.cluster.ok_or(ArciumError :: ClusterNotSet) ? "; }, { kind: "arg"; path: "compOffset"; }]; }; }, { name: "compDefAcc"; pda: { seeds: [{ kind: "const"; value: [67, 111, 109, 112, 117, 116, 97, 116, 105, 111, 110, 68, 101, 102, 105, 110, 105, 116, 105, 111, 110, 65, 99, 99, 111, 117, 110, 116]; }, { kind: "arg"; path: "mxeProgram"; }, { account: "computationAccount"; kind: "account"; path: "comp_acc.computation_definition_offset"; }]; }; }, { name: "failureAcc"; pda: { seeds: [{ kind: "const"; value: [70, 97, 105, 108, 117, 114, 101, 67, 108, 97, 105, 109, 65, 99, 99, 111, 117, 110, 116, 72, 101, 97, 100, 101, 114]; }, { kind: "arg"; path: "mxeProgram"; }, { kind: "arg"; path: "compOffset"; }]; }; writable: true; }, { address: "11111111111111111111111111111111"; name: "systemProgram"; }]; args: [{ name: "compOffset"; type: "u64"; }, { name: "nodeOffset"; type: "u32"; }, { name: "mxeProgram"; type: "pubkey"; }]; discriminator: [204, 106, 245, 73, 212, 136, 61, 99]; name: "claimFailureInit"; }, { accounts: [{ name: "signer"; signer: true; writable: true; }, { name: "arxNodeAcc"; pda: { seeds: [{ kind: "const"; value: [65, 114, 120, 78, 111, 100, 101]; }, { kind: "arg"; path: "nodeOffset"; }]; }; writable: true; }, { name: "clock"; pda: { seeds: [{ kind: "const"; value: [67, 108, 111, 99, 107, 65, 99, 99, 111, 117, 110, 116]; }]; }; }, { name: "clusterAcc"; optional: true; pda: { seeds: [{ kind: "const"; value: [67, 108, 117, 115, 116, 101, 114]; }, { kind: "account"; path: "arxNodeAcc"; }]; }; }]; args: [{ name: "nodeOffset"; type: "u32"; }]; discriminator: [117, 244, 137, 148, 25, 190, 175, 164]; name: "deactivateArx"; }, { accounts: [{ name: "authority"; signer: true; writable: true; }, { name: "clusterAcc"; pda: { seeds: [{ kind: "const"; value: [67, 108, 117, 115, 116, 101, 114]; }, { kind: "arg"; path: "id"; }]; }; writable: true; }, { name: "clock"; pda: { seeds: [{ kind: "const"; value: [67, 108, 111, 99, 107, 65, 99, 99, 111, 117, 110, 116]; }]; }; }, { address: "11111111111111111111111111111111"; name: "systemProgram"; }]; args: [{ name: "clusterId"; type: "u32"; }, { name: "deactivationEpoch"; type: { defined: { name: "epoch"; }; }; }]; discriminator: [13, 42, 182, 159, 184, 10, 212, 178]; name: "deactivateCluster"; }, { accounts: [{ name: "tinyMempool"; }, { name: "tinyExecpool"; }, { name: "smallMempool"; }, { name: "smallExecpool"; }, { name: "mediumMempool"; }, { name: "mediumExecpool"; }, { name: "largeMempool"; }, { name: "largeExecpool"; }]; args: []; discriminator: [57, 4, 200, 151, 58, 19, 120, 9]; docs: ["Only present so the mempool and execpool accounts are actually included in the idl, since we", "don't explicitly declare them in the accounts section of the other instructions."]; name: "dummyInstruction"; }, { accounts: [{ name: "signer"; signer: true; writable: true; }, { name: "compDefAcc"; pda: { seeds: [{ kind: "const"; value: [67, 111, 109, 112, 117, 116, 97, 116, 105, 111, 110, 68, 101, 102, 105, 110, 105, 116, 105, 111, 110, 65, 99, 99, 111, 117, 110, 116]; }, { kind: "arg"; path: "mxeProgram"; }, { kind: "arg"; path: "compOffset"; }]; }; }, { name: "compDefRaw"; pda: { seeds: [{ kind: "const"; value: [67, 111, 109, 112, 117, 116, 97, 116, 105, 111, 110, 68, 101, 102, 105, 110, 105, 116, 105, 111, 110, 82, 97, 119]; }, { kind: "account"; path: "compDefAcc"; }, { kind: "arg"; path: "rawCircuitIndex"; }]; }; writable: true; }, { address: "11111111111111111111111111111111"; name: "systemProgram"; }]; args: [{ name: "compOffset"; type: "u32"; }, { name: "mxeProgram"; type: "pubkey"; }, { name: "rawCircuitIndex"; type: "u8"; }]; discriminator: [92, 195, 192, 21, 193, 242, 135, 194]; name: "embiggenRawCircuitAcc"; }, { accounts: [{ name: "signer"; signer: true; writable: true; }, { name: "compDefAcc"; pda: { seeds: [{ kind: "const"; value: [67, 111, 109, 112, 117, 116, 97, 116, 105, 111, 110, 68, 101, 102, 105, 110, 105, 116, 105, 111, 110, 65, 99, 99, 111, 117, 110, 116]; }, { kind: "arg"; path: "mxeProgram"; }, { kind: "arg"; path: "compOffset"; }]; }; writable: true; }]; args: [{ name: "compOffset"; type: "u32"; }, { name: "mxeProgram"; type: "pubkey"; }]; discriminator: [174, 66, 159, 51, 199, 243, 219, 38]; name: "finalizeComputationDefinition"; }, { accounts: [{ name: "signer"; signer: true; writable: true; }, { name: "mxe"; pda: { seeds: [{ kind: "const"; value: [77, 88, 69, 65, 99, 99, 111, 117, 110, 116]; }, { kind: "arg"; path: "mxeProgram"; }]; }; writable: true; }, { name: "cluster"; pda: { seeds: [{ kind: "const"; value: [67, 108, 117, 115, 116, 101, 114]; }, { account: "mxeAccount"; kind: "account"; path: "mxe.cluster.ok_or(ArciumError :: ClusterNotSet) ? "; }]; }; writable: true; }, { address: "11111111111111111111111111111111"; name: "systemProgram"; }]; args: [{ name: "mxeProgram"; type: "pubkey"; }]; discriminator: [108, 137, 125, 95, 202, 237, 190, 158]; name: "finalizeMxeKeys"; }, { accounts: [{ name: "signer"; signer: true; writable: true; }, { name: "mempool"; pda: { seeds: [{ kind: "const"; value: [77, 101, 109, 112, 111, 111, 108]; }, { kind: "arg"; path: "clusterOffset"; }]; }; writable: true; }, { address: "11111111111111111111111111111111"; name: "systemProgram"; }]; args: [{ name: "clusterOffset"; type: "u32"; }]; discriminator: [19, 165, 166, 25, 174, 122, 166, 250]; name: "increaseMempoolSize"; }, { accounts: [{ name: "signer"; signer: true; writable: true; }, { name: "clock"; pda: { seeds: [{ kind: "const"; value: [67, 108, 111, 99, 107, 65, 99, 99, 111, 117, 110, 116]; }]; }; writable: true; }, { name: "feePool"; pda: { seeds: [{ kind: "const"; value: [70, 101, 101, 80, 111, 111, 108]; }]; }; writable: true; }, { address: "11111111111111111111111111111111"; name: "systemProgram"; }]; args: [{ name: "startEpochTimestamp"; type: { defined: { name: "timestamp"; }; }; }]; discriminator: [220, 59, 207, 236, 108, 250, 47, 100]; name: "init"; }, { accounts: [{ name: "operatorSigner"; signer: true; writable: true; }, { name: "operatorAcc"; pda: { seeds: [{ kind: "const"; value: [79, 112, 101, 114, 97, 116, 111, 114]; }, { kind: "account"; path: "operatorSigner"; }]; }; writable: true; }, { name: "arxNodeAcc"; pda: { seeds: [{ kind: "const"; value: [65, 114, 120, 78, 111, 100, 101]; }, { kind: "arg"; path: "nodeOffset"; }]; }; writable: true; }, { name: "clock"; pda: { seeds: [{ kind: "const"; value: [67, 108, 111, 99, 107, 65, 99, 99, 111, 117, 110, 116]; }]; }; }, { address: "11111111111111111111111111111111"; name: "systemProgram"; }]; args: [{ name: "nodeOffset"; type: "u32"; }, { name: "config"; type: { defined: { name: "arxNodeConfig"; }; }; }, { name: "cuCapacityClaim"; type: "u64"; }, { name: "metadata"; type: { defined: { name: "nodeMetadata"; }; }; }]; discriminator: [55, 177, 212, 125, 72, 118, 148, 232]; name: "initArxNode"; }, { accounts: [{ name: "signer"; signer: true; writable: true; }, { name: "clusterAcc"; pda: { seeds: [{ kind: "const"; value: [67, 108, 117, 115, 116, 101, 114]; }, { kind: "arg"; path: "id"; }]; }; writable: true; }, { name: "authority"; }, { docs: ["function"]; name: "mempool"; pda: { seeds: [{ kind: "const"; value: [77, 101, 109, 112, 111, 111, 108]; }, { kind: "arg"; path: "id"; }]; }; writable: true; }, { name: "execpool"; pda: { seeds: [{ kind: "const"; value: [69, 120, 101, 99, 112, 111, 111, 108]; }, { kind: "arg"; path: "id"; }]; }; writable: true; }, { name: "poolAccount"; pda: { seeds: [{ kind: "const"; value: [70, 101, 101, 80, 111, 111, 108]; }]; }; }, { name: "clock"; pda: { seeds: [{ kind: "const"; value: [67, 108, 111, 99, 107, 65, 99, 99, 111, 117, 110, 116]; }]; }; }, { address: "11111111111111111111111111111111"; name: "systemProgram"; }]; args: [{ name: "clusterId"; type: "u32"; }, { name: "mempoolSize"; type: { defined: { name: "mempoolSize"; }; }; }, { name: "maxSize"; type: "u32"; }, { name: "cuPrice"; type: "u64"; }]; discriminator: [144, 230, 5, 18, 93, 71, 133, 187]; name: "initCluster"; }, { accounts: [{ docs: ["Signer of the transaction."]; name: "signer"; signer: true; writable: true; }, { name: "mxe"; pda: { seeds: [{ kind: "const"; value: [77, 88, 69, 65, 99, 99, 111, 117, 110, 116]; }, { kind: "arg"; path: "mxeProgram"; }]; }; writable: true; }, { name: "compDefAcc"; pda: { seeds: [{ kind: "const"; value: [67, 111, 109, 112, 117, 116, 97, 116, 105, 111, 110, 68, 101, 102, 105, 110, 105, 116, 105, 111, 110, 65, 99, 99, 111, 117, 110, 116]; }, { kind: "arg"; path: "mxeProgram"; }, { kind: "arg"; path: "compOffset"; }]; }; writable: true; }, { address: "11111111111111111111111111111111"; docs: ["System program account."]; name: "systemProgram"; }]; args: [{ name: "compOffset"; type: "u32"; }, { name: "mxeProgram"; type: "pubkey"; }, { name: "computationDefinition"; type: { defined: { name: "computationDefinitionMeta"; }; }; }, { name: "circuitSourceOverride"; type: { option: { defined: { name: "circuitSource"; }; }; }; }, { name: "cuAmount"; type: "u64"; }, { name: "finalizationAuthority"; type: { option: "pubkey"; }; }]; discriminator: [45, 185, 155, 17, 97, 77, 230, 73]; docs: ["Initializes a computation definition."]; name: "initComputationDefinition"; }, { accounts: [{ docs: ["Signer of the transaction."]; name: "signer"; signer: true; writable: true; }, { docs: ["MXE account to initialize."]; name: "mxe"; pda: { seeds: [{ kind: "const"; value: [77, 88, 69, 65, 99, 99, 111, 117, 110, 116]; }, { kind: "account"; path: "mxeProgram"; }]; }; writable: true; }, { name: "executingPool"; pda: { seeds: [{ kind: "const"; value: [69, 120, 101, 99, 112, 111, 111, 108]; }, { kind: "arg"; path: "clusterOffset"; }]; }; writable: true; }, { name: "mempool"; pda: { seeds: [{ kind: "const"; value: [77, 101, 109, 112, 111, 111, 108]; }, { kind: "arg"; path: "clusterOffset"; }]; }; writable: true; }, { docs: ["Cluster to add to the MXE."]; name: "cluster"; pda: { seeds: [{ kind: "const"; value: [67, 108, 117, 115, 116, 101, 114]; }, { kind: "arg"; path: "clusterOffset"; }]; }; }, { name: "mxeKeygenComputationDefinition"; pda: { seeds: [{ kind: "const"; value: [67, 111, 109, 112, 117, 116, 97, 116, 105, 111, 110, 68, 101, 102, 105, 110, 105, 116, 105, 111, 110, 65, 99, 99, 111, 117, 110, 116]; }, { kind: "account"; path: "mxeProgram"; }, { kind: "const"; value: [1, 0, 0, 0]; }]; }; writable: true; }, { name: "mxeKeygenComputation"; pda: { seeds: [{ kind: "const"; value: [67, 111, 109, 112, 117, 116, 97, 116, 105, 111, 110, 65, 99, 99, 111, 117, 110, 116]; }, { kind: "arg"; path: "clusterOffset"; }, { kind: "const"; value: [1, 0, 0, 0, 0, 0, 0, 0]; }]; }; writable: true; }, { name: "mxeAuthority"; optional: true; }, { docs: ["constraint in tests because setting it would require us to deploy a program each time."]; name: "mxeProgram"; }, { name: "poolAccount"; pda: { seeds: [{ kind: "const"; value: [70, 101, 101, 80, 111, 111, 108]; }]; }; writable: true; }, { address: "11111111111111111111111111111111"; docs: ["System program account."]; name: "systemProgram"; }]; args: [{ name: "clusterOffset"; type: "u32"; }]; discriminator: [240, 227, 11, 166, 193, 167, 25, 79]; docs: ["Initializes a MPC Execution Environment."]; name: "initMxe"; }, { accounts: [{ name: "signer"; signer: true; writable: true; }, { name: "operatorAcc"; pda: { seeds: [{ kind: "const"; value: [79, 112, 101, 114, 97, 116, 111, 114]; }, { kind: "account"; path: "signer"; }]; }; writable: true; }, { address: "11111111111111111111111111111111"; name: "systemProgram"; }]; args: [{ name: "meta"; type: { defined: { name: "operatorMeta"; }; }; }]; discriminator: [132, 210, 12, 91, 159, 94, 35, 54]; name: "initOperator"; }, { accounts: [{ name: "signer"; signer: true; writable: true; }, { name: "compDefAcc"; pda: { seeds: [{ kind: "const"; value: [67, 111, 109, 112, 117, 116, 97, 116, 105, 111, 110, 68, 101, 102, 105, 110, 105, 116, 105, 111, 110, 65, 99, 99, 111, 117, 110, 116]; }, { kind: "arg"; path: "mxeProgram"; }, { kind: "arg"; path: "compOffset"; }]; }; }, { name: "compDefRaw"; pda: { seeds: [{ kind: "const"; value: [67, 111, 109, 112, 117, 116, 97, 116, 105, 111, 110, 68, 101, 102, 105, 110, 105, 116, 105, 111, 110, 82, 97, 119]; }, { kind: "account"; path: "compDefAcc"; }, { kind: "arg"; path: "rawCircuitIndex"; }]; }; writable: true; }, { address: "11111111111111111111111111111111"; name: "systemProgram"; }]; args: [{ name: "compOffset"; type: "u32"; }, { name: "mxeProgram"; type: "pubkey"; }, { name: "rawCircuitIndex"; type: "u8"; }]; discriminator: [16, 228, 193, 228, 93, 231, 58, 4]; name: "initRawCircuitAcc"; }, { accounts: [{ name: "nodeAuthority"; signer: true; writable: true; }, { name: "clusterAcc"; pda: { seeds: [{ kind: "const"; value: [67, 108, 117, 115, 116, 101, 114]; }, { kind: "arg"; path: "clusterOffset"; }]; }; writable: true; }, { name: "arxNodeAcc"; pda: { seeds: [{ kind: "const"; value: [65, 114, 120, 78, 111, 100, 101]; }, { kind: "arg"; path: "nodeOffset"; }]; }; writable: true; }, { address: "11111111111111111111111111111111"; name: "systemProgram"; }]; args: [{ name: "clusterId"; type: "u32"; }, { name: "nodeBump"; type: "u32"; }, { name: "join"; type: "bool"; }]; discriminator: [150, 167, 124, 239, 108, 128, 31, 162]; name: "joinCluster"; }, { accounts: [{ name: "authority"; signer: true; writable: true; }, { name: "clusterAcc"; pda: { seeds: [{ kind: "const"; value: [67, 108, 117, 115, 116, 101, 114]; }, { kind: "arg"; path: "id"; }]; }; writable: true; }, { name: "mxe"; pda: { seeds: [{ kind: "const"; value: [77, 88, 69, 65, 99, 99, 111, 117, 110, 116]; }, { kind: "arg"; path: "mxeProgram"; }]; }; writable: true; }, { address: "11111111111111111111111111111111"; name: "systemProgram"; }]; args: [{ name: "clusterOffset"; type: "u32"; }, { name: "mxeProgram"; type: "pubkey"; }]; discriminator: [225, 222, 68, 9, 96, 160, 126, 211]; name: "leaveMxe"; }, { accounts: [{ name: "nodeAuthority"; signer: true; writable: true; }, { name: "clusterAcc"; pda: { seeds: [{ kind: "const"; value: [67, 108, 117, 115, 116, 101, 114]; }, { kind: "arg"; path: "clusterOffset"; }]; }; writable: true; }, { name: "arxNodeAcc"; pda: { seeds: [{ kind: "const"; value: [65, 114, 120, 78, 111, 100, 101]; }, { kind: "arg"; path: "nodeOffset"; }]; }; }]; args: [{ name: "clusterOffset"; type: "u32"; }, { name: "nodeOffset"; type: "u32"; }, { name: "proposedFee"; type: "u64"; }]; discriminator: [103, 204, 172, 134, 248, 252, 27, 170]; name: "proposeFee"; }, { accounts: [{ name: "clusterAuthority"; signer: true; writable: true; }, { name: "clusterAcc"; pda: { seeds: [{ kind: "const"; value: [67, 108, 117, 115, 116, 101, 114]; }, { kind: "arg"; path: "clusterOffset"; }]; }; writable: true; }, { name: "arxNodeAcc"; pda: { seeds: [{ kind: "const"; value: [65, 114, 120, 78, 111, 100, 101]; }, { kind: "arg"; path: "nodeOffset"; }]; }; writable: true; }, { name: "clock"; pda: { seeds: [{ kind: "const"; value: [67, 108, 111, 99, 107, 65, 99, 99, 111, 117, 110, 116]; }]; }; }, { address: "11111111111111111111111111111111"; name: "systemProgram"; }]; args: [{ name: "clusterId"; type: "u32"; }, { name: "nodeBump"; type: "u32"; }]; discriminator: [148, 228, 222, 211, 161, 128, 118, 175]; name: "proposeJoinCluster"; }, { accounts: [{ name: "signer"; signer: true; writable: true; }, { docs: ["This is ok-ish though, as we're not reading the account, we just need it to check that the", "CPI invocation is valid. The only downside is it's a bit ugly and wastes some CUs since", "we can't use a potentially stored bump."]; name: "signSeed"; pda: { program: { kind: "arg"; path: "mxeProgram"; }; seeds: [{ kind: "const"; value: [83, 105, 103, 110, 101, 114, 65, 99, 99, 111, 117, 110, 116]; }]; }; signer: true; }, { name: "comp"; pda: { seeds: [{ kind: "const"; value: [67, 111, 109, 112, 117, 116, 97, 116, 105, 111, 110, 65, 99, 99, 111, 117, 110, 116]; }, { kind: "arg"; path: "cluster_index.map_or(mxe.cluster.ok_or(ArciumError :: ClusterNotSet) ? , | i |\nmxe.fallback_clusters [i as usize])"; }, { kind: "arg"; path: "computationOffset"; }]; }; writable: true; }, { name: "mxe"; pda: { seeds: [{ kind: "const"; value: [77, 88, 69, 65, 99, 99, 111, 117, 110, 116]; }, { kind: "arg"; path: "mxeProgram"; }]; }; }, { name: "executingPool"; pda: { seeds: [{ kind: "const"; value: [69, 120, 101, 99, 112, 111, 111, 108]; }, { kind: "arg"; path: "cluster_index.map_or(mxe.cluster.ok_or(ArciumError :: ClusterNotSet) ? , | i |\nmxe.fallback_clusters [i as usize])"; }]; }; writable: true; }, { name: "mempool"; pda: { seeds: [{ kind: "const"; value: [77, 101, 109, 112, 111, 111, 108]; }, { kind: "arg"; path: "cluster_index.map_or(mxe.cluster.ok_or(ArciumError :: ClusterNotSet) ? , | i |\nmxe.fallback_clusters [i as usize])"; }]; }; writable: true; }, { name: "compDefAcc"; pda: { seeds: [{ kind: "const"; value: [67, 111, 109, 112, 117, 116, 97, 116, 105, 111, 110, 68, 101, 102, 105, 110, 105, 116, 105, 111, 110, 65, 99, 99, 111, 117, 110, 116]; }, { kind: "arg"; path: "mxeProgram"; }, { kind: "arg"; path: "computationDefinitionOffset"; }]; }; }, { name: "cluster"; pda: { seeds: [{ kind: "const"; value: [67, 108, 117, 115, 116, 101, 114]; }, { kind: "arg"; path: "cluster_index.map_or(mxe.cluster.ok_or(ArciumError :: ClusterNotSet) ? , | i |\nmxe.fallback_clusters [i as usize])"; }]; }; writable: true; }, { name: "poolAccount"; pda: { seeds: [{ kind: "const"; value: [70, 101, 101, 80, 111, 111, 108]; }]; }; writable: true; }, { address: "11111111111111111111111111111111"; name: "systemProgram"; }, { name: "clock"; pda: { seeds: [{ kind: "const"; value: [67, 108, 111, 99, 107, 65, 99, 99, 111, 117, 110, 116]; }]; }; }]; args: [{ name: "compOffset"; type: "u64"; }, { name: "computationDefinitionOffset"; type: "u32"; }, { name: "clusterIndex"; type: { option: "u16"; }; }, { name: "args"; type: { defined: { name: "argumentList"; }; }; }, { name: "mxeProgram"; type: "pubkey"; }, { name: "callbackUrl"; type: { option: "string"; }; }, { name: "customCallbackInstructions"; type: { vec: { defined: { name: "callbackInstruction"; }; }; }; }, { name: "callbackTransactionsRequired"; type: "u8"; }, { name: "outputDeliveryFee"; type: "u64"; }, { name: "cuPriceMicro"; type: "u64"; }]; discriminator: [1, 149, 103, 13, 102, 227, 93, 164]; docs: ["Queues a computation.", "cu_price_micro: The priority price of a CU, in thousandths of lamports. Used", "to calculate the priority fee and rounded down."]; name: "queueComputation"; }, { accounts: [{ name: "signer"; signer: true; writable: true; }, { name: "failureAcc"; pda: { seeds: [{ kind: "const"; value: [70, 97, 105, 108, 117, 114, 101, 67, 108, 97, 105, 109, 65, 99, 99, 111, 117, 110, 116, 72, 101, 97, 100, 101, 114]; }, { kind: "arg"; path: "mxeProgram"; }, { kind: "arg"; path: "compOffset"; }]; }; writable: true; }, { address: "SysvarC1ock11111111111111111111111111111111"; name: "clock"; }]; args: [{ name: "compOffset"; type: "u64"; }, { name: "nodeOffset"; type: "u32"; }, { name: "mxeProgram"; type: "pubkey"; }]; discriminator: [159, 99, 116, 180, 42, 9, 202, 219]; name: "reclaimFailureRent"; }, { accounts: [{ name: "signer"; signer: true; writable: true; }, { name: "mxe"; pda: { seeds: [{ kind: "const"; value: [77, 88, 69, 65, 99, 99, 111, 117, 110, 116]; }, { kind: "account"; path: "mxeProgram"; }]; }; }, { name: "executingPool"; pda: { seeds: [{ kind: "const"; value: [69, 120, 101, 99, 112, 111, 111, 108]; }, { kind: "arg"; path: "clusterOffset"; }]; }; writable: true; }, { name: "mempool"; pda: { seeds: [{ kind: "const"; value: [77, 101, 109, 112, 111, 111, 108]; }, { kind: "arg"; path: "clusterOffset"; }]; }; writable: true; }, { name: "cluster"; pda: { seeds: [{ kind: "const"; value: [67, 108, 117, 115, 116, 101, 114]; }, { kind: "arg"; path: "clusterOffset"; }]; }; }, { name: "mxeKeygenComputation"; pda: { seeds: [{ kind: "const"; value: [67, 111, 109, 112, 117, 116, 97, 116, 105, 111, 110, 65, 99, 99, 111, 117, 110, 116]; }, { kind: "arg"; path: "clusterOffset"; }, { kind: "const"; value: [1, 0, 0, 0, 0, 0, 0, 0]; }]; }; writable: true; }, { name: "poolAccount"; pda: { seeds: [{ kind: "const"; value: [70, 101, 101, 80, 111, 111, 108]; }]; }; writable: true; }, { name: "mxeProgram"; }, { address: "11111111111111111111111111111111"; name: "systemProgram"; }]; args: [{ name: "clusterOffset"; type: "u32"; }]; discriminator: [90, 98, 117, 181, 88, 71, 135, 30]; docs: ["Re-queues the MXE keygen computation if it has expired from the mempool.", "This allows retrying the keygen if it wasn't processed in time."]; name: "requeueMxeKeygen"; }, { accounts: [{ name: "signer"; signer: true; writable: true; }, { name: "arxNodeAcc"; pda: { seeds: [{ kind: "const"; value: [65, 114, 120, 78, 111, 100, 101]; }, { kind: "arg"; path: "nodeOffset"; }]; }; writable: true; }, { address: "11111111111111111111111111111111"; name: "systemProgram"; }]; args: [{ name: "nodeOffset"; type: "u32"; }, { name: "config"; type: { defined: { name: "arxNodeConfig"; }; }; }]; discriminator: [163, 75, 176, 148, 145, 196, 238, 234]; name: "setArxNodeConfig"; }, { accounts: [{ name: "signer"; signer: true; writable: true; }, { name: "arxNodeAcc"; pda: { seeds: [{ kind: "const"; value: [65, 114, 120, 78, 111, 100, 101]; }, { kind: "arg"; path: "nodeOffset"; }]; }; writable: true; }]; args: [{ name: "nodeOffset"; type: "u32"; }, { name: "meta"; type: { defined: { name: "nodeMetadata"; }; }; }]; discriminator: [176, 88, 44, 90, 127, 151, 62, 80]; name: "setArxNodeMetadata"; }, { accounts: [{ docs: ["Signer of the transaction."]; name: "signer"; signer: true; writable: true; }, { docs: ["MXE account to set the cluster for."]; name: "mxe"; pda: { seeds: [{ kind: "const"; value: [77, 88, 69, 65, 99, 99, 111, 117, 110, 116]; }, { kind: "account"; path: "mxeProgram"; }]; }; }, { docs: ["Cluster to set for the MXE."]; name: "cluster"; pda: { seeds: [{ kind: "const"; value: [67, 108, 117, 115, 116, 101, 114]; }, { kind: "arg"; path: "clusterOffset"; }]; }; }, { name: "mxeProgram"; }, { address: "11111111111111111111111111111111"; docs: ["System program account."]; name: "systemProgram"; }]; args: [{ name: "clusterOffset"; type: "u32"; }]; discriminator: [140, 96, 38, 83, 225, 128, 25, 176]; name: "setCluster"; }, { accounts: [{ name: "currentAuthority"; signer: true; writable: true; }, { name: "clusterAcc"; pda: { seeds: [{ kind: "const"; value: [67, 108, 117, 115, 116, 101, 114]; }, { kind: "arg"; path: "id"; }]; }; writable: true; }, { address: "11111111111111111111111111111111"; name: "systemProgram"; }]; args: [{ name: "clusterId"; type: "u32"; }, { name: "newAuthority"; type: { option: "pubkey"; }; }]; discriminator: [94, 172, 32, 75, 38, 40, 31, 106]; name: "setClusterAuthority"; }, { accounts: [{ name: "signer"; signer: true; writable: true; }, { name: "node"; pda: { seeds: [{ kind: "const"; value: [65, 114, 120, 78, 111, 100, 101]; }, { kind: "arg"; path: "nodeOffset"; }]; }; }, { name: "mxe"; pda: { seeds: [{ kind: "const"; value: [77, 88, 69, 65, 99, 99, 111, 117, 110, 116]; }, { kind: "arg"; path: "mxeProgram"; }]; }; writable: true; }, { name: "clusterAcc"; pda: { seeds: [{ kind: "const"; value: [67, 108, 117, 115, 116, 101, 114]; }, { account: "mxeAccount"; kind: "account"; path: "mxe.cluster.ok_or(ArciumError :: ClusterNotSet) ? "; }]; }; writable: true; }, { address: "11111111111111111111111111111111"; name: "systemProgram"; }]; args: [{ name: "nodeOffset"; type: "u32"; }, { name: "mxeProgram"; type: "pubkey"; }, { name: "mxeX25519Pubkey"; type: { array: ["u8", 32]; }; }, { name: "mxeEd25519VerifyingKey"; type: { array: ["u8", 32]; }; }, { name: "mxeElgamalPubkey"; type: { array: ["u8", 32]; }; }, { name: "mxePubkeyValidityProof"; type: { array: ["u8", 64]; }; }]; discriminator: [156, 205, 125, 215, 134, 88, 62, 144]; name: "setMxeKeys"; }, { accounts: [{ name: "clock"; pda: { seeds: [{ kind: "const"; value: [67, 108, 111, 99, 107, 65, 99, 99, 111, 117, 110, 116]; }]; }; writable: true; }]; args: []; discriminator: [47, 73, 68, 127, 116, 74, 89, 62]; name: "updateCurrentEpochIdempotent"; }, { accounts: [{ name: "signer"; signer: true; writable: true; }, { name: "compDefAcc"; pda: { seeds: [{ kind: "const"; value: [67, 111, 109, 112, 117, 116, 97, 116, 105, 111, 110, 68, 101, 102, 105, 110, 105, 116, 105, 111, 110, 65, 99, 99, 111, 117, 110, 116]; }, { kind: "arg"; path: "mxeProgram"; }, { kind: "arg"; path: "compOffset"; }]; }; }, { name: "compDefRaw"; pda: { seeds: [{ kind: "const"; value: [67, 111, 109, 112, 117, 116, 97, 116, 105, 111, 110, 68, 101, 102, 105, 110, 105, 116, 105, 111, 110, 82, 97, 119]; }, { kind: "account"; path: "compDefAcc"; }, { kind: "arg"; path: "rawCircuitIndex"; }]; }; writable: true; }, { address: "11111111111111111111111111111111"; name: "systemProgram"; }]; args: [{ name: "compOffset"; type: "u32"; }, { name: "mxeProgram"; type: "pubkey"; }, { name: "rawCircuitIndex"; type: "u8"; }, { name: "uploadData"; type: { array: ["u8", 814]; }; }, { name: "offset"; type: "u32"; }]; discriminator: [86, 238, 214, 111, 30, 23, 168, 100]; name: "uploadCircuit"; }, { accounts: [{ name: "nodeAuthority"; signer: true; writable: true; }, { name: "clusterAcc"; pda: { seeds: [{ kind: "const"; value: [67, 108, 117, 115, 116, 101, 114]; }, { kind: "arg"; path: "clusterOffset"; }]; }; writable: true; }, { name: "arxNodeAcc"; pda: { seeds: [{ kind: "const"; value: [65, 114, 120, 78, 111, 100, 101]; }, { kind: "arg"; path: "nodeOffset"; }]; }; }]; args: [{ name: "clusterOffset"; type: "u32"; }, { name: "nodeOffset"; type: "u32"; }, { name: "feeVote"; type: "u64"; }]; discriminator: [39, 118, 79, 185, 118, 12, 71, 84]; name: "voteFee"; }]


metadata

metadata: object

NameType
description"The Arcium program"
name"arcium"
spec"0.1.0"
version"0.4.0"

types

types: [{ name: "abortReason"; type: { kind: "enum"; variants: [{ name: "invalidMac"; }, { name: "expectedSentShare"; }, { name: "expectedFieldElement"; }, { name: "expectedAbort"; }, { name: "malformedData"; }, { name: "computationFailed"; }, { name: "internalError"; }, { name: "preprocessingStreamError"; }, { name: "divisionByZero"; }, { name: "noSignature"; }, { name: "invalidSignature"; }, { name: "primitiveError"; }, { name: "invalidBatchLength"; }, { name: "quadraticNonResidue"; }, { name: "bitConversionError"; }, { name: "channelClosed"; }]; }; }, { name: "acccountAccessInfo"; repr: { kind: "c"; }; serialization: "bytemuck"; type: { fields: [{ name: "inner"; type: "u16"; }]; kind: "struct"; }; }, { name: "accountArgument"; type: { fields: [{ name: "pubkey"; type: "pubkey"; }, { name: "offset"; type: "u32"; }, { name: "length"; type: "u32"; }]; kind: "struct"; }; }, { name: "activation"; type: { fields: [{ docs: ["epoch for the cluster was activated. Epoch::INFINITY if inactive."]; name: "activationEpoch"; type: { defined: { name: "epoch"; }; }; }, { docs: ["epoch for the cluster to be deactivated. Epoch::INFINITY if none."]; name: "deactivationEpoch"; type: { defined: { name: "epoch"; }; }; }]; kind: "struct"; }; }, { docs: ["Container for arguments that separates small inline values from large indexed data"]; name: "argumentList"; type: { fields: [{ name: "args"; type: { vec: { defined: { name: "argumentRef"; }; }; }; }, { name: "byteArrays"; type: { vec: { array: ["u8", 32]; }; }; }, { name: "plaintextNumbers"; type: { vec: "u64"; }; }, { name: "values128Bit"; type: { vec: "u128"; }; }, { name: "accounts"; type: { vec: { defined: { name: "accountArgument"; }; }; }; }]; kind: "struct"; }; }, { docs: ["A reference to an argument - stores small values that don't affect alignment inline and large", "values as indices."]; name: "argumentRef"; type: { kind: "enum"; variants: [{ fields: ["bool"]; name: "plaintextBool"; }, { fields: ["u8"]; name: "plaintextU8"; }, { fields: ["i8"]; name: "plaintextI8"; }, { fields: ["u8"]; name: "plaintextU16"; }, { fields: ["u8"]; name: "plaintextU32"; }, { fields: ["u8"]; name: "plaintextU64"; }, { fields: ["u8"]; name: "plaintextU128"; }, { fields: ["u8"]; name: "plaintextFloat"; }, { fields: ["u8"]; name: "encryptedBool"; }, { fields: ["u8"]; name: "encryptedU8"; }, { fields: ["u8"]; name: "encryptedU16"; }, { fields: ["u8"]; name: "encryptedU32"; }, { fields: ["u8"]; name: "encryptedU64"; }, { fields: ["u8"]; name: "encryptedU128"; }, { fields: ["u8"]; name: "encryptedFloat"; }, { fields: ["u8"]; name: "arcisX25519Pubkey"; }, { fields: ["u8"]; name: "arcisEd25519Signature"; }, { fields: ["u8"]; name: "account"; }, { fields: ["u8"]; name: "plaintextI16"; }, { fields: ["u8"]; name: "plaintextI32"; }, { fields: ["u8"]; name: "plaintextI64"; }, { fields: ["u8"]; name: "plaintextI128"; }, { fields: ["u8"]; name: "encryptedI8"; }, { fields: ["u8"]; name: "encryptedI16"; }, { fields: ["u8"]; name: "encryptedI32"; }, { fields: ["u8"]; name: "encryptedI64"; }, { fields: ["u8"]; name: "encryptedI128"; }]; }; }, { name: "arxNode"; type: { fields: [{ name: "primaryStakingAccount"; type: "pubkey"; }, { name: "metadata"; type: { defined: { name: "nodeMetadata"; }; }; }, { name: "config"; type: { defined: { name: "arxNodeConfig"; }; }; }, { docs: ["The offsets of the cluster the node is a member of."]; name: "clusterMembership"; type: { defined: { name: "clusterMembership"; }; }; }, { name: "cuCapacityClaim"; type: "u64"; }, { name: "isActive"; type: "bool"; }, { name: "bump"; type: "u8"; }]; kind: "struct"; }; }, { name: "arxNodeConfig"; type: { fields: [{ docs: ["Admin key for node management operations"]; name: "authority"; type: "pubkey"; }, { docs: ["Key used to sign computation callbacks - separated for operational security"]; name: "callbackAuthority"; type: "pubkey"; }]; kind: "struct"; }; }, { docs: ["A callback account to be provided to a computation.", "We don't specify signer, since node operators can't sign."]; name: "callbackAccount"; type: { fields: [{ name: "pubkey"; type: "pubkey"; }, { name: "isWritable"; type: "bool"; }]; kind: "struct"; }; }, { name: "callbackComputationEvent"; type: { fields: [{ name: "computationOffset"; type: "u64"; }, { name: "mxeProgramId"; type: "pubkey"; }]; kind: "struct"; }; }, { docs: ["A custom callback instruction with its own program ID and discriminator."]; name: "callbackInstruction"; type: { fields: [{ name: "programId"; type: "pubkey"; }, { name: "discriminator"; type: "bytes"; }, { name: "accounts"; type: { vec: { defined: { name: "callbackAccount"; }; }; }; }]; kind: "struct"; }; }, { name: "circuitSource"; type: { kind: "enum"; variants: [{ fields: [{ defined: { name: "localCircuitSource"; }; }]; name: "local"; }, { fields: [{ defined: { name: "onChainCircuitSource"; }; }]; name: "onChain"; }, { fields: [{ defined: { name: "offChainCircuitSource"; }; }]; name: "offChain"; }]; }; }, { name: "claimFailureEvent"; type: { fields: [{ name: "computationOffset"; type: "u64"; }, { name: "mxeProgramId"; type: "pubkey"; }]; kind: "struct"; }; }, { docs: ["An account storing the current network epoch"]; name: "clockAccount"; type: { fields: [{ name: "startEpoch"; type: { defined: { name: "epoch"; }; }; }, { name: "currentEpoch"; type: { defined: { name: "epoch"; }; }; }, { name: "startEpochTimestamp"; type: { defined: { name: "timestamp"; }; }; }, { name: "bump"; type: "u8"; }]; kind: "struct"; }; }, { name: "cluster"; type: { fields: [{ name: "authority"; type: { option: "pubkey"; }; }, { name: "maxSize"; type: "u32"; }, { name: "activation"; type: { defined: { name: "activation"; }; }; }, { name: "maxCapacity"; type: "u64"; }, { docs: ["The price of compute units in this cluster."]; name: "cuPrice"; type: "u64"; }, { docs: ["The proposals for the cu price proposals in the next epoch.", "Index 0 is always the current price, we allow `MAX_FEE_PROPS` at most."]; name: "cuPriceProposals"; type: { array: ["u64", 32]; }; }, { docs: ["The epoch this cluster was last updated.", "Used to determine if the cluster needs to be updated."]; name: "lastUpdatedEpoch"; type: { defined: { name: "epoch"; }; }; }, { name: "nodes"; type: { vec: { defined: { name: "nodeRef"; }; }; }; }, { name: "pendingNodes"; type: { vec: { defined: { name: "nodeRef"; }; }; }; }, { name: "bump"; type: "u8"; }]; kind: "struct"; }; }, { name: "clusterMembership"; type: { kind: "enum"; variants: [{ name: "inactive"; }, { fields: ["u32"]; name: "active"; }, { fields: ["u32"]; name: "proposed"; }]; }; }, { docs: ["A computation execution call to a [super::mxe::ComputationDefinitionAccount]."]; name: "computationAccount"; type: { fields: [{ name: "payer"; type: "pubkey"; }, { docs: ["The program ID of the MXE that this computation is associated with."]; name: "mxeProgramId"; type: "pubkey"; }, { docs: ["The MXE's cluster to be used for execution.", "", "# Notes", "", "- [None] represents the default cluster,", "- [Some] specifies the index of the fallback cluster."]; name: "clusterIndex"; type: { option: "u16"; }; }, { docs: ["The offset of the corresponding [super::mxe::ComputationDefinitionAccount]."]; name: "computationDefinitionOffset"; type: "u32"; }, { docs: ["The execution fee for the execution."]; name: "executionFee"; type: { defined: { name: "executionFee"; }; }; }, { name: "slot"; type: "u64"; }, { name: "slotCounter"; type: "u16"; }, { name: "status"; type: { defined: { name: "computationStatus"; }; }; }, { name: "arguments"; type: { defined: { name: "argumentList"; }; }; }, { name: "callbackUrl"; type: { option: "string"; }; }, { name: "customCallbackInstructions"; type: { vec: { defined: { name: "callbackInstruction"; }; }; }; }, { name: "callbackTransactionsRequired"; type: "u8"; }, { name: "callbackTransactionsSubmittedBm"; type: "u16"; }, { name: "bump"; type: "u8"; }]; kind: "struct"; }; }, { docs: ["An account representing a [ComputationDefinition] in a MXE."]; name: "computationDefinitionAccount"; type: { fields: [{ docs: ["The authority that is allowed to finalize the computation. If set to None, anyone can."]; name: "finalizationAuthority"; type: { option: "pubkey"; }; }, { docs: ["The amount of CUs this computation will use."]; name: "cuAmount"; type: "u64"; }, { docs: ["The interface of the computation to execute."]; name: "definition"; type: { defined: { name: "computationDefinitionMeta"; }; }; }, { docs: ["Where to fetch the actual raw circuit to execute."]; name: "circuitSource"; type: { defined: { name: "circuitSource"; }; }; }, { name: "bump"; type: "u8"; }]; kind: "struct"; }; }, { docs: ["A computation definition for execution in a MXE."]; name: "computationDefinitionMeta"; type: { fields: [{ name: "circuitLen"; type: "u32"; }, { name: "signature"; type: { defined: { name: "computationSignature"; }; }; }]; kind: "struct"; }; }, { name: "computationDefinitionRaw"; repr: { kind: "c"; }; serialization: "bytemuckunsafe"; type: { fields: [{ name: "bump"; type: "u8"; }, { docs: ["The length here is meaningless."]; name: "compiledCircuit"; type: { array: ["u8", 0]; }; }]; kind: "struct"; }; }, { name: "computationReference"; repr: { kind: "c"; }; serialization: "bytemuck"; type: { fields: [{ name: "computationOffset"; type: "u64"; }, { name: "priorityFee"; type: "u64"; }, { name: "accs"; type: { array: [{ defined: { name: "acccountAccessInfo"; }; }, 12]; }; }]; kind: "struct"; }; }, { docs: ["The signature of a computation defined in a [ComputationDefinition]."]; name: "computationSignature"; type: { fields: [{ docs: ["The input parameters of the computation."]; name: "parameters"; type: { vec: { defined: { name: "parameter"; }; }; }; }, { docs: ["The output(s) of the computation."]; name: "outputs"; type: { vec: { defined: { name: "output"; }; }; }; }]; kind: "struct"; }; }, { name: "computationStatus"; type: { kind: "enum"; variants: [{ name: "queued"; }, { name: "finalized"; }]; }; }, { docs: ["The network epoch"]; name: "epoch"; type: { fields: ["u64"]; kind: "struct"; }; }, { generics: [{ kind: "const"; name: "maxParrallelComputations"; type: "usize"; }]; name: "executingPool"; repr: { kind: "c"; }; serialization: "bytemuckunsafe"; type: { fields: [{ name: "bump"; type: "u8"; }, { name: "padding"; type: { array: ["u8", 7]; }; }, { name: "counter"; type: "u64"; }, { name: "execpoolIndex"; type: { array: ["u64", { generic: "maxParrallelComputations"; }]; }; }, { name: "currentlyExecuting"; type: { array: [{ defined: { name: "computationReference"; }; }, { generic: "maxParrallelComputations"; }]; }; }]; kind: "struct"; }; }, { name: "executionFailure"; type: { kind: "enum"; variants: [{ name: "serialization"; }, { name: "router"; }, { name: "circuit"; }, { name: "inputs"; }, { name: "protocolInit"; }, { name: "protocolRun"; }, { fields: [{ defined: { name: "abortReason"; }; }]; name: "abort"; }]; }; }, { name: "executionFee"; type: { fields: [{ docs: ["The base fee for the computation."]; name: "baseFee"; type: "u64"; }, { docs: ["The additional fee to enforce priortized execution in the mempool."]; name: "priorityFee"; type: "u64"; }, { docs: ["A fee for output delivery fees (i.e. tx fees)."]; name: "outputDeliveryFee"; type: "u64"; }]; kind: "struct"; }; }, { name: "executionStatus"; type: { kind: "enum"; variants: [{ name: "success"; }, { fields: [{ defined: { name: "executionFailure"; }; }, { array: ["u8", 32]; }]; name: "failure"; }]; }; }, { name: "failureClaimAccountHeader"; repr: { kind: "c"; }; serialization: "bytemuckunsafe"; type: { fields: [{ name: "bump"; type: "u8"; }, { name: "isComplete"; type: "bool"; }, { name: "padding"; type: { array: ["u8", 6]; }; }, { name: "challengeEndSlot"; type: "u64"; }, { name: "poster"; type: "pubkey"; }]; kind: "struct"; }; }, { name: "feePool"; type: { fields: [{ name: "bump"; type: "u8"; }]; kind: "struct"; }; }, { name: "finalizeComputationEvent"; type: { fields: [{ name: "computationOffset"; type: "u64"; }, { name: "mxeProgramId"; type: "pubkey"; }]; kind: "struct"; }; }, { name: "finalizeFailureDataEvent"; type: { fields: [{ name: "computationOffset"; type: "u64"; }, { name: "mxeProgramId"; type: "pubkey"; }]; kind: "struct"; }; }, { name: "initComputationEvent"; type: { fields: [{ name: "computationOffset"; type: "u64"; }, { name: "mxeProgramId"; type: "pubkey"; }]; kind: "struct"; }; }, { name: "largeExecPool"; repr: { kind: "transparent"; }; serialization: "bytemuckunsafe"; type: { fields: [{ name: "inner"; type: { defined: { generics: [{ kind: "const"; value: "100"; }]; name: "executingPool"; }; }; }]; kind: "struct"; }; }, { name: "largeMempool"; repr: { kind: "transparent"; }; serialization: "bytemuckunsafe"; type: { fields: [{ name: "inner"; type: { defined: { name: "largeMempoolInner"; }; }; }]; kind: "struct"; }; }, { name: "largeMempoolInner"; repr: { kind: "c"; }; serialization: "bytemuckunsafe"; type: { fields: [{ name: "lastUpdatedSlot"; type: "u64"; }, { name: "slotCounter"; type: "u16"; }, { name: "bump"; type: "u8"; }, { name: "padding"; type: { array: ["u8", 5]; }; }, { name: "computations"; type: { defined: { name: "largeMempoolInnerBuffer"; }; }; }]; kind: "struct"; }; }, { name: "largeMempoolInnerBuffer"; repr: { kind: "c"; }; serialization: "bytemuckunsafe"; type: { fields: [{ name: "elems"; type: { array: [{ defined: { name: "largeMempoolInnerBufferHeap"; }; }, 180]; }; }, { docs: ["Bit array tracking which slots are valid (1 = valid, 0 = stale)", "1 bit per slot, packed into bytes. For $buffer_length=180, this is 23 bytes."]; name: "validBits"; type: { array: ["u8", 23]; }; }, { name: "startIndex"; type: "u8"; }, { name: "length"; type: "u8"; }, { name: "padding"; type: { array: ["u8", 7]; }; }]; kind: "struct"; }; }, { name: "largeMempoolInnerBufferHeap"; repr: { kind: "c"; }; serialization: "bytemuckunsafe"; type: { fields: [{ name: "entries"; type: { array: [{ defined: { name: "computationReference"; }; }, 100]; }; }, { name: "count"; type: "u16"; }, { name: "padding"; type: { array: ["u8", 6]; }; }]; kind: "struct"; }; }, { name: "localCircuitSource"; type: { kind: "enum"; variants: [{ name: "mxeKeygen"; }]; }; }, { docs: ["A MPC Execution Environment."]; name: "mxeAccount"; type: { fields: [{ docs: ["The cluster executing the MXE."]; name: "cluster"; type: { option: "u32"; }; }, { docs: ["The program ID of the program that this MXE is associated with. Needed so that when we", "index this account offchain we can find out what program it is associated with."]; name: "mxeProgramId"; type: "pubkey"; }, { docs: ["The management authority of the MXE."]; name: "authority"; type: { option: "pubkey"; }; }, { docs: ["The utility pubkeys, consisting of", "- x25519 pubkey (32 bytes), used for key exchange", "- ed25519 verifying key (32 bytes), used for signature verification", "- ElGamal pubkey (32 bytes), used for c-spl", "- ElGamal pubkey validity proof (64 bytes), used for c-spl"]; name: "utilityPubkeys"; type: { defined: { generics: [{ kind: "type"; type: { defined: ...; }; }]; name: "setUnset"; }; }; }, { docs: ["Fallback clusters that can execute this MXE as an alternative to the", "[MXEAccount::cluster]. There can be a maximum of [MAX_FALLBACK_CLUSTERS]", "fallback clusters."]; name: "fallbackClusters"; type: { vec: "u32"; }; }, { docs: ["The clusters that have rejected this MXE."]; name: "rejectedClusters"; type: { vec: "u32"; }; }, { docs: ["The offsets of all [ComputationDefinitionAccount]s of this MXE."]; name: "computationDefinitions"; type: { vec: "u32"; }; }, { name: "bump"; type: "u8"; }]; kind: "struct"; }; }, { name: "mediumExecPool"; repr: { kind: "transparent"; }; serialization: "bytemuckunsafe"; type: { fields: [{ name: "inner"; type: { defined: { generics: [{ kind: "const"; value: "10"; }]; name: "executingPool"; }; }; }]; kind: "struct"; }; }, { name: "mediumMempool"; repr: { kind: "transparent"; }; serialization: "bytemuckunsafe"; type: { fields: [{ name: "inner"; type: { defined: { name: "mediumMempoolInner"; }; }; }]; kind: "struct"; }; }, { name: "mediumMempoolInner"; repr: { kind: "c"; }; serialization: "bytemuckunsafe"; type: { fields: [{ name: "lastUpdatedSlot"; type: "u64"; }, { name: "slotCounter"; type: "u16"; }, { name: "bump"; type: "u8"; }, { name: "padding"; type: { array: ["u8", 5]; }; }, { name: "computations"; type: { defined: { name: "mediumMempoolInnerBuffer"; }; }; }]; kind: "struct"; }; }, { name: "mediumMempoolInnerBuffer"; repr: { kind: "c"; }; serialization: "bytemuckunsafe"; type: { fields: [{ name: "elems"; type: { array: [{ defined: { name: "mediumMempoolInnerBufferHeap"; }; }, 180]; }; }, { docs: ["Bit array tracking which slots are valid (1 = valid, 0 = stale)", "1 bit per slot, packed into bytes. For $buffer_length=180, this is 23 bytes."]; name: "validBits"; type: { array: ["u8", 23]; }; }, { name: "startIndex"; type: "u8"; }, { name: "length"; type: "u8"; }, { name: "padding"; type: { array: ["u8", 7]; }; }]; kind: "struct"; }; }, { name: "mediumMempoolInnerBufferHeap"; repr: { kind: "c"; }; serialization: "bytemuckunsafe"; type: { fields: [{ name: "entries"; type: { array: [{ defined: { name: "computationReference"; }; }, 10]; }; }, { name: "count"; type: "u16"; }, { name: "padding"; type: { array: ["u8", 6]; }; }]; kind: "struct"; }; }, { name: "mempoolSize"; type: { kind: "enum"; variants: [{ name: "tiny"; }, { name: "small"; }, { name: "medium"; }, { name: "large"; }]; }; }, { docs: ["location as [ISO 3166-1 alpha-2](https://www.iso.org/iso-3166-country-codes.html) country code"]; name: "nodeMetadata"; type: { fields: [{ docs: ["[Ipv4Addr], represented by it's 4 octects"]; name: "ip"; type: { array: ["u8", 4]; }; }, { docs: ["Needed for MPC protocol"]; name: "peerId"; type: { array: ["u8", 32]; }; }, { name: "location"; type: "u8"; }]; kind: "struct"; }; }, { docs: ["A reference to a node in the cluster.", "The offset is to derive the Node Account.", "The current_total_rewards is the total rewards the node has received so far in the current", "epoch."]; name: "nodeRef"; type: { fields: [{ name: "offset"; type: "u32"; }, { docs: ["Current total rewards the node has received in the current epoch in lamports."]; name: "currentTotalRewards"; type: "u64"; }, { name: "vote"; type: "u8"; }]; kind: "struct"; }; }, { name: "offChainCircuitSource"; type: { fields: [{ name: "source"; type: "string"; }, { name: "hash"; type: { array: ["u8", 32]; }; }]; kind: "struct"; }; }, { name: "onChainCircuitSource"; type: { fields: [{ docs: ["Specifies if the circuit for this computation has been fully uploaded,", "as this can take multiple transactions due to the circuit size."]; name: "isCompleted"; type: "bool"; }, { docs: ["The authority that is allowed to upload the circuit."]; name: "uploadAuth"; type: "pubkey"; }]; kind: "struct"; }; }, { name: "operator"; type: { fields: [{ name: "nodeOffsets"; type: { vec: "u32"; }; }, { name: "meta"; type: { defined: { name: "operatorMeta"; }; }; }, { name: "bump"; type: "u8"; }]; kind: "struct"; }; }, { docs: ["location as [ISO 3166-1 alpha-2](https://www.iso.org/iso-3166-country-codes.html) country code"]; name: "operatorMeta"; type: { fields: [{ docs: ["URL should point to a JSON containing the following fields:", "- `name`: String, the name of the operator", "- `description`: String, a description of the operator", "- `icon`: String, a URL to an icon representing the operator", "- `url`: String, a URL to the operator's website"]; name: "url"; type: "string"; }, { name: "location"; type: "u8"; }]; kind: "struct"; }; }, { docs: ["An output of a computation.", "We currently don't support encrypted outputs yet since encrypted values are passed via", "data objects."]; name: "output"; type: { kind: "enum"; variants: [{ name: "plaintextBool"; }, { name: "plaintextU8"; }, { name: "plaintextU16"; }, { name: "plaintextU32"; }, { name: "plaintextU64"; }, { name: "plaintextU128"; }, { name: "ciphertext"; }, { name: "arcisX25519Pubkey"; }, { name: "plaintextFloat"; }, { name: "plaintextPoint"; }, { name: "plaintextI8"; }, { name: "plaintextI16"; }, { name: "plaintextI32"; }, { name: "plaintextI64"; }, { name: "plaintextI128"; }]; }; }, { docs: ["A parameter of a computation.", "We differentiate between plaintext and encrypted parameters and data objects.", "Plaintext parameters are directly provided as their value.", "Encrypted parameters are provided as an offchain reference to the data.", "Data objects are provided as a reference to the data object account."]; name: "parameter"; type: { kind: "enum"; variants: [{ name: "plaintextBool"; }, { name: "plaintextU8"; }, { name: "plaintextU16"; }, { name: "plaintextU32"; }, { name: "plaintextU64"; }, { name: "plaintextU128"; }, { name: "ciphertext"; }, { name: "arcisX25519Pubkey"; }, { name: "arcisSignature"; }, { name: "plaintextFloat"; }, { name: "plaintextI8"; }, { name: "plaintextI16"; }, { name: "plaintextI32"; }, { name: "plaintextI64"; }, { name: "plaintextI128"; }, { name: "plaintextPoint"; }]; }; }, { name: "queueComputationEvent"; type: { fields: [{ name: "computationOffset"; type: "u64"; }, { name: "mxeProgramId"; type: "pubkey"; }]; kind: "struct"; }; }, { generics: [{ kind: "type"; name: "t"; }]; name: "setUnset"; type: { kind: "enum"; variants: [{ fields: [{ generic: "t"; }]; name: "set"; }, { fields: [{ generic: "t"; }, { vec: "bool"; }]; name: "unset"; }]; }; }, { name: "smallExecPool"; repr: { kind: "transparent"; }; serialization: "bytemuckunsafe"; type: { fields: [{ name: "inner"; type: { defined: { generics: [{ kind: "const"; value: "3"; }]; name: "executingPool"; }; }; }]; kind: "struct"; }; }, { name: "smallMempool"; repr: { kind: "transparent"; }; serialization: "bytemuckunsafe"; type: { fields: [{ name: "inner"; type: { defined: { name: "smallMempoolInner"; }; }; }]; kind: "struct"; }; }, { name: "smallMempoolInner"; repr: { kind: "c"; }; serialization: "bytemuckunsafe"; type: { fields: [{ name: "lastUpdatedSlot"; type: "u64"; }, { name: "slotCounter"; type: "u16"; }, { name: "bump"; type: "u8"; }, { name: "padding"; type: { array: ["u8", 5]; }; }, { name: "computations"; type: { defined: { name: "smallMempoolInnerBuffer"; }; }; }]; kind: "struct"; }; }, { name: "smallMempoolInnerBuffer"; repr: { kind: "c"; }; serialization: "bytemuckunsafe"; type: { fields: [{ name: "elems"; type: { array: [{ defined: { name: "smallMempoolInnerBufferHeap"; }; }, 180]; }; }, { docs: ["Bit array tracking which slots are valid (1 = valid, 0 = stale)", "1 bit per slot, packed into bytes. For $buffer_length=180, this is 23 bytes."]; name: "validBits"; type: { array: ["u8", 23]; }; }, { name: "startIndex"; type: "u8"; }, { name: "length"; type: "u8"; }, { name: "padding"; type: { array: ["u8", 7]; }; }]; kind: "struct"; }; }, { name: "smallMempoolInnerBufferHeap"; repr: { kind: "c"; }; serialization: "bytemuckunsafe"; type: { fields: [{ name: "entries"; type: { array: [{ defined: { name: "computationReference"; }; }, 3]; }; }, { name: "count"; type: "u16"; }, { name: "padding"; type: { array: ["u8", 6]; }; }]; kind: "struct"; }; }, { name: "timestamp"; type: { fields: [{ name: "timestamp"; type: "u64"; }]; kind: "struct"; }; }, { name: "tinyExecPool"; repr: { kind: "transparent"; }; serialization: "bytemuckunsafe"; type: { fields: [{ name: "inner"; type: { defined: { generics: [{ kind: "const"; value: "1"; }]; name: "executingPool"; }; }; }]; kind: "struct"; }; }, { name: "tinyMempool"; repr: { kind: "transparent"; }; serialization: "bytemuckunsafe"; type: { fields: [{ name: "inner"; type: { defined: { name: "tinyMempoolInner"; }; }; }]; kind: "struct"; }; }, { name: "tinyMempoolInner"; repr: { kind: "c"; }; serialization: "bytemuckunsafe"; type: { fields: [{ name: "lastUpdatedSlot"; type: "u64"; }, { name: "slotCounter"; type: "u16"; }, { name: "bump"; type: "u8"; }, { name: "padding"; type: { array: ["u8", 5]; }; }, { name: "computations"; type: { defined: { name: "tinyMempoolInnerBuffer"; }; }; }]; kind: "struct"; }; }, { name: "tinyMempoolInnerBuffer"; repr: { kind: "c"; }; serialization: "bytemuckunsafe"; type: { fields: [{ name: "elems"; type: { array: [{ defined: { name: "tinyMempoolInnerBufferHeap"; }; }, 180]; }; }, { docs: ["Bit array tracking which slots are valid (1 = valid, 0 = stale)", "1 bit per slot, packed into bytes. For $buffer_length=180, this is 23 bytes."]; name: "validBits"; type: { array: ["u8", 23]; }; }, { name: "startIndex"; type: "u8"; }, { name: "length"; type: "u8"; }, { name: "padding"; type: { array: ["u8", 7]; }; }]; kind: "struct"; }; }, { name: "tinyMempoolInnerBufferHeap"; repr: { kind: "c"; }; serialization: "bytemuckunsafe"; type: { fields: [{ name: "entries"; type: { array: [{ defined: { name: "computationReference"; }; }, 1]; }; }, { name: "count"; type: "u16"; }, { name: "padding"; type: { array: ["u8", 6]; }; }]; kind: "struct"; }; }, { name: "utilityPubkeys"; type: { fields: [{ name: "x25519Pubkey"; type: { array: ["u8", 32]; }; }, { name: "ed25519VerifyingKey"; type: { array: ["u8", 32]; }; }, { name: "elgamalPubkey"; type: { array: ["u8", 32]; }; }, { name: "pubkeyValidityProof"; type: { array: ["u8", 64]; }; }]; kind: "struct"; }; }]