diff --git a/script/checks/opcodes.ts b/script/checks/opcodes.ts index d636d03..3db9b9a 100644 --- a/script/checks/opcodes.ts +++ b/script/checks/opcodes.ts @@ -1,4 +1,4 @@ -import { type Hex, type PublicClient, toHex } from 'viem'; +import { type Hex, type PublicClient, toHex, zeroAddress } from 'viem'; type Opcode = number; type CallError = { details: string }; @@ -27,7 +27,7 @@ export async function checkOpcodes( async function checkOpcode(opcode: Opcode, client: PublicClient): Promise { try { - await client.call({ data: toHex(opcode, { size: 1 }) }); + await client.call({ data: toHex(opcode, { size: 1 }), to: zeroAddress }); return true; // Call succeeded so opcode is supported. } catch (e: unknown) { const err = e as CallError; diff --git a/script/data/chain/5234.json b/script/data/chain/5234.json new file mode 100644 index 0000000..3085100 --- /dev/null +++ b/script/data/chain/5234.json @@ -0,0 +1,590 @@ +{ + "metadata": { + "name": "Humanode Mainnet", + "shortName": "hmnd", + "chainId": 5234, + "networkId": 5234, + "infoURL": "https://humanode.io", + "nativeCurrency": { "name": "eHMND", "symbol": "eHMND", "decimals": 18 }, + "chain": "HMND", + "explorers": [ + { + "name": "Subscan", + "url": "https://humanode.subscan.io", + "standard": "EIP3091", + "icon": "subscan" + } + ], + "faucets": [], + "icon": "humanode", + "rpc": ["https://explorer-rpc-http.mainnet.stages.humanode.io"] + }, + "opcodes": [ + { "number": "0x00", "name": "STOP", "supported": true }, + { "number": "0x01", "name": "ADD", "supported": true }, + { "number": "0x02", "name": "MUL", "supported": true }, + { "number": "0x03", "name": "SUB", "supported": true }, + { "number": "0x04", "name": "DIV", "supported": true }, + { "number": "0x05", "name": "SDIV", "supported": true }, + { "number": "0x06", "name": "MOD", "supported": true }, + { "number": "0x07", "name": "SMOD", "supported": true }, + { "number": "0x08", "name": "ADDMOD", "supported": true }, + { "number": "0x09", "name": "MULMOD", "supported": true }, + { "number": "0x0a", "name": "EXP", "supported": true }, + { "number": "0x0b", "name": "SIGNEXTEND", "supported": true }, + { "number": "0x0c", "name": "unknown", "supported": true }, + { "number": "0x0d", "name": "unknown", "supported": true }, + { "number": "0x0e", "name": "unknown", "supported": true }, + { "number": "0x0f", "name": "unknown", "supported": true }, + { "number": "0x10", "name": "LT", "supported": true }, + { "number": "0x11", "name": "GT", "supported": true }, + { "number": "0x12", "name": "SLT", "supported": true }, + { "number": "0x13", "name": "SGT", "supported": true }, + { "number": "0x14", "name": "EQ", "supported": true }, + { "number": "0x15", "name": "ISZERO", "supported": true }, + { "number": "0x16", "name": "AND", "supported": true }, + { "number": "0x17", "name": "OR", "supported": true }, + { "number": "0x18", "name": "XOR", "supported": true }, + { "number": "0x19", "name": "NOT", "supported": true }, + { "number": "0x1a", "name": "BYTE", "supported": true }, + { "number": "0x1b", "name": "SHL", "supported": true }, + { "number": "0x1c", "name": "SHR", "supported": true }, + { "number": "0x1d", "name": "SAR", "supported": true }, + { "number": "0x1e", "name": "unknown", "supported": true }, + { "number": "0x1f", "name": "unknown", "supported": true }, + { "number": "0x20", "name": "KECCAK256", "supported": true }, + { "number": "0x21", "name": "unknown", "supported": true }, + { "number": "0x22", "name": "unknown", "supported": true }, + { "number": "0x23", "name": "unknown", "supported": true }, + { "number": "0x24", "name": "unknown", "supported": true }, + { "number": "0x25", "name": "unknown", "supported": true }, + { "number": "0x26", "name": "unknown", "supported": true }, + { "number": "0x27", "name": "unknown", "supported": true }, + { "number": "0x28", "name": "unknown", "supported": true }, + { "number": "0x29", "name": "unknown", "supported": true }, + { "number": "0x2a", "name": "unknown", "supported": true }, + { "number": "0x2b", "name": "unknown", "supported": true }, + { "number": "0x2c", "name": "unknown", "supported": true }, + { "number": "0x2d", "name": "unknown", "supported": true }, + { "number": "0x2e", "name": "unknown", "supported": true }, + { "number": "0x2f", "name": "unknown", "supported": true }, + { "number": "0x30", "name": "ADDRESS", "supported": true }, + { "number": "0x31", "name": "BALANCE", "supported": true }, + { "number": "0x32", "name": "ORIGIN", "supported": true }, + { "number": "0x33", "name": "CALLER", "supported": true }, + { "number": "0x34", "name": "CALLVALUE", "supported": true }, + { "number": "0x35", "name": "CALLDATALOAD", "supported": true }, + { "number": "0x36", "name": "CALLDATASIZE", "supported": true }, + { "number": "0x37", "name": "CALLDATACOPY", "supported": true }, + { "number": "0x38", "name": "CODESIZE", "supported": true }, + { "number": "0x39", "name": "CODECOPY", "supported": true }, + { "number": "0x3a", "name": "GASPRICE", "supported": true }, + { "number": "0x3b", "name": "EXTCODESIZE", "supported": true }, + { "number": "0x3c", "name": "EXTCODECOPY", "supported": true }, + { "number": "0x3d", "name": "RETURNDATASIZE", "supported": true }, + { "number": "0x3e", "name": "RETURNDATACOPY", "supported": true }, + { "number": "0x3f", "name": "EXTCODEHASH", "supported": true }, + { "number": "0x40", "name": "BLOCKHASH", "supported": true }, + { "number": "0x41", "name": "COINBASE", "supported": true }, + { "number": "0x42", "name": "TIMESTAMP", "supported": true }, + { "number": "0x43", "name": "NUMBER", "supported": true }, + { "number": "0x44", "name": "PREVRANDAO", "supported": true }, + { "number": "0x45", "name": "GASLIMIT", "supported": true }, + { "number": "0x46", "name": "CHAINID", "supported": true }, + { "number": "0x47", "name": "SELFBALANCE", "supported": true }, + { "number": "0x48", "name": "BASEFEE", "supported": true }, + { "number": "0x49", "name": "BLOBHASH", "supported": true }, + { "number": "0x4a", "name": "BLOBBASEFEE", "supported": true }, + { "number": "0x4b", "name": "unknown", "supported": true }, + { "number": "0x4c", "name": "unknown", "supported": true }, + { "number": "0x4d", "name": "unknown", "supported": true }, + { "number": "0x4e", "name": "unknown", "supported": true }, + { "number": "0x4f", "name": "unknown", "supported": true }, + { "number": "0x50", "name": "POP", "supported": true }, + { "number": "0x51", "name": "MLOAD", "supported": true }, + { "number": "0x52", "name": "MSTORE", "supported": true }, + { "number": "0x53", "name": "MSTORE8", "supported": true }, + { "number": "0x54", "name": "SLOAD", "supported": true }, + { "number": "0x55", "name": "SSTORE", "supported": true }, + { "number": "0x56", "name": "JUMP", "supported": true }, + { "number": "0x57", "name": "JUMPI", "supported": true }, + { "number": "0x58", "name": "PC", "supported": true }, + { "number": "0x59", "name": "MSIZE", "supported": true }, + { "number": "0x5a", "name": "GAS", "supported": true }, + { "number": "0x5b", "name": "JUMPDEST", "supported": true }, + { "number": "0x5c", "name": "TLOAD", "supported": true }, + { "number": "0x5d", "name": "TSTORE", "supported": true }, + { "number": "0x5e", "name": "MCOPY", "supported": true }, + { "number": "0x5f", "name": "PUSH0", "supported": true }, + { "number": "0x60", "name": "PUSH1", "supported": true }, + { "number": "0x61", "name": "PUSH2", "supported": true }, + { "number": "0x62", "name": "PUSH3", "supported": true }, + { "number": "0x63", "name": "PUSH4", "supported": true }, + { "number": "0x64", "name": "PUSH5", "supported": true }, + { "number": "0x65", "name": "PUSH6", "supported": true }, + { "number": "0x66", "name": "PUSH7", "supported": true }, + { "number": "0x67", "name": "PUSH8", "supported": true }, + { "number": "0x68", "name": "PUSH9", "supported": true }, + { "number": "0x69", "name": "PUSH10", "supported": true }, + { "number": "0x6a", "name": "PUSH11", "supported": true }, + { "number": "0x6b", "name": "PUSH12", "supported": true }, + { "number": "0x6c", "name": "PUSH13", "supported": true }, + { "number": "0x6d", "name": "PUSH14", "supported": true }, + { "number": "0x6e", "name": "PUSH15", "supported": true }, + { "number": "0x6f", "name": "PUSH16", "supported": true }, + { "number": "0x70", "name": "PUSH17", "supported": true }, + { "number": "0x71", "name": "PUSH18", "supported": true }, + { "number": "0x72", "name": "PUSH19", "supported": true }, + { "number": "0x73", "name": "PUSH20", "supported": true }, + { "number": "0x74", "name": "PUSH21", "supported": true }, + { "number": "0x75", "name": "PUSH22", "supported": true }, + { "number": "0x76", "name": "PUSH23", "supported": true }, + { "number": "0x77", "name": "PUSH24", "supported": true }, + { "number": "0x78", "name": "PUSH25", "supported": true }, + { "number": "0x79", "name": "PUSH26", "supported": true }, + { "number": "0x7a", "name": "PUSH27", "supported": true }, + { "number": "0x7b", "name": "PUSH28", "supported": true }, + { "number": "0x7c", "name": "PUSH29", "supported": true }, + { "number": "0x7d", "name": "PUSH30", "supported": true }, + { "number": "0x7e", "name": "PUSH31", "supported": true }, + { "number": "0x7f", "name": "PUSH32", "supported": true }, + { "number": "0x80", "name": "DUP1", "supported": true }, + { "number": "0x81", "name": "DUP2", "supported": true }, + { "number": "0x82", "name": "DUP3", "supported": true }, + { "number": "0x83", "name": "DUP4", "supported": true }, + { "number": "0x84", "name": "DUP5", "supported": true }, + { "number": "0x85", "name": "DUP6", "supported": true }, + { "number": "0x86", "name": "DUP7", "supported": true }, + { "number": "0x87", "name": "DUP8", "supported": true }, + { "number": "0x88", "name": "DUP9", "supported": true }, + { "number": "0x89", "name": "DUP10", "supported": true }, + { "number": "0x8a", "name": "DUP11", "supported": true }, + { "number": "0x8b", "name": "DUP12", "supported": true }, + { "number": "0x8c", "name": "DUP13", "supported": true }, + { "number": "0x8d", "name": "DUP14", "supported": true }, + { "number": "0x8e", "name": "DUP15", "supported": true }, + { "number": "0x8f", "name": "DUP16", "supported": true }, + { "number": "0x90", "name": "SWAP1", "supported": true }, + { "number": "0x91", "name": "SWAP2", "supported": true }, + { "number": "0x92", "name": "SWAP3", "supported": true }, + { "number": "0x93", "name": "SWAP4", "supported": true }, + { "number": "0x94", "name": "SWAP5", "supported": true }, + { "number": "0x95", "name": "SWAP6", "supported": true }, + { "number": "0x96", "name": "SWAP7", "supported": true }, + { "number": "0x97", "name": "SWAP8", "supported": true }, + { "number": "0x98", "name": "SWAP9", "supported": true }, + { "number": "0x99", "name": "SWAP10", "supported": true }, + { "number": "0x9a", "name": "SWAP11", "supported": true }, + { "number": "0x9b", "name": "SWAP12", "supported": true }, + { "number": "0x9c", "name": "SWAP13", "supported": true }, + { "number": "0x9d", "name": "SWAP14", "supported": true }, + { "number": "0x9e", "name": "SWAP15", "supported": true }, + { "number": "0x9f", "name": "SWAP16", "supported": true }, + { "number": "0xa0", "name": "LOG0", "supported": true }, + { "number": "0xa1", "name": "LOG1", "supported": true }, + { "number": "0xa2", "name": "LOG2", "supported": true }, + { "number": "0xa3", "name": "LOG3", "supported": true }, + { "number": "0xa4", "name": "LOG4", "supported": true }, + { "number": "0xa5", "name": "unknown", "supported": true }, + { "number": "0xa6", "name": "unknown", "supported": true }, + { "number": "0xa7", "name": "unknown", "supported": true }, + { "number": "0xa8", "name": "unknown", "supported": true }, + { "number": "0xa9", "name": "unknown", "supported": true }, + { "number": "0xaa", "name": "unknown", "supported": true }, + { "number": "0xab", "name": "unknown", "supported": true }, + { "number": "0xac", "name": "unknown", "supported": true }, + { "number": "0xad", "name": "unknown", "supported": true }, + { "number": "0xae", "name": "unknown", "supported": true }, + { "number": "0xaf", "name": "unknown", "supported": true }, + { "number": "0xb0", "name": "unknown", "supported": true }, + { "number": "0xb1", "name": "unknown", "supported": true }, + { "number": "0xb2", "name": "unknown", "supported": true }, + { "number": "0xb3", "name": "unknown", "supported": true }, + { "number": "0xb4", "name": "unknown", "supported": true }, + { "number": "0xb5", "name": "unknown", "supported": true }, + { "number": "0xb6", "name": "unknown", "supported": true }, + { "number": "0xb7", "name": "unknown", "supported": true }, + { "number": "0xb8", "name": "unknown", "supported": true }, + { "number": "0xb9", "name": "unknown", "supported": true }, + { "number": "0xba", "name": "unknown", "supported": true }, + { "number": "0xbb", "name": "unknown", "supported": true }, + { "number": "0xbc", "name": "unknown", "supported": true }, + { "number": "0xbd", "name": "unknown", "supported": true }, + { "number": "0xbe", "name": "unknown", "supported": true }, + { "number": "0xbf", "name": "unknown", "supported": true }, + { "number": "0xc0", "name": "unknown", "supported": true }, + { "number": "0xc1", "name": "unknown", "supported": true }, + { "number": "0xc2", "name": "unknown", "supported": true }, + { "number": "0xc3", "name": "unknown", "supported": true }, + { "number": "0xc4", "name": "unknown", "supported": true }, + { "number": "0xc5", "name": "unknown", "supported": true }, + { "number": "0xc6", "name": "unknown", "supported": true }, + { "number": "0xc7", "name": "unknown", "supported": true }, + { "number": "0xc8", "name": "unknown", "supported": true }, + { "number": "0xc9", "name": "unknown", "supported": true }, + { "number": "0xca", "name": "unknown", "supported": true }, + { "number": "0xcb", "name": "unknown", "supported": true }, + { "number": "0xcc", "name": "unknown", "supported": true }, + { "number": "0xcd", "name": "unknown", "supported": true }, + { "number": "0xce", "name": "unknown", "supported": true }, + { "number": "0xcf", "name": "unknown", "supported": true }, + { "number": "0xd0", "name": "unknown", "supported": true }, + { "number": "0xd1", "name": "unknown", "supported": true }, + { "number": "0xd2", "name": "unknown", "supported": true }, + { "number": "0xd3", "name": "unknown", "supported": true }, + { "number": "0xd4", "name": "unknown", "supported": true }, + { "number": "0xd5", "name": "unknown", "supported": true }, + { "number": "0xd6", "name": "unknown", "supported": true }, + { "number": "0xd7", "name": "unknown", "supported": true }, + { "number": "0xd8", "name": "unknown", "supported": true }, + { "number": "0xd9", "name": "unknown", "supported": true }, + { "number": "0xda", "name": "unknown", "supported": true }, + { "number": "0xdb", "name": "unknown", "supported": true }, + { "number": "0xdc", "name": "unknown", "supported": true }, + { "number": "0xdd", "name": "unknown", "supported": true }, + { "number": "0xde", "name": "unknown", "supported": true }, + { "number": "0xdf", "name": "unknown", "supported": true }, + { "number": "0xe0", "name": "unknown", "supported": true }, + { "number": "0xe1", "name": "unknown", "supported": true }, + { "number": "0xe2", "name": "unknown", "supported": true }, + { "number": "0xe3", "name": "unknown", "supported": true }, + { "number": "0xe4", "name": "unknown", "supported": true }, + { "number": "0xe5", "name": "unknown", "supported": true }, + { "number": "0xe6", "name": "unknown", "supported": true }, + { "number": "0xe7", "name": "unknown", "supported": true }, + { "number": "0xe8", "name": "unknown", "supported": true }, + { "number": "0xe9", "name": "unknown", "supported": true }, + { "number": "0xea", "name": "unknown", "supported": true }, + { "number": "0xeb", "name": "unknown", "supported": true }, + { "number": "0xec", "name": "unknown", "supported": true }, + { "number": "0xed", "name": "unknown", "supported": true }, + { "number": "0xee", "name": "unknown", "supported": true }, + { "number": "0xef", "name": "unknown", "supported": true }, + { "number": "0xf0", "name": "CREATE", "supported": true }, + { "number": "0xf1", "name": "CALL", "supported": true }, + { "number": "0xf2", "name": "CALLCODE", "supported": true }, + { "number": "0xf3", "name": "RETURN", "supported": true }, + { "number": "0xf4", "name": "DELEGATECALL", "supported": true }, + { "number": "0xf5", "name": "CREATE2", "supported": true }, + { "number": "0xf6", "name": "unknown", "supported": true }, + { "number": "0xf7", "name": "unknown", "supported": true }, + { "number": "0xf8", "name": "unknown", "supported": true }, + { "number": "0xf9", "name": "unknown", "supported": true }, + { "number": "0xfa", "name": "STATICCALL", "supported": true }, + { "number": "0xfb", "name": "unknown", "supported": true }, + { "number": "0xfc", "name": "unknown", "supported": true }, + { "number": "0xfd", "name": "REVERT", "supported": true }, + { "number": "0xfe", "name": "INVALID", "supported": true }, + { "number": "0xff", "name": "SELFDESTRUCT", "supported": true } + ], + "deployedContracts": [ + { + "name": "CreateX", + "address": "0xba5Ed099633D3B313e4D5F7bdc1305d3c28ba5Ed", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "hasCode": false + }, + { + "name": "Arachnid's Deterministic Deployment Proxy", + "address": "0x4e59b44847b379578588920cA78FbF26c0B4956C", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "hasCode": false + }, + { + "name": "Create2Deployer", + "address": "0x13b0D85CcB8bf860b6b79AF3029fCA081AE9beF2", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "hasCode": false + }, + { + "name": "ERC-4337 Entry Point v0.6", + "address": "0x5FF137D4b0FDCD49DcA30c7CF57E578a026d2789", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "hasCode": false + }, + { + "name": "ERC-4337 Simple Account Factory v0.6", + "address": "0x9406Cc6185a346906296840746125a0E44976454", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "hasCode": false + }, + { + "name": "Multicall3", + "address": "0xcA11bde05977b3631167028862bE2a173976CA11", + "codeHash": "0xd5c15df687b16f2ff992fc8d767b4216323184a2bbc6ee2f9c398c318e770891", + "hasCode": true + }, + { + "name": "Permit2", + "address": "0x000000000022D473030F116dDEE9F6B43aC78BA3", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "hasCode": false + } + ], + "precompiles": [ + { + "name": "ecRecover", + "address": "0x0000000000000000000000000000000000000001", + "implemented": true + }, + { + "name": "SHA2-256", + "address": "0x0000000000000000000000000000000000000002", + "implemented": true + }, + { + "name": "RIPEMD-160", + "address": "0x0000000000000000000000000000000000000003", + "implemented": true + }, + { + "name": "identity", + "address": "0x0000000000000000000000000000000000000004", + "implemented": true + }, + { + "name": "modexp", + "address": "0x0000000000000000000000000000000000000005", + "implemented": true + }, + { + "name": "ecAdd", + "address": "0x0000000000000000000000000000000000000006", + "implemented": true + }, + { + "name": "ecMul", + "address": "0x0000000000000000000000000000000000000007", + "implemented": true + }, + { + "name": "ecPairing", + "address": "0x0000000000000000000000000000000000000008", + "implemented": true + }, + { + "name": "blake2f", + "address": "0x0000000000000000000000000000000000000009", + "implemented": true + }, + { + "name": "point evaluation", + "address": "0x000000000000000000000000000000000000000a", + "implemented": false + }, + { + "name": "secp256r1", + "address": "0x0000000000000000000000000000000000000100", + "implemented": false + } + ], + "evmStackAddresses": { + "OP": [ + { + "name": "LegacyMessagePasser", + "address": "0x4200000000000000000000000000000000000000", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "DeployerWhitelist", + "address": "0x4200000000000000000000000000000000000002", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "LegacyERC20ETH", + "address": "0xDeadDeAddeAddEAddeadDEaDDEAdDeaDDeAD0000", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "WETH9", + "address": "0x4200000000000000000000000000000000000006", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "L2CrossDomainMessenger", + "address": "0x4200000000000000000000000000000000000007", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "L2StandardBridge", + "address": "0x4200000000000000000000000000000000000010", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "SequencerFeeVault", + "address": "0x4200000000000000000000000000000000000011", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "OptimismMintableERC20Factory", + "address": "0x4200000000000000000000000000000000000012", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "L1BlockNumber", + "address": "0x4200000000000000000000000000000000000013", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "GasPriceOracle", + "address": "0x420000000000000000000000000000000000000F", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "GovernanceToken", + "address": "0x4200000000000000000000000000000000000042", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "L1Block", + "address": "0x4200000000000000000000000000000000000015", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "L2ToL1MessagePasser", + "address": "0x4200000000000000000000000000000000000016", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "L2ERC721Bridge", + "address": "0x4200000000000000000000000000000000000014", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "OptimismMintableERC721Factory", + "address": "0x4200000000000000000000000000000000000017", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "ProxyAdmin", + "address": "0x4200000000000000000000000000000000000018", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "BaseFeeVault", + "address": "0x4200000000000000000000000000000000000019", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "L1FeeVault", + "address": "0x420000000000000000000000000000000000001a", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + } + ], + "Orbit": [ + { + "name": "ArbAddressTable", + "address": "0x0000000000000000000000000000000000000066", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "ArbAggregator", + "address": "0x000000000000000000000000000000000000006D", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "ArbFunctionTable", + "address": "0x0000000000000000000000000000000000000068", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "ArbGasInfo", + "address": "0x000000000000000000000000000000000000006C", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "ArbInfo", + "address": "0x0000000000000000000000000000000000000065", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "ArbOwner", + "address": "0x0000000000000000000000000000000000000070", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "ArbOwnerPublic", + "address": "0x000000000000000000000000000000000000006b", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "ArbRetryableTx", + "address": "0x000000000000000000000000000000000000006E", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "ArbStatistics", + "address": "0x000000000000000000000000000000000000006F", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "ArbSys", + "address": "0x0000000000000000000000000000000000000064", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "NodeInterface", + "address": "0x00000000000000000000000000000000000000C8", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + } + ] + } +} diff --git a/script/data/feature/deployedContracts.json b/script/data/feature/deployedContracts.json index 747a1f5..56a660b 100644 --- a/script/data/feature/deployedContracts.json +++ b/script/data/feature/deployedContracts.json @@ -131,6 +131,50 @@ "hasCode": true } ], + "5234": [ + { + "name": "CreateX", + "address": "0xba5Ed099633D3B313e4D5F7bdc1305d3c28ba5Ed", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "hasCode": false + }, + { + "name": "Arachnid's Deterministic Deployment Proxy", + "address": "0x4e59b44847b379578588920cA78FbF26c0B4956C", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "hasCode": false + }, + { + "name": "Create2Deployer", + "address": "0x13b0D85CcB8bf860b6b79AF3029fCA081AE9beF2", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "hasCode": false + }, + { + "name": "ERC-4337 Entry Point v0.6", + "address": "0x5FF137D4b0FDCD49DcA30c7CF57E578a026d2789", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "hasCode": false + }, + { + "name": "ERC-4337 Simple Account Factory v0.6", + "address": "0x9406Cc6185a346906296840746125a0E44976454", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "hasCode": false + }, + { + "name": "Multicall3", + "address": "0xcA11bde05977b3631167028862bE2a173976CA11", + "codeHash": "0xd5c15df687b16f2ff992fc8d767b4216323184a2bbc6ee2f9c398c318e770891", + "hasCode": true + }, + { + "name": "Permit2", + "address": "0x000000000022D473030F116dDEE9F6B43aC78BA3", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "hasCode": false + } + ], "8453": [ { "name": "CreateX", diff --git a/script/data/feature/evmStackAddresses.json b/script/data/feature/evmStackAddresses.json index 20da8b7..9f63e81 100644 --- a/script/data/feature/evmStackAddresses.json +++ b/script/data/feature/evmStackAddresses.json @@ -626,6 +626,215 @@ } ] }, + "5234": { + "OP": [ + { + "name": "LegacyMessagePasser", + "address": "0x4200000000000000000000000000000000000000", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "DeployerWhitelist", + "address": "0x4200000000000000000000000000000000000002", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "LegacyERC20ETH", + "address": "0xDeadDeAddeAddEAddeadDEaDDEAdDeaDDeAD0000", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "WETH9", + "address": "0x4200000000000000000000000000000000000006", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "L2CrossDomainMessenger", + "address": "0x4200000000000000000000000000000000000007", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "L2StandardBridge", + "address": "0x4200000000000000000000000000000000000010", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "SequencerFeeVault", + "address": "0x4200000000000000000000000000000000000011", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "OptimismMintableERC20Factory", + "address": "0x4200000000000000000000000000000000000012", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "L1BlockNumber", + "address": "0x4200000000000000000000000000000000000013", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "GasPriceOracle", + "address": "0x420000000000000000000000000000000000000F", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "GovernanceToken", + "address": "0x4200000000000000000000000000000000000042", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "L1Block", + "address": "0x4200000000000000000000000000000000000015", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "L2ToL1MessagePasser", + "address": "0x4200000000000000000000000000000000000016", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "L2ERC721Bridge", + "address": "0x4200000000000000000000000000000000000014", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "OptimismMintableERC721Factory", + "address": "0x4200000000000000000000000000000000000017", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "ProxyAdmin", + "address": "0x4200000000000000000000000000000000000018", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "BaseFeeVault", + "address": "0x4200000000000000000000000000000000000019", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "L1FeeVault", + "address": "0x420000000000000000000000000000000000001a", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + } + ], + "Orbit": [ + { + "name": "ArbAddressTable", + "address": "0x0000000000000000000000000000000000000066", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "ArbAggregator", + "address": "0x000000000000000000000000000000000000006D", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "ArbFunctionTable", + "address": "0x0000000000000000000000000000000000000068", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "ArbGasInfo", + "address": "0x000000000000000000000000000000000000006C", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "ArbInfo", + "address": "0x0000000000000000000000000000000000000065", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "ArbOwner", + "address": "0x0000000000000000000000000000000000000070", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "ArbOwnerPublic", + "address": "0x000000000000000000000000000000000000006b", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "ArbRetryableTx", + "address": "0x000000000000000000000000000000000000006E", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "ArbStatistics", + "address": "0x000000000000000000000000000000000000006F", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "ArbSys", + "address": "0x0000000000000000000000000000000000000064", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + }, + { + "name": "NodeInterface", + "address": "0x00000000000000000000000000000000000000C8", + "kind": "Predeploy", + "codeHash": "0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470", + "exists": false + } + ] + }, "8453": { "OP": [ { diff --git a/script/data/feature/metadata.json b/script/data/feature/metadata.json index e2bcffa..50b988a 100644 --- a/script/data/feature/metadata.json +++ b/script/data/feature/metadata.json @@ -118,6 +118,26 @@ ], "slip44": 966 }, + "5234": { + "name": "Humanode Mainnet", + "shortName": "hmnd", + "chainId": 5234, + "networkId": 5234, + "infoURL": "https://humanode.io", + "nativeCurrency": { "name": "eHMND", "symbol": "eHMND", "decimals": 18 }, + "chain": "HMND", + "explorers": [ + { + "name": "Subscan", + "url": "https://humanode.subscan.io", + "standard": "EIP3091", + "icon": "subscan" + } + ], + "faucets": [], + "icon": "humanode", + "rpc": ["https://explorer-rpc-http.mainnet.stages.humanode.io"] + }, "8453": { "name": "Base", "shortName": "base", diff --git a/script/data/feature/opcodes.json b/script/data/feature/opcodes.json index fe7780b..9cca33a 100644 --- a/script/data/feature/opcodes.json +++ b/script/data/feature/opcodes.json @@ -452,6 +452,264 @@ { "number": "0xfe", "name": "INVALID", "supported": true }, { "number": "0xff", "name": "SELFDESTRUCT", "supported": true } ], + "5234": [ + { "number": "0x00", "name": "STOP", "supported": true }, + { "number": "0x01", "name": "ADD", "supported": true }, + { "number": "0x02", "name": "MUL", "supported": true }, + { "number": "0x03", "name": "SUB", "supported": true }, + { "number": "0x04", "name": "DIV", "supported": true }, + { "number": "0x05", "name": "SDIV", "supported": true }, + { "number": "0x06", "name": "MOD", "supported": true }, + { "number": "0x07", "name": "SMOD", "supported": true }, + { "number": "0x08", "name": "ADDMOD", "supported": true }, + { "number": "0x09", "name": "MULMOD", "supported": true }, + { "number": "0x0a", "name": "EXP", "supported": true }, + { "number": "0x0b", "name": "SIGNEXTEND", "supported": true }, + { "number": "0x0c", "name": "unknown", "supported": true }, + { "number": "0x0d", "name": "unknown", "supported": true }, + { "number": "0x0e", "name": "unknown", "supported": true }, + { "number": "0x0f", "name": "unknown", "supported": true }, + { "number": "0x10", "name": "LT", "supported": true }, + { "number": "0x11", "name": "GT", "supported": true }, + { "number": "0x12", "name": "SLT", "supported": true }, + { "number": "0x13", "name": "SGT", "supported": true }, + { "number": "0x14", "name": "EQ", "supported": true }, + { "number": "0x15", "name": "ISZERO", "supported": true }, + { "number": "0x16", "name": "AND", "supported": true }, + { "number": "0x17", "name": "OR", "supported": true }, + { "number": "0x18", "name": "XOR", "supported": true }, + { "number": "0x19", "name": "NOT", "supported": true }, + { "number": "0x1a", "name": "BYTE", "supported": true }, + { "number": "0x1b", "name": "SHL", "supported": true }, + { "number": "0x1c", "name": "SHR", "supported": true }, + { "number": "0x1d", "name": "SAR", "supported": true }, + { "number": "0x1e", "name": "unknown", "supported": true }, + { "number": "0x1f", "name": "unknown", "supported": true }, + { "number": "0x20", "name": "KECCAK256", "supported": true }, + { "number": "0x21", "name": "unknown", "supported": true }, + { "number": "0x22", "name": "unknown", "supported": true }, + { "number": "0x23", "name": "unknown", "supported": true }, + { "number": "0x24", "name": "unknown", "supported": true }, + { "number": "0x25", "name": "unknown", "supported": true }, + { "number": "0x26", "name": "unknown", "supported": true }, + { "number": "0x27", "name": "unknown", "supported": true }, + { "number": "0x28", "name": "unknown", "supported": true }, + { "number": "0x29", "name": "unknown", "supported": true }, + { "number": "0x2a", "name": "unknown", "supported": true }, + { "number": "0x2b", "name": "unknown", "supported": true }, + { "number": "0x2c", "name": "unknown", "supported": true }, + { "number": "0x2d", "name": "unknown", "supported": true }, + { "number": "0x2e", "name": "unknown", "supported": true }, + { "number": "0x2f", "name": "unknown", "supported": true }, + { "number": "0x30", "name": "ADDRESS", "supported": true }, + { "number": "0x31", "name": "BALANCE", "supported": true }, + { "number": "0x32", "name": "ORIGIN", "supported": true }, + { "number": "0x33", "name": "CALLER", "supported": true }, + { "number": "0x34", "name": "CALLVALUE", "supported": true }, + { "number": "0x35", "name": "CALLDATALOAD", "supported": true }, + { "number": "0x36", "name": "CALLDATASIZE", "supported": true }, + { "number": "0x37", "name": "CALLDATACOPY", "supported": true }, + { "number": "0x38", "name": "CODESIZE", "supported": true }, + { "number": "0x39", "name": "CODECOPY", "supported": true }, + { "number": "0x3a", "name": "GASPRICE", "supported": true }, + { "number": "0x3b", "name": "EXTCODESIZE", "supported": true }, + { "number": "0x3c", "name": "EXTCODECOPY", "supported": true }, + { "number": "0x3d", "name": "RETURNDATASIZE", "supported": true }, + { "number": "0x3e", "name": "RETURNDATACOPY", "supported": true }, + { "number": "0x3f", "name": "EXTCODEHASH", "supported": true }, + { "number": "0x40", "name": "BLOCKHASH", "supported": true }, + { "number": "0x41", "name": "COINBASE", "supported": true }, + { "number": "0x42", "name": "TIMESTAMP", "supported": true }, + { "number": "0x43", "name": "NUMBER", "supported": true }, + { "number": "0x44", "name": "PREVRANDAO", "supported": true }, + { "number": "0x45", "name": "GASLIMIT", "supported": true }, + { "number": "0x46", "name": "CHAINID", "supported": true }, + { "number": "0x47", "name": "SELFBALANCE", "supported": true }, + { "number": "0x48", "name": "BASEFEE", "supported": true }, + { "number": "0x49", "name": "BLOBHASH", "supported": true }, + { "number": "0x4a", "name": "BLOBBASEFEE", "supported": true }, + { "number": "0x4b", "name": "unknown", "supported": true }, + { "number": "0x4c", "name": "unknown", "supported": true }, + { "number": "0x4d", "name": "unknown", "supported": true }, + { "number": "0x4e", "name": "unknown", "supported": true }, + { "number": "0x4f", "name": "unknown", "supported": true }, + { "number": "0x50", "name": "POP", "supported": true }, + { "number": "0x51", "name": "MLOAD", "supported": true }, + { "number": "0x52", "name": "MSTORE", "supported": true }, + { "number": "0x53", "name": "MSTORE8", "supported": true }, + { "number": "0x54", "name": "SLOAD", "supported": true }, + { "number": "0x55", "name": "SSTORE", "supported": true }, + { "number": "0x56", "name": "JUMP", "supported": true }, + { "number": "0x57", "name": "JUMPI", "supported": true }, + { "number": "0x58", "name": "PC", "supported": true }, + { "number": "0x59", "name": "MSIZE", "supported": true }, + { "number": "0x5a", "name": "GAS", "supported": true }, + { "number": "0x5b", "name": "JUMPDEST", "supported": true }, + { "number": "0x5c", "name": "TLOAD", "supported": true }, + { "number": "0x5d", "name": "TSTORE", "supported": true }, + { "number": "0x5e", "name": "MCOPY", "supported": true }, + { "number": "0x5f", "name": "PUSH0", "supported": true }, + { "number": "0x60", "name": "PUSH1", "supported": true }, + { "number": "0x61", "name": "PUSH2", "supported": true }, + { "number": "0x62", "name": "PUSH3", "supported": true }, + { "number": "0x63", "name": "PUSH4", "supported": true }, + { "number": "0x64", "name": "PUSH5", "supported": true }, + { "number": "0x65", "name": "PUSH6", "supported": true }, + { "number": "0x66", "name": "PUSH7", "supported": true }, + { "number": "0x67", "name": "PUSH8", "supported": true }, + { "number": "0x68", "name": "PUSH9", "supported": true }, + { "number": "0x69", "name": "PUSH10", "supported": true }, + { "number": "0x6a", "name": "PUSH11", "supported": true }, + { "number": "0x6b", "name": "PUSH12", "supported": true }, + { "number": "0x6c", "name": "PUSH13", "supported": true }, + { "number": "0x6d", "name": "PUSH14", "supported": true }, + { "number": "0x6e", "name": "PUSH15", "supported": true }, + { "number": "0x6f", "name": "PUSH16", "supported": true }, + { "number": "0x70", "name": "PUSH17", "supported": true }, + { "number": "0x71", "name": "PUSH18", "supported": true }, + { "number": "0x72", "name": "PUSH19", "supported": true }, + { "number": "0x73", "name": "PUSH20", "supported": true }, + { "number": "0x74", "name": "PUSH21", "supported": true }, + { "number": "0x75", "name": "PUSH22", "supported": true }, + { "number": "0x76", "name": "PUSH23", "supported": true }, + { "number": "0x77", "name": "PUSH24", "supported": true }, + { "number": "0x78", "name": "PUSH25", "supported": true }, + { "number": "0x79", "name": "PUSH26", "supported": true }, + { "number": "0x7a", "name": "PUSH27", "supported": true }, + { "number": "0x7b", "name": "PUSH28", "supported": true }, + { "number": "0x7c", "name": "PUSH29", "supported": true }, + { "number": "0x7d", "name": "PUSH30", "supported": true }, + { "number": "0x7e", "name": "PUSH31", "supported": true }, + { "number": "0x7f", "name": "PUSH32", "supported": true }, + { "number": "0x80", "name": "DUP1", "supported": true }, + { "number": "0x81", "name": "DUP2", "supported": true }, + { "number": "0x82", "name": "DUP3", "supported": true }, + { "number": "0x83", "name": "DUP4", "supported": true }, + { "number": "0x84", "name": "DUP5", "supported": true }, + { "number": "0x85", "name": "DUP6", "supported": true }, + { "number": "0x86", "name": "DUP7", "supported": true }, + { "number": "0x87", "name": "DUP8", "supported": true }, + { "number": "0x88", "name": "DUP9", "supported": true }, + { "number": "0x89", "name": "DUP10", "supported": true }, + { "number": "0x8a", "name": "DUP11", "supported": true }, + { "number": "0x8b", "name": "DUP12", "supported": true }, + { "number": "0x8c", "name": "DUP13", "supported": true }, + { "number": "0x8d", "name": "DUP14", "supported": true }, + { "number": "0x8e", "name": "DUP15", "supported": true }, + { "number": "0x8f", "name": "DUP16", "supported": true }, + { "number": "0x90", "name": "SWAP1", "supported": true }, + { "number": "0x91", "name": "SWAP2", "supported": true }, + { "number": "0x92", "name": "SWAP3", "supported": true }, + { "number": "0x93", "name": "SWAP4", "supported": true }, + { "number": "0x94", "name": "SWAP5", "supported": true }, + { "number": "0x95", "name": "SWAP6", "supported": true }, + { "number": "0x96", "name": "SWAP7", "supported": true }, + { "number": "0x97", "name": "SWAP8", "supported": true }, + { "number": "0x98", "name": "SWAP9", "supported": true }, + { "number": "0x99", "name": "SWAP10", "supported": true }, + { "number": "0x9a", "name": "SWAP11", "supported": true }, + { "number": "0x9b", "name": "SWAP12", "supported": true }, + { "number": "0x9c", "name": "SWAP13", "supported": true }, + { "number": "0x9d", "name": "SWAP14", "supported": true }, + { "number": "0x9e", "name": "SWAP15", "supported": true }, + { "number": "0x9f", "name": "SWAP16", "supported": true }, + { "number": "0xa0", "name": "LOG0", "supported": true }, + { "number": "0xa1", "name": "LOG1", "supported": true }, + { "number": "0xa2", "name": "LOG2", "supported": true }, + { "number": "0xa3", "name": "LOG3", "supported": true }, + { "number": "0xa4", "name": "LOG4", "supported": true }, + { "number": "0xa5", "name": "unknown", "supported": true }, + { "number": "0xa6", "name": "unknown", "supported": true }, + { "number": "0xa7", "name": "unknown", "supported": true }, + { "number": "0xa8", "name": "unknown", "supported": true }, + { "number": "0xa9", "name": "unknown", "supported": true }, + { "number": "0xaa", "name": "unknown", "supported": true }, + { "number": "0xab", "name": "unknown", "supported": true }, + { "number": "0xac", "name": "unknown", "supported": true }, + { "number": "0xad", "name": "unknown", "supported": true }, + { "number": "0xae", "name": "unknown", "supported": true }, + { "number": "0xaf", "name": "unknown", "supported": true }, + { "number": "0xb0", "name": "unknown", "supported": true }, + { "number": "0xb1", "name": "unknown", "supported": true }, + { "number": "0xb2", "name": "unknown", "supported": true }, + { "number": "0xb3", "name": "unknown", "supported": true }, + { "number": "0xb4", "name": "unknown", "supported": true }, + { "number": "0xb5", "name": "unknown", "supported": true }, + { "number": "0xb6", "name": "unknown", "supported": true }, + { "number": "0xb7", "name": "unknown", "supported": true }, + { "number": "0xb8", "name": "unknown", "supported": true }, + { "number": "0xb9", "name": "unknown", "supported": true }, + { "number": "0xba", "name": "unknown", "supported": true }, + { "number": "0xbb", "name": "unknown", "supported": true }, + { "number": "0xbc", "name": "unknown", "supported": true }, + { "number": "0xbd", "name": "unknown", "supported": true }, + { "number": "0xbe", "name": "unknown", "supported": true }, + { "number": "0xbf", "name": "unknown", "supported": true }, + { "number": "0xc0", "name": "unknown", "supported": true }, + { "number": "0xc1", "name": "unknown", "supported": true }, + { "number": "0xc2", "name": "unknown", "supported": true }, + { "number": "0xc3", "name": "unknown", "supported": true }, + { "number": "0xc4", "name": "unknown", "supported": true }, + { "number": "0xc5", "name": "unknown", "supported": true }, + { "number": "0xc6", "name": "unknown", "supported": true }, + { "number": "0xc7", "name": "unknown", "supported": true }, + { "number": "0xc8", "name": "unknown", "supported": true }, + { "number": "0xc9", "name": "unknown", "supported": true }, + { "number": "0xca", "name": "unknown", "supported": true }, + { "number": "0xcb", "name": "unknown", "supported": true }, + { "number": "0xcc", "name": "unknown", "supported": true }, + { "number": "0xcd", "name": "unknown", "supported": true }, + { "number": "0xce", "name": "unknown", "supported": true }, + { "number": "0xcf", "name": "unknown", "supported": true }, + { "number": "0xd0", "name": "unknown", "supported": true }, + { "number": "0xd1", "name": "unknown", "supported": true }, + { "number": "0xd2", "name": "unknown", "supported": true }, + { "number": "0xd3", "name": "unknown", "supported": true }, + { "number": "0xd4", "name": "unknown", "supported": true }, + { "number": "0xd5", "name": "unknown", "supported": true }, + { "number": "0xd6", "name": "unknown", "supported": true }, + { "number": "0xd7", "name": "unknown", "supported": true }, + { "number": "0xd8", "name": "unknown", "supported": true }, + { "number": "0xd9", "name": "unknown", "supported": true }, + { "number": "0xda", "name": "unknown", "supported": true }, + { "number": "0xdb", "name": "unknown", "supported": true }, + { "number": "0xdc", "name": "unknown", "supported": true }, + { "number": "0xdd", "name": "unknown", "supported": true }, + { "number": "0xde", "name": "unknown", "supported": true }, + { "number": "0xdf", "name": "unknown", "supported": true }, + { "number": "0xe0", "name": "unknown", "supported": true }, + { "number": "0xe1", "name": "unknown", "supported": true }, + { "number": "0xe2", "name": "unknown", "supported": true }, + { "number": "0xe3", "name": "unknown", "supported": true }, + { "number": "0xe4", "name": "unknown", "supported": true }, + { "number": "0xe5", "name": "unknown", "supported": true }, + { "number": "0xe6", "name": "unknown", "supported": true }, + { "number": "0xe7", "name": "unknown", "supported": true }, + { "number": "0xe8", "name": "unknown", "supported": true }, + { "number": "0xe9", "name": "unknown", "supported": true }, + { "number": "0xea", "name": "unknown", "supported": true }, + { "number": "0xeb", "name": "unknown", "supported": true }, + { "number": "0xec", "name": "unknown", "supported": true }, + { "number": "0xed", "name": "unknown", "supported": true }, + { "number": "0xee", "name": "unknown", "supported": true }, + { "number": "0xef", "name": "unknown", "supported": true }, + { "number": "0xf0", "name": "CREATE", "supported": true }, + { "number": "0xf1", "name": "CALL", "supported": true }, + { "number": "0xf2", "name": "CALLCODE", "supported": true }, + { "number": "0xf3", "name": "RETURN", "supported": true }, + { "number": "0xf4", "name": "DELEGATECALL", "supported": true }, + { "number": "0xf5", "name": "CREATE2", "supported": true }, + { "number": "0xf6", "name": "unknown", "supported": true }, + { "number": "0xf7", "name": "unknown", "supported": true }, + { "number": "0xf8", "name": "unknown", "supported": true }, + { "number": "0xf9", "name": "unknown", "supported": true }, + { "number": "0xfa", "name": "STATICCALL", "supported": true }, + { "number": "0xfb", "name": "unknown", "supported": true }, + { "number": "0xfc", "name": "unknown", "supported": true }, + { "number": "0xfd", "name": "REVERT", "supported": true }, + { "number": "0xfe", "name": "INVALID", "supported": true }, + { "number": "0xff", "name": "SELFDESTRUCT", "supported": true } + ], "8453": [ { "number": "0x00", "name": "STOP", "supported": true }, { "number": "0x01", "name": "ADD", "supported": true }, diff --git a/script/data/feature/precompiles.json b/script/data/feature/precompiles.json index 2a264e3..93566f5 100644 --- a/script/data/feature/precompiles.json +++ b/script/data/feature/precompiles.json @@ -170,6 +170,63 @@ "implemented": true } ], + "5234": [ + { + "name": "ecRecover", + "address": "0x0000000000000000000000000000000000000001", + "implemented": true + }, + { + "name": "SHA2-256", + "address": "0x0000000000000000000000000000000000000002", + "implemented": true + }, + { + "name": "RIPEMD-160", + "address": "0x0000000000000000000000000000000000000003", + "implemented": true + }, + { + "name": "identity", + "address": "0x0000000000000000000000000000000000000004", + "implemented": true + }, + { + "name": "modexp", + "address": "0x0000000000000000000000000000000000000005", + "implemented": true + }, + { + "name": "ecAdd", + "address": "0x0000000000000000000000000000000000000006", + "implemented": true + }, + { + "name": "ecMul", + "address": "0x0000000000000000000000000000000000000007", + "implemented": true + }, + { + "name": "ecPairing", + "address": "0x0000000000000000000000000000000000000008", + "implemented": true + }, + { + "name": "blake2f", + "address": "0x0000000000000000000000000000000000000009", + "implemented": true + }, + { + "name": "point evaluation", + "address": "0x000000000000000000000000000000000000000a", + "implemented": false + }, + { + "name": "secp256r1", + "address": "0x0000000000000000000000000000000000000100", + "implemented": false + } + ], "8453": [ { "name": "ecRecover", diff --git a/script/input.json b/script/input.json index 4530799..4e158b5 100644 --- a/script/input.json +++ b/script/input.json @@ -2,6 +2,7 @@ { "chainId": 1 }, { "chainId": 10 }, { "chainId": 137 }, + { "chainId": 5234 }, { "chainId": 8453 }, { "chainId": 34443 }, { "chainId": 42161 }, diff --git a/src/lib/chains.json b/src/lib/chains.json index f95d850..95d275b 100644 --- a/src/lib/chains.json +++ b/src/lib/chains.json @@ -5,6 +5,7 @@ { "chainId": 34443, "name": "Mode" }, { "chainId": 42161, "name": "Arbitrum One" }, { "chainId": 43114, "name": "Avalanche C-Chain" }, + { "chainId": 5234, "name": "Humanode Mainnet" }, { "chainId": 534352, "name": "Scroll" }, { "chainId": 59144, "name": "Linea" }, { "chainId": 8453, "name": "Base" }