@excubiae/contracts
Version:
116 lines (115 loc) • 8.14 kB
JSON
{
"_format": "hh-sol-artifact-1",
"contractName": "HatsChecker",
"sourceName": "contracts/extensions/hats/HatsChecker.sol",
"abi": [
{
"inputs": [],
"name": "AlreadyInitialized",
"type": "error"
},
{
"inputs": [],
"name": "NotCriterionHat",
"type": "error"
},
{
"inputs": [],
"name": "NotWearingCriterionHat",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "subject",
"type": "address"
},
{
"internalType": "bytes",
"name": "evidence",
"type": "bytes"
}
],
"name": "check",
"outputs": [
{
"internalType": "bool",
"name": "checked",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"name": "criterionHats",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "getAppendedBytes",
"outputs": [
{
"internalType": "bytes",
"name": "appendedBytes",
"type": "bytes"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "hats",
"outputs": [
{
"internalType": "contract IHats",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "initialize",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "initialized",
"outputs": [
{
"internalType": "bool",
"name": "",
"type": "bool"
}
],
"stateMutability": "view",
"type": "function"
}
],
"bytecode": "0x6080604052348015600f57600080fd5b506105a88061001f6000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c806305023c3114610067578063158ef93e1461009f5780638129fc1c146100ac578063b41a4b19146100b6578063e2b24085146100cb578063f99f0238146100de575b600080fd5b61008a610075366004610334565b60016020526000908152604090205460ff1681565b60405190151581526020015b60405180910390f35b60005461008a9060ff1681565b6100b461010e565b005b6100be610118565b604051610096919061034d565b61008a6100d93660046103b3565b610127565b6000546100f69061010090046001600160a01b031681565b6040516001600160a01b039091168152602001610096565b61011661013c565b565b60606101226101e4565b905090565b60006101348484846101ef565b949350505050565b6101446102d3565b600061014e6101e4565b9050600080828060200190518101906101679190610450565b60008054610100600160a81b0319166101006001600160a01b0385160217815591935091505b81518110156101de5760018060008484815181106101ad576101ad610533565b6020908102919091018101518252810191909152604001600020805460ff191691151591909117905560010161018d565b50505050565b606061012230610305565b6000806101fe83850185610334565b60008181526001602052604090205490915060ff1661023057604051632f76bd0160e21b815260040160405180910390fd5b6000546040516321a9204d60e11b81526001600160a01b0387811660048301526024820184905261010090920490911690634352409a90604401602060405180830381865afa158015610287573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102ab9190610549565b6102c8576040516306fdb0d360e31b815260040160405180910390fd5b506001949350505050565b60005460ff16156102f65760405162dc149f60e41b815260040160405180910390fd5b6000805460ff19166001179055565b60405164ffffffffff602c19833b0116808252602090810190602d908301843c60408101815101604052919050565b60006020828403121561034657600080fd5b5035919050565b602081526000825180602084015260005b8181101561037b576020818601810151604086840101520161035e565b506000604082850101526040601f19601f83011684010191505092915050565b6001600160a01b03811681146103b057600080fd5b50565b6000806000604084860312156103c857600080fd5b83356103d38161039b565b9250602084013567ffffffffffffffff8111156103ef57600080fd5b8401601f8101861361040057600080fd5b803567ffffffffffffffff81111561041757600080fd5b86602082840101111561042957600080fd5b939660209190910195509293505050565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561046357600080fd5b825161046e8161039b565b602084015190925067ffffffffffffffff81111561048b57600080fd5b8301601f8101851361049c57600080fd5b805167ffffffffffffffff8111156104b6576104b661043a565b8060051b604051601f19603f830116810181811067ffffffffffffffff821117156104e3576104e361043a565b60405291825260208184018101929081018884111561050157600080fd5b6020850194505b8385101561052457845180825260209586019590935001610508565b50809450505050509250929050565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561055b57600080fd5b8151801515811461056b57600080fd5b939250505056fea26469706673582212208aa020f2cd734f2c66a802dd9d5ffb89f457b5e856c0abb33a61d3f7bd46ab5464736f6c634300081c0033",
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100625760003560e01c806305023c3114610067578063158ef93e1461009f5780638129fc1c146100ac578063b41a4b19146100b6578063e2b24085146100cb578063f99f0238146100de575b600080fd5b61008a610075366004610334565b60016020526000908152604090205460ff1681565b60405190151581526020015b60405180910390f35b60005461008a9060ff1681565b6100b461010e565b005b6100be610118565b604051610096919061034d565b61008a6100d93660046103b3565b610127565b6000546100f69061010090046001600160a01b031681565b6040516001600160a01b039091168152602001610096565b61011661013c565b565b60606101226101e4565b905090565b60006101348484846101ef565b949350505050565b6101446102d3565b600061014e6101e4565b9050600080828060200190518101906101679190610450565b60008054610100600160a81b0319166101006001600160a01b0385160217815591935091505b81518110156101de5760018060008484815181106101ad576101ad610533565b6020908102919091018101518252810191909152604001600020805460ff191691151591909117905560010161018d565b50505050565b606061012230610305565b6000806101fe83850185610334565b60008181526001602052604090205490915060ff1661023057604051632f76bd0160e21b815260040160405180910390fd5b6000546040516321a9204d60e11b81526001600160a01b0387811660048301526024820184905261010090920490911690634352409a90604401602060405180830381865afa158015610287573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102ab9190610549565b6102c8576040516306fdb0d360e31b815260040160405180910390fd5b506001949350505050565b60005460ff16156102f65760405162dc149f60e41b815260040160405180910390fd5b6000805460ff19166001179055565b60405164ffffffffff602c19833b0116808252602090810190602d908301843c60408101815101604052919050565b60006020828403121561034657600080fd5b5035919050565b602081526000825180602084015260005b8181101561037b576020818601810151604086840101520161035e565b506000604082850101526040601f19601f83011684010191505092915050565b6001600160a01b03811681146103b057600080fd5b50565b6000806000604084860312156103c857600080fd5b83356103d38161039b565b9250602084013567ffffffffffffffff8111156103ef57600080fd5b8401601f8101861361040057600080fd5b803567ffffffffffffffff81111561041757600080fd5b86602082840101111561042957600080fd5b939660209190910195509293505050565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561046357600080fd5b825161046e8161039b565b602084015190925067ffffffffffffffff81111561048b57600080fd5b8301601f8101851361049c57600080fd5b805167ffffffffffffffff8111156104b6576104b661043a565b8060051b604051601f19603f830116810181811067ffffffffffffffff821117156104e3576104e361043a565b60405291825260208184018101929081018884111561050157600080fd5b6020850194505b8385101561052457845180825260209586019590935001610508565b50809450505050509250929050565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561055b57600080fd5b8151801515811461056b57600080fd5b939250505056fea26469706673582212208aa020f2cd734f2c66a802dd9d5ffb89f457b5e856c0abb33a61d3f7bd46ab5464736f6c634300081c0033",
"linkReferences": {},
"deployedLinkReferences": {}
}