2024-07-22 09:32:51 +00:00
|
|
|
{
|
|
|
|
"_format": "hh-sol-artifact-1",
|
|
|
|
"contractName": "PoraMine",
|
|
|
|
"sourceName": "contracts/miner/Mine.sol",
|
|
|
|
"abi": [
|
|
|
|
{
|
|
|
|
"inputs": [
|
|
|
|
{
|
|
|
|
"internalType": "uint256",
|
|
|
|
"name": "settings",
|
|
|
|
"type": "uint256"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"stateMutability": "nonpayable",
|
|
|
|
"type": "constructor"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"anonymous": false,
|
|
|
|
"inputs": [
|
|
|
|
{
|
|
|
|
"indexed": true,
|
|
|
|
"internalType": "bytes32",
|
|
|
|
"name": "minerId",
|
|
|
|
"type": "bytes32"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"indexed": true,
|
|
|
|
"internalType": "address",
|
|
|
|
"name": "beneficiary",
|
|
|
|
"type": "address"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"name": "NewMinerId",
|
|
|
|
"type": "event"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"anonymous": false,
|
|
|
|
"inputs": [
|
|
|
|
{
|
|
|
|
"indexed": true,
|
|
|
|
"internalType": "uint256",
|
|
|
|
"name": "epoch",
|
|
|
|
"type": "uint256"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"indexed": true,
|
|
|
|
"internalType": "bytes32",
|
|
|
|
"name": "minerId",
|
|
|
|
"type": "bytes32"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"indexed": false,
|
|
|
|
"internalType": "uint256",
|
|
|
|
"name": "epochIndex",
|
|
|
|
"type": "uint256"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"indexed": false,
|
|
|
|
"internalType": "uint256",
|
|
|
|
"name": "recallPosition",
|
|
|
|
"type": "uint256"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"name": "NewSubmission",
|
|
|
|
"type": "event"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"anonymous": false,
|
|
|
|
"inputs": [
|
2024-07-24 05:01:30 +00:00
|
|
|
{
|
|
|
|
"indexed": true,
|
|
|
|
"internalType": "bytes32",
|
|
|
|
"name": "role",
|
|
|
|
"type": "bytes32"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"indexed": true,
|
|
|
|
"internalType": "bytes32",
|
|
|
|
"name": "previousAdminRole",
|
|
|
|
"type": "bytes32"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"indexed": true,
|
|
|
|
"internalType": "bytes32",
|
|
|
|
"name": "newAdminRole",
|
|
|
|
"type": "bytes32"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"name": "RoleAdminChanged",
|
|
|
|
"type": "event"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"anonymous": false,
|
|
|
|
"inputs": [
|
|
|
|
{
|
|
|
|
"indexed": true,
|
|
|
|
"internalType": "bytes32",
|
|
|
|
"name": "role",
|
|
|
|
"type": "bytes32"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"indexed": true,
|
|
|
|
"internalType": "address",
|
|
|
|
"name": "account",
|
|
|
|
"type": "address"
|
|
|
|
},
|
2024-07-22 09:32:51 +00:00
|
|
|
{
|
|
|
|
"indexed": true,
|
|
|
|
"internalType": "address",
|
2024-07-24 05:01:30 +00:00
|
|
|
"name": "sender",
|
2024-07-22 09:32:51 +00:00
|
|
|
"type": "address"
|
2024-07-24 05:01:30 +00:00
|
|
|
}
|
|
|
|
],
|
|
|
|
"name": "RoleGranted",
|
|
|
|
"type": "event"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"anonymous": false,
|
|
|
|
"inputs": [
|
|
|
|
{
|
|
|
|
"indexed": true,
|
|
|
|
"internalType": "bytes32",
|
|
|
|
"name": "role",
|
|
|
|
"type": "bytes32"
|
2024-07-22 09:32:51 +00:00
|
|
|
},
|
|
|
|
{
|
|
|
|
"indexed": true,
|
|
|
|
"internalType": "address",
|
2024-07-24 05:01:30 +00:00
|
|
|
"name": "account",
|
|
|
|
"type": "address"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"indexed": true,
|
|
|
|
"internalType": "address",
|
|
|
|
"name": "sender",
|
2024-07-22 09:32:51 +00:00
|
|
|
"type": "address"
|
|
|
|
}
|
|
|
|
],
|
2024-07-24 05:01:30 +00:00
|
|
|
"name": "RoleRevoked",
|
2024-07-22 09:32:51 +00:00
|
|
|
"type": "event"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"anonymous": false,
|
|
|
|
"inputs": [
|
|
|
|
{
|
|
|
|
"indexed": true,
|
|
|
|
"internalType": "bytes32",
|
|
|
|
"name": "minerId",
|
|
|
|
"type": "bytes32"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"indexed": true,
|
|
|
|
"internalType": "address",
|
|
|
|
"name": "from",
|
|
|
|
"type": "address"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"indexed": true,
|
|
|
|
"internalType": "address",
|
|
|
|
"name": "to",
|
|
|
|
"type": "address"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"name": "UpdateMinerId",
|
|
|
|
"type": "event"
|
|
|
|
},
|
2024-07-24 05:01:30 +00:00
|
|
|
{
|
|
|
|
"inputs": [],
|
|
|
|
"name": "DEFAULT_ADMIN_ROLE",
|
|
|
|
"outputs": [
|
|
|
|
{
|
|
|
|
"internalType": "bytes32",
|
|
|
|
"name": "",
|
|
|
|
"type": "bytes32"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"stateMutability": "view",
|
|
|
|
"type": "function"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"inputs": [],
|
|
|
|
"name": "PARAMS_ADMIN_ROLE",
|
|
|
|
"outputs": [
|
|
|
|
{
|
|
|
|
"internalType": "bytes32",
|
|
|
|
"name": "",
|
|
|
|
"type": "bytes32"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"stateMutability": "view",
|
|
|
|
"type": "function"
|
|
|
|
},
|
2024-07-22 09:32:51 +00:00
|
|
|
{
|
|
|
|
"inputs": [
|
|
|
|
{
|
|
|
|
"components": [
|
|
|
|
{
|
|
|
|
"internalType": "bytes32",
|
|
|
|
"name": "contextDigest",
|
|
|
|
"type": "bytes32"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "bytes32",
|
|
|
|
"name": "nonce",
|
|
|
|
"type": "bytes32"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "bytes32",
|
|
|
|
"name": "minerId",
|
|
|
|
"type": "bytes32"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"components": [
|
|
|
|
{
|
|
|
|
"internalType": "uint256",
|
|
|
|
"name": "startPosition",
|
|
|
|
"type": "uint256"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "uint256",
|
|
|
|
"name": "mineLength",
|
|
|
|
"type": "uint256"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "uint64",
|
|
|
|
"name": "shardId",
|
|
|
|
"type": "uint64"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "uint64",
|
|
|
|
"name": "shardMask",
|
|
|
|
"type": "uint64"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"internalType": "struct RecallRange",
|
|
|
|
"name": "range",
|
|
|
|
"type": "tuple"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "uint256",
|
|
|
|
"name": "recallPosition",
|
|
|
|
"type": "uint256"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "uint256",
|
|
|
|
"name": "sealOffset",
|
|
|
|
"type": "uint256"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "bytes32",
|
|
|
|
"name": "sealedContextDigest",
|
|
|
|
"type": "bytes32"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "bytes32[128]",
|
|
|
|
"name": "sealedData",
|
|
|
|
"type": "bytes32[128]"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "bytes32[]",
|
|
|
|
"name": "merkleProof",
|
|
|
|
"type": "bytes32[]"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"internalType": "struct MineLib.PoraAnswer",
|
|
|
|
"name": "answer",
|
|
|
|
"type": "tuple"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"components": [
|
|
|
|
{
|
|
|
|
"internalType": "uint256",
|
|
|
|
"name": "epoch",
|
|
|
|
"type": "uint256"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "uint256",
|
|
|
|
"name": "mineStart",
|
|
|
|
"type": "uint256"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "bytes32",
|
|
|
|
"name": "flowRoot",
|
|
|
|
"type": "bytes32"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "uint256",
|
|
|
|
"name": "flowLength",
|
|
|
|
"type": "uint256"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "bytes32",
|
|
|
|
"name": "blockDigest",
|
|
|
|
"type": "bytes32"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "bytes32",
|
|
|
|
"name": "digest",
|
|
|
|
"type": "bytes32"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"internalType": "struct MineContext",
|
|
|
|
"name": "context",
|
|
|
|
"type": "tuple"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"name": "basicCheck",
|
|
|
|
"outputs": [],
|
|
|
|
"stateMutability": "view",
|
|
|
|
"type": "function"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"inputs": [
|
|
|
|
{
|
|
|
|
"internalType": "bytes32",
|
|
|
|
"name": "",
|
|
|
|
"type": "bytes32"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"name": "beneficiaries",
|
|
|
|
"outputs": [
|
|
|
|
{
|
|
|
|
"internalType": "address",
|
|
|
|
"name": "",
|
|
|
|
"type": "address"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"stateMutability": "view",
|
|
|
|
"type": "function"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"inputs": [],
|
|
|
|
"name": "canSubmit",
|
|
|
|
"outputs": [
|
|
|
|
{
|
|
|
|
"internalType": "bool",
|
|
|
|
"name": "",
|
|
|
|
"type": "bool"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"stateMutability": "nonpayable",
|
|
|
|
"type": "function"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"inputs": [],
|
|
|
|
"name": "currentSubmissions",
|
|
|
|
"outputs": [
|
|
|
|
{
|
|
|
|
"internalType": "uint256",
|
|
|
|
"name": "",
|
|
|
|
"type": "uint256"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"stateMutability": "view",
|
|
|
|
"type": "function"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"inputs": [],
|
|
|
|
"name": "dataProofEnabled",
|
|
|
|
"outputs": [
|
|
|
|
{
|
|
|
|
"internalType": "bool",
|
|
|
|
"name": "",
|
|
|
|
"type": "bool"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"stateMutability": "view",
|
|
|
|
"type": "function"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"inputs": [],
|
|
|
|
"name": "difficultyAdjustRatio",
|
|
|
|
"outputs": [
|
|
|
|
{
|
|
|
|
"internalType": "uint256",
|
|
|
|
"name": "",
|
|
|
|
"type": "uint256"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"stateMutability": "view",
|
|
|
|
"type": "function"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"inputs": [],
|
|
|
|
"name": "fixedDifficulty",
|
|
|
|
"outputs": [
|
|
|
|
{
|
|
|
|
"internalType": "bool",
|
|
|
|
"name": "",
|
|
|
|
"type": "bool"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"stateMutability": "view",
|
|
|
|
"type": "function"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"inputs": [],
|
|
|
|
"name": "flow",
|
|
|
|
"outputs": [
|
|
|
|
{
|
|
|
|
"internalType": "address",
|
|
|
|
"name": "",
|
|
|
|
"type": "address"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"stateMutability": "view",
|
|
|
|
"type": "function"
|
|
|
|
},
|
2024-07-24 05:01:30 +00:00
|
|
|
{
|
|
|
|
"inputs": [
|
|
|
|
{
|
|
|
|
"internalType": "bytes32",
|
|
|
|
"name": "role",
|
|
|
|
"type": "bytes32"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"name": "getRoleAdmin",
|
|
|
|
"outputs": [
|
|
|
|
{
|
|
|
|
"internalType": "bytes32",
|
|
|
|
"name": "",
|
|
|
|
"type": "bytes32"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"stateMutability": "view",
|
|
|
|
"type": "function"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"inputs": [
|
|
|
|
{
|
|
|
|
"internalType": "bytes32",
|
|
|
|
"name": "role",
|
|
|
|
"type": "bytes32"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "uint256",
|
|
|
|
"name": "index",
|
|
|
|
"type": "uint256"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"name": "getRoleMember",
|
|
|
|
"outputs": [
|
|
|
|
{
|
|
|
|
"internalType": "address",
|
|
|
|
"name": "",
|
|
|
|
"type": "address"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"stateMutability": "view",
|
|
|
|
"type": "function"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"inputs": [
|
|
|
|
{
|
|
|
|
"internalType": "bytes32",
|
|
|
|
"name": "role",
|
|
|
|
"type": "bytes32"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"name": "getRoleMemberCount",
|
|
|
|
"outputs": [
|
|
|
|
{
|
|
|
|
"internalType": "uint256",
|
|
|
|
"name": "",
|
|
|
|
"type": "uint256"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"stateMutability": "view",
|
|
|
|
"type": "function"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"inputs": [
|
|
|
|
{
|
|
|
|
"internalType": "bytes32",
|
|
|
|
"name": "role",
|
|
|
|
"type": "bytes32"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "address",
|
|
|
|
"name": "account",
|
|
|
|
"type": "address"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"name": "grantRole",
|
|
|
|
"outputs": [],
|
|
|
|
"stateMutability": "nonpayable",
|
|
|
|
"type": "function"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"inputs": [
|
|
|
|
{
|
|
|
|
"internalType": "bytes32",
|
|
|
|
"name": "role",
|
|
|
|
"type": "bytes32"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "address",
|
|
|
|
"name": "account",
|
|
|
|
"type": "address"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"name": "hasRole",
|
|
|
|
"outputs": [
|
|
|
|
{
|
|
|
|
"internalType": "bool",
|
|
|
|
"name": "",
|
|
|
|
"type": "bool"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"stateMutability": "view",
|
|
|
|
"type": "function"
|
|
|
|
},
|
2024-07-22 09:32:51 +00:00
|
|
|
{
|
|
|
|
"inputs": [
|
|
|
|
{
|
|
|
|
"internalType": "uint256",
|
|
|
|
"name": "difficulty",
|
|
|
|
"type": "uint256"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "address",
|
|
|
|
"name": "flow_",
|
|
|
|
"type": "address"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "address",
|
|
|
|
"name": "reward_",
|
|
|
|
"type": "address"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"name": "initialize",
|
|
|
|
"outputs": [],
|
|
|
|
"stateMutability": "nonpayable",
|
|
|
|
"type": "function"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"inputs": [],
|
|
|
|
"name": "initialized",
|
|
|
|
"outputs": [
|
|
|
|
{
|
|
|
|
"internalType": "bool",
|
|
|
|
"name": "",
|
|
|
|
"type": "bool"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"stateMutability": "view",
|
|
|
|
"type": "function"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"inputs": [],
|
|
|
|
"name": "lastMinedEpoch",
|
|
|
|
"outputs": [
|
|
|
|
{
|
|
|
|
"internalType": "uint256",
|
|
|
|
"name": "",
|
|
|
|
"type": "uint256"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"stateMutability": "view",
|
|
|
|
"type": "function"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"inputs": [],
|
2024-07-24 05:01:30 +00:00
|
|
|
"name": "maxShards",
|
2024-07-22 09:32:51 +00:00
|
|
|
"outputs": [
|
|
|
|
{
|
2024-07-24 05:01:30 +00:00
|
|
|
"internalType": "uint64",
|
2024-07-22 09:32:51 +00:00
|
|
|
"name": "",
|
2024-07-24 05:01:30 +00:00
|
|
|
"type": "uint64"
|
2024-07-22 09:32:51 +00:00
|
|
|
}
|
|
|
|
],
|
|
|
|
"stateMutability": "view",
|
|
|
|
"type": "function"
|
|
|
|
},
|
2024-12-24 10:43:44 +00:00
|
|
|
{
|
|
|
|
"inputs": [],
|
|
|
|
"name": "minDifficulty",
|
|
|
|
"outputs": [
|
|
|
|
{
|
|
|
|
"internalType": "uint256",
|
|
|
|
"name": "",
|
|
|
|
"type": "uint256"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"stateMutability": "view",
|
|
|
|
"type": "function"
|
|
|
|
},
|
2024-07-22 09:32:51 +00:00
|
|
|
{
|
|
|
|
"inputs": [
|
|
|
|
{
|
|
|
|
"components": [
|
|
|
|
{
|
|
|
|
"internalType": "bytes32",
|
|
|
|
"name": "contextDigest",
|
|
|
|
"type": "bytes32"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "bytes32",
|
|
|
|
"name": "nonce",
|
|
|
|
"type": "bytes32"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "bytes32",
|
|
|
|
"name": "minerId",
|
|
|
|
"type": "bytes32"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"components": [
|
|
|
|
{
|
|
|
|
"internalType": "uint256",
|
|
|
|
"name": "startPosition",
|
|
|
|
"type": "uint256"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "uint256",
|
|
|
|
"name": "mineLength",
|
|
|
|
"type": "uint256"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "uint64",
|
|
|
|
"name": "shardId",
|
|
|
|
"type": "uint64"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "uint64",
|
|
|
|
"name": "shardMask",
|
|
|
|
"type": "uint64"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"internalType": "struct RecallRange",
|
|
|
|
"name": "range",
|
|
|
|
"type": "tuple"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "uint256",
|
|
|
|
"name": "recallPosition",
|
|
|
|
"type": "uint256"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "uint256",
|
|
|
|
"name": "sealOffset",
|
|
|
|
"type": "uint256"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "bytes32",
|
|
|
|
"name": "sealedContextDigest",
|
|
|
|
"type": "bytes32"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "bytes32[128]",
|
|
|
|
"name": "sealedData",
|
|
|
|
"type": "bytes32[128]"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "bytes32[]",
|
|
|
|
"name": "merkleProof",
|
|
|
|
"type": "bytes32[]"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"internalType": "struct MineLib.PoraAnswer",
|
|
|
|
"name": "answer",
|
|
|
|
"type": "tuple"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"name": "pora",
|
|
|
|
"outputs": [
|
|
|
|
{
|
|
|
|
"internalType": "bytes32",
|
|
|
|
"name": "",
|
|
|
|
"type": "bytes32"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"stateMutability": "view",
|
|
|
|
"type": "function"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"inputs": [],
|
|
|
|
"name": "poraTarget",
|
|
|
|
"outputs": [
|
|
|
|
{
|
|
|
|
"internalType": "uint256",
|
|
|
|
"name": "",
|
|
|
|
"type": "uint256"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"stateMutability": "view",
|
|
|
|
"type": "function"
|
|
|
|
},
|
2024-12-24 10:43:44 +00:00
|
|
|
{
|
|
|
|
"inputs": [],
|
|
|
|
"name": "poraVersion",
|
|
|
|
"outputs": [
|
|
|
|
{
|
|
|
|
"internalType": "uint64",
|
|
|
|
"name": "",
|
|
|
|
"type": "uint64"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"stateMutability": "pure",
|
|
|
|
"type": "function"
|
|
|
|
},
|
2024-07-22 09:32:51 +00:00
|
|
|
{
|
2024-07-24 05:01:30 +00:00
|
|
|
"inputs": [
|
|
|
|
{
|
|
|
|
"internalType": "bytes32",
|
|
|
|
"name": "role",
|
|
|
|
"type": "bytes32"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "address",
|
|
|
|
"name": "account",
|
|
|
|
"type": "address"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"name": "renounceRole",
|
2024-07-22 09:32:51 +00:00
|
|
|
"outputs": [],
|
|
|
|
"stateMutability": "nonpayable",
|
|
|
|
"type": "function"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"inputs": [
|
|
|
|
{
|
|
|
|
"internalType": "address",
|
|
|
|
"name": "beneficiary",
|
|
|
|
"type": "address"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "uint64",
|
|
|
|
"name": "seed",
|
|
|
|
"type": "uint64"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"name": "requestMinerId",
|
|
|
|
"outputs": [],
|
|
|
|
"stateMutability": "nonpayable",
|
|
|
|
"type": "function"
|
|
|
|
},
|
2024-07-24 05:01:30 +00:00
|
|
|
{
|
|
|
|
"inputs": [
|
|
|
|
{
|
|
|
|
"internalType": "bytes32",
|
|
|
|
"name": "role",
|
|
|
|
"type": "bytes32"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "address",
|
|
|
|
"name": "account",
|
|
|
|
"type": "address"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"name": "revokeRole",
|
|
|
|
"outputs": [],
|
|
|
|
"stateMutability": "nonpayable",
|
|
|
|
"type": "function"
|
|
|
|
},
|
2024-07-22 09:32:51 +00:00
|
|
|
{
|
|
|
|
"inputs": [],
|
|
|
|
"name": "reward",
|
|
|
|
"outputs": [
|
|
|
|
{
|
|
|
|
"internalType": "address",
|
|
|
|
"name": "",
|
|
|
|
"type": "address"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"stateMutability": "view",
|
|
|
|
"type": "function"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"inputs": [],
|
|
|
|
"name": "sealDataEnabled",
|
|
|
|
"outputs": [
|
|
|
|
{
|
|
|
|
"internalType": "bool",
|
|
|
|
"name": "",
|
|
|
|
"type": "bool"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"stateMutability": "view",
|
|
|
|
"type": "function"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"inputs": [
|
|
|
|
{
|
|
|
|
"internalType": "uint256",
|
|
|
|
"name": "difficultyAdjustRatio_",
|
|
|
|
"type": "uint256"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"name": "setDifficultyAdjustRatio",
|
|
|
|
"outputs": [],
|
|
|
|
"stateMutability": "nonpayable",
|
|
|
|
"type": "function"
|
|
|
|
},
|
2024-07-24 05:01:30 +00:00
|
|
|
{
|
|
|
|
"inputs": [
|
|
|
|
{
|
|
|
|
"internalType": "uint64",
|
|
|
|
"name": "maxShards_",
|
|
|
|
"type": "uint64"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"name": "setMaxShards",
|
|
|
|
"outputs": [],
|
|
|
|
"stateMutability": "nonpayable",
|
|
|
|
"type": "function"
|
|
|
|
},
|
2024-12-24 10:43:44 +00:00
|
|
|
{
|
|
|
|
"inputs": [
|
|
|
|
{
|
|
|
|
"internalType": "uint256",
|
|
|
|
"name": "minDifficulty_",
|
|
|
|
"type": "uint256"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"name": "setMinDifficulty",
|
|
|
|
"outputs": [],
|
|
|
|
"stateMutability": "nonpayable",
|
|
|
|
"type": "function"
|
|
|
|
},
|
2024-07-22 09:32:51 +00:00
|
|
|
{
|
|
|
|
"inputs": [
|
|
|
|
{
|
|
|
|
"internalType": "uint256",
|
|
|
|
"name": "targetMineBlocks_",
|
|
|
|
"type": "uint256"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"name": "setTargetMineBlocks",
|
|
|
|
"outputs": [],
|
|
|
|
"stateMutability": "nonpayable",
|
|
|
|
"type": "function"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"inputs": [
|
|
|
|
{
|
|
|
|
"internalType": "uint256",
|
|
|
|
"name": "targetSubmissions_",
|
|
|
|
"type": "uint256"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"name": "setTargetSubmissions",
|
|
|
|
"outputs": [],
|
|
|
|
"stateMutability": "nonpayable",
|
|
|
|
"type": "function"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"inputs": [
|
|
|
|
{
|
|
|
|
"components": [
|
|
|
|
{
|
|
|
|
"internalType": "bytes32",
|
|
|
|
"name": "contextDigest",
|
|
|
|
"type": "bytes32"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "bytes32",
|
|
|
|
"name": "nonce",
|
|
|
|
"type": "bytes32"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "bytes32",
|
|
|
|
"name": "minerId",
|
|
|
|
"type": "bytes32"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"components": [
|
|
|
|
{
|
|
|
|
"internalType": "uint256",
|
|
|
|
"name": "startPosition",
|
|
|
|
"type": "uint256"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "uint256",
|
|
|
|
"name": "mineLength",
|
|
|
|
"type": "uint256"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "uint64",
|
|
|
|
"name": "shardId",
|
|
|
|
"type": "uint64"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "uint64",
|
|
|
|
"name": "shardMask",
|
|
|
|
"type": "uint64"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"internalType": "struct RecallRange",
|
|
|
|
"name": "range",
|
|
|
|
"type": "tuple"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "uint256",
|
|
|
|
"name": "recallPosition",
|
|
|
|
"type": "uint256"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "uint256",
|
|
|
|
"name": "sealOffset",
|
|
|
|
"type": "uint256"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "bytes32",
|
|
|
|
"name": "sealedContextDigest",
|
|
|
|
"type": "bytes32"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "bytes32[128]",
|
|
|
|
"name": "sealedData",
|
|
|
|
"type": "bytes32[128]"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "bytes32[]",
|
|
|
|
"name": "merkleProof",
|
|
|
|
"type": "bytes32[]"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"internalType": "struct MineLib.PoraAnswer",
|
|
|
|
"name": "answer",
|
|
|
|
"type": "tuple"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"name": "submit",
|
|
|
|
"outputs": [],
|
|
|
|
"stateMutability": "nonpayable",
|
|
|
|
"type": "function"
|
|
|
|
},
|
2024-07-24 05:01:30 +00:00
|
|
|
{
|
|
|
|
"inputs": [
|
|
|
|
{
|
|
|
|
"internalType": "bytes4",
|
|
|
|
"name": "interfaceId",
|
|
|
|
"type": "bytes4"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"name": "supportsInterface",
|
|
|
|
"outputs": [
|
|
|
|
{
|
|
|
|
"internalType": "bool",
|
|
|
|
"name": "",
|
|
|
|
"type": "bool"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"stateMutability": "view",
|
|
|
|
"type": "function"
|
|
|
|
},
|
2024-07-22 09:32:51 +00:00
|
|
|
{
|
|
|
|
"inputs": [],
|
|
|
|
"name": "targetMineBlocks",
|
|
|
|
"outputs": [
|
|
|
|
{
|
|
|
|
"internalType": "uint256",
|
|
|
|
"name": "",
|
|
|
|
"type": "uint256"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"stateMutability": "view",
|
|
|
|
"type": "function"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"inputs": [],
|
|
|
|
"name": "targetSubmissions",
|
|
|
|
"outputs": [
|
|
|
|
{
|
|
|
|
"internalType": "uint256",
|
|
|
|
"name": "",
|
|
|
|
"type": "uint256"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"stateMutability": "view",
|
|
|
|
"type": "function"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"inputs": [],
|
|
|
|
"name": "targetSubmissionsNextEpoch",
|
|
|
|
"outputs": [
|
|
|
|
{
|
|
|
|
"internalType": "uint256",
|
|
|
|
"name": "",
|
|
|
|
"type": "uint256"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"stateMutability": "view",
|
|
|
|
"type": "function"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"inputs": [
|
|
|
|
{
|
|
|
|
"internalType": "address",
|
|
|
|
"name": "to",
|
|
|
|
"type": "address"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"internalType": "bytes32",
|
|
|
|
"name": "minerId",
|
|
|
|
"type": "bytes32"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"name": "transferBeneficial",
|
|
|
|
"outputs": [],
|
|
|
|
"stateMutability": "nonpayable",
|
|
|
|
"type": "function"
|
|
|
|
}
|
|
|
|
],
|
2024-12-24 10:43:44 +00:00
|
|
|
"bytecode": "0x60e06040523480156200001157600080fd5b50604051620035b6380380620035b6833981016040819052620000349162000052565b6001811615608052600281161560a052600416151560c0526200006c565b6000602082840312156200006557600080fd5b5051919050565b60805160a05160c0516134fe620000b8600039600081816103f50152818161118c01526115280152600081816104250152610ebe0152600081816104960152610e8101526134fe6000f3fe608060405234801561001057600080fd5b506004361061023d5760003560e01c80637eca56881161013b578063b0628ee0116100b8578063ca15c8731161007c578063ca15c8731461052b578063d547741f1461053e578063dddc61a814610551578063e282e27b1461055a578063ffbc9bd01461056157600080fd5b8063b0628ee0146104de578063b15d20da146104f1578063b4988fd014610506578063b4a9328314610519578063b776a5121461052257600080fd5b8063a8279182116100ff578063a827918214610475578063ad08fdfb1461047e578063adaa7a0f14610491578063ae722e82146104b8578063aed75224146104cb57600080fd5b80637eca56881461041757806382975fe7146104205780639010d07c1461044757806391d148541461045a578063a217fddf1461046d57600080fd5b806331223ba7116101c95780633baebb751161018d5780633baebb75146103ae57806348f61441146103c15780635bdca855146103ca578063704d3c96146103dd5780637bba7d61146103f057600080fd5b806331223ba71461034d578063331f3b9c14610356578063343aad821461035f57806336568abe1461037257806339cd53ee1461038557600080fd5b806316a4be6f1161021057806316a4be6f1461029f578063228cb733146102ca578063248a9ca3146102f55780632a02573b146103275780632f2ff15d1461033a57600080fd5b806301ffc9a714610242578063047c13f51461026a578063158ef93e1461027f5780631600c6241461028c575b600080fd5b610255610250366004612ceb565b610569565b60405190151581526020015b60405180910390f35b61027d610278366004612d43565b610594565b005b6000546102559060ff1681565b61027d61029a366004612d76565b6106b0565b600a546102b2906001600160401b031681565b6040516001600160401b039091168152602001610261565b6004546102dd906001600160a01b031681565b6040516001600160a01b039091168152602001610261565b610319610303366004612d76565b6000908152600160208190526040909120015490565b604051908152602001610261565b61027d610335366004612d8f565b6106ce565b61027d610348366004612daa565b6107d4565b610319600b5481565b61031960065481565b6003546102dd906001600160a01b031681565b61027d610380366004612daa565b6107ff565b6102dd610393366004612d76565b600e602052600090815260409020546001600160a01b031681565b61027d6103bc36600461304a565b61087d565b610319600d5481565b61027d6103d8366004612d76565b610b14565b61027d6103eb366004612d76565b610b41565b6102557f000000000000000000000000000000000000000000000000000000000000000081565b61031960085481565b6102557f000000000000000000000000000000000000000000000000000000000000000081565b6102dd6104553660046130e2565b610baf565b610255610468366004612daa565b610bce565b610319600081565b610319600c5481565b61027d61048c366004612d76565b610bf9565b6102557f000000000000000000000000000000000000000000000000000000000000000081565b61027d6104c6366004613104565b610c33565b6103196104d9366004613104565b6111c0565b61027d6104ec366004613140565b6113c3565b6103196000805160206134a983398151915281565b61027d61051436600461316a565b611483565b610319600f5481565b61031960075481565b610319610539366004612d76565b6115aa565b61027d61054c366004612daa565b6115c1565b61031960095481565b60006102b2565b6102556115e7565b60006001600160e01b03198216635a05180f60e01b148061058e575061058e82611682565b92915050565b60006105a16001436131bc565b60408051914060208301526bffffffffffffffffffffffff193360601b16908201526001600160c01b031960c084901b166054820152605c0160408051601f1981840301815291815281516020928301206000818152600e9093529120549091506001600160a01b0316156106565760405162461bcd60e51b8152602060048201526016602482015275135a5b995c9259081a185cc81c9959da5cdd195c995960521b60448201526064015b60405180910390fd5b6000818152600e602052604080822080546001600160a01b0319166001600160a01b0387169081179091559051909183917fbfeb006f16aca8eb3d9953cf44db6b11b6f3041a313875dfa18f2e9d71bd309e9190a3505050565b6000805160206134a98339815191526106c8816116b7565b50600655565b6000805160206134a98339815191526106e6816116b7565b6000826001600160401b03161161073f5760405162461bcd60e51b815260206004820152601f60248201527f4d6178207368617264206e756d6265722063616e6e6f74206265207a65726f00604482015260640161064d56
|
|
|
|
"deployedBytecode": "0x608060405234801561001057600080fd5b506004361061023d5760003560e01c80637eca56881161013b578063b0628ee0116100b8578063ca15c8731161007c578063ca15c8731461052b578063d547741f1461053e578063dddc61a814610551578063e282e27b1461055a578063ffbc9bd01461056157600080fd5b8063b0628ee0146104de578063b15d20da146104f1578063b4988fd014610506578063b4a9328314610519578063b776a5121461052257600080fd5b8063a8279182116100ff578063a827918214610475578063ad08fdfb1461047e578063adaa7a0f14610491578063ae722e82146104b8578063aed75224146104cb57600080fd5b80637eca56881461041757806382975fe7146104205780639010d07c1461044757806391d148541461045a578063a217fddf1461046d57600080fd5b806331223ba7116101c95780633baebb751161018d5780633baebb75146103ae57806348f61441146103c15780635bdca855146103ca578063704d3c96146103dd5780637bba7d61146103f057600080fd5b806331223ba71461034d578063331f3b9c14610356578063343aad821461035f57806336568abe1461037257806339cd53ee1461038557600080fd5b806316a4be6f1161021057806316a4be6f1461029f578063228cb733146102ca578063248a9ca3146102f55780632a02573b146103275780632f2ff15d1461033a57600080fd5b806301ffc9a714610242578063047c13f51461026a578063158ef93e1461027f5780631600c6241461028c575b600080fd5b610255610250366004612ceb565b610569565b60405190151581526020015b60405180910390f35b61027d610278366004612d43565b610594565b005b6000546102559060ff1681565b61027d61029a366004612d76565b6106b0565b600a546102b2906001600160401b031681565b6040516001600160401b039091168152602001610261565b6004546102dd906001600160a01b031681565b6040516001600160a01b039091168152602001610261565b610319610303366004612d76565b6000908152600160208190526040909120015490565b604051908152602001610261565b61027d610335366004612d8f565b6106ce565b61027d610348366004612daa565b6107d4565b610319600b5481565b61031960065481565b6003546102dd906001600160a01b031681565b61027d610380366004612daa565b6107ff565b6102dd610393366004612d76565b600e602052600090815260409020546001600160a01b031681565b61027d6103bc36600461304a565b61087d565b610319600d5481565b61027d6103d8366004612d76565b610b14565b61027d6103eb366004612d76565b610b41565b6102557f000000000000000000000000000000000000000000000000000000000000000081565b61031960085481565b6102557f000000000000000000000000000000000000000000000000000000000000000081565b6102dd6104553660046130e2565b610baf565b610255610468366004612daa565b610bce565b610319600081565b610319600c5481565b61027d61048c366004612d76565b610bf9565b6102557f000000000000000000000000000000000000000000000000000000000000000081565b61027d6104c6366004613104565b610c33565b6103196104d9366004613104565b6111c0565b61027d6104ec366004613140565b6113c3565b6103196000805160206134a983398151915281565b61027d61051436600461316a565b611483565b610319600f5481565b61031960075481565b610319610539366004612d76565b6115aa565b61027d61054c366004612daa565b6115c1565b61031960095481565b60006102b2565b6102556115e7565b60006001600160e01b03198216635a05180f60e01b148061058e575061058e82611682565b92915050565b60006105a16001436131bc565b60408051914060208301526bffffffffffffffffffffffff193360601b16908201526001600160c01b031960c084901b166054820152605c0160408051601f1981840301815291815281516020928301206000818152600e9093529120549091506001600160a01b0316156106565760405162461bcd60e51b8152602060048201526016602482015275135a5b995c9259081a185cc81c9959da5cdd195c995960521b60448201526064015b60405180910390fd5b6000818152600e602052604080822080546001600160a01b0319166001600160a01b0387169081179091559051909183917fbfeb006f16aca8eb3d9953cf44db6b11b6f3041a313875dfa18f2e9d71bd309e9190a3505050565b6000805160206134a98339815191526106c8816116b7565b50600655565b6000805160206134a98339815191526106e6816116b7565b6000826001600160401b03161161073f5760405162461bcd60e51b815260206004820152601f60248201527f4d6178207368617264206e756d6265722063616e6e6f74206265207a65726f00604482015260640161064d565b61074a6001836131cf565b82166001600160401b03166000146107b05760405162461bcd60e51b815260206004820152602360248201527f4d6178207368617264206e756d626572206d75737420626520706f776572206f60448201526233101960e91b606482015260840161064d565b50600a805467ffffffffffffffff19166001600160401b0392909216919091179055565b600082815260016020819052604090912001546107f0816116b7565b6107
|
2024-07-22 09:32:51 +00:00
|
|
|
"linkReferences": {},
|
|
|
|
"deployedLinkReferences": {}
|
|
|
|
}
|