{ "_format": "hh-sol-artifact-1", "contractName": "PolicyManager", "sourceName": "contracts/emoney/PolicyManager.sol", "abi": [ { "inputs": [ { "internalType": "address", "name": "admin", "type": "address" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "inputs": [], "name": "AccessControlBadConfirmation", "type": "error" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "bytes32", "name": "neededRole", "type": "bytes32" } ], "name": "AccessControlUnauthorizedAccount", "type": "error" }, { "anonymous": false, "inputs": [ { "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" }, { "indexed": true, "internalType": "address", "name": "sender", "type": "address" } ], "name": "RoleGranted", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "indexed": true, "internalType": "address", "name": "account", "type": "address" }, { "indexed": true, "internalType": "address", "name": "sender", "type": "address" } ], "name": "RoleRevoked", "type": "event" }, { "inputs": [], "name": "DEFAULT_ADMIN_ROLE", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" }, { "internalType": "address", "name": "", "type": "address" }, { "internalType": "address", "name": "", "type": "address" }, { "internalType": "uint256", "name": "", "type": "uint256" } ], "name": "canTransfer", "outputs": [ { "internalType": "bool", "name": "isAuthorized", "type": "bool" }, { "internalType": "bytes32", "name": "reasonCode", "type": "bytes32" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" }, { "internalType": "address", "name": "", "type": "address" }, { "internalType": "address", "name": "", "type": "address" }, { "internalType": "uint256", "name": "", "type": "uint256" }, { "internalType": "bytes", "name": "", "type": "bytes" } ], "name": "canTransferWithContext", "outputs": [ { "internalType": "bool", "name": "isAuthorized", "type": "bool" }, { "internalType": "bytes32", "name": "reasonCode", "type": "bytes32" } ], "stateMutability": "pure", "type": "function" }, { "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": "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" }, { "inputs": [ { "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "internalType": "address", "name": "callerConfirmation", "type": "address" } ], "name": "renounceRole", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "internalType": "address", "name": "account", "type": "address" } ], "name": "revokeRole", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "bytes4", "name": "interfaceId", "type": "bytes4" } ], "name": "supportsInterface", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" } ], "bytecode": "0x60803461006857601f6105f338819003918201601f19168301916001600160401b0383118484101761006d5780849260209460405283398101031261006857516001600160a01b03811681036100685761005890610083565b506040516104df90816101148239f35b600080fd5b634e487b7160e01b600052604160045260246000fd5b6001600160a01b031660008181527fad3228b676f7d3cd4284a5443f17f1962b36e491b30a40b2405849e597ba5fb5602052604081205490919060ff1661010f57818052816020526040822081835260205260408220600160ff1982541617905533917f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d8180a4600190565b509056fe608060408181526004908136101561001657600080fd5b600092833560e01c90816301ffc9a7146102d757508063248a9ca3146102ad5780632f2ff15d1461028557806336568abe1461023e5780635d64662f1461016b5780636d62a4fe1461012c57806391d14854146100e6578063a217fddf146100c75763d547741f1461008757600080fd5b346100c357806003193601126100c3576100bf91356100ba60016100a961032b565b938387528660205286200154610372565b610434565b5080f35b8280fd5b8382346100e257816003193601126100e25751908152602090f35b5080fd5b5090346100c357816003193601126100c3578160209360ff9261010761032b565b903582528186528282206001600160a01b039091168252855220549151911615158152f35b50823461016857608036600319011261016857610147610346565b5061015061032b565b5061015961035c565b50815190600182526020820152f35b80fd5b509190346100e25760a03660031901126100e257610187610346565b5061019061032b565b5061019961035c565b5067ffffffffffffffff90608435828111610214573660238201121561021457808201359280841161022b57855192601f8501601f19908116603f0116840191821184831017610218575085528282523660248483010111610214579160209181602486950184830137010152815190600182526020820152f35b8380fd5b634e487b7160e01b865260419052602485fd5b634e487b7160e01b855260418352602485fd5b508290346100e257806003193601126100e25761025961032b565b90336001600160a01b0383160361027657506100bf919235610434565b5163334bd91960e11b81528390fd5b50346100c357806003193601126100c3576100bf91356102a860016100a961032b565b6103b6565b5090346100c35760203660031901126100c357816020936001923581528085522001549051908152f35b849084346100c35760203660031901126100c3573563ffffffff60e01b81168091036100c35760209250637965db0b60e01b811490811561031a575b5015158152f35b6301ffc9a760e01b14905083610313565b602435906001600160a01b038216820361034157565b600080fd5b600435906001600160a01b038216820361034157565b604435906001600160a01b038216820361034157565b80600052600060205260406000203360005260205260ff60406000205416156103985750565b6044906040519063e2517d3f60e01b82523360048301526024820152fd5b9060009180835282602052604083209160018060a01b03169182845260205260ff6040842054161560001461042f57808352826020526040832082845260205260408320600160ff198254161790557f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d339380a4600190565b505090565b9060009180835282602052604083209160018060a01b03169182845260205260ff60408420541660001461042f5780835282602052604083208284526020526040832060ff1981541690557ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b339380a460019056fea264697066735822122052c9fa6b7400878b6eb1cfbb8f48c868ce1df4dd313042a13b6a36c185f7fd7c64736f6c63430008160033", "deployedBytecode": "0x608060408181526004908136101561001657600080fd5b600092833560e01c90816301ffc9a7146102d757508063248a9ca3146102ad5780632f2ff15d1461028557806336568abe1461023e5780635d64662f1461016b5780636d62a4fe1461012c57806391d14854146100e6578063a217fddf146100c75763d547741f1461008757600080fd5b346100c357806003193601126100c3576100bf91356100ba60016100a961032b565b938387528660205286200154610372565b610434565b5080f35b8280fd5b8382346100e257816003193601126100e25751908152602090f35b5080fd5b5090346100c357816003193601126100c3578160209360ff9261010761032b565b903582528186528282206001600160a01b039091168252855220549151911615158152f35b50823461016857608036600319011261016857610147610346565b5061015061032b565b5061015961035c565b50815190600182526020820152f35b80fd5b509190346100e25760a03660031901126100e257610187610346565b5061019061032b565b5061019961035c565b5067ffffffffffffffff90608435828111610214573660238201121561021457808201359280841161022b57855192601f8501601f19908116603f0116840191821184831017610218575085528282523660248483010111610214579160209181602486950184830137010152815190600182526020820152f35b8380fd5b634e487b7160e01b865260419052602485fd5b634e487b7160e01b855260418352602485fd5b508290346100e257806003193601126100e25761025961032b565b90336001600160a01b0383160361027657506100bf919235610434565b5163334bd91960e11b81528390fd5b50346100c357806003193601126100c3576100bf91356102a860016100a961032b565b6103b6565b5090346100c35760203660031901126100c357816020936001923581528085522001549051908152f35b849084346100c35760203660031901126100c3573563ffffffff60e01b81168091036100c35760209250637965db0b60e01b811490811561031a575b5015158152f35b6301ffc9a760e01b14905083610313565b602435906001600160a01b038216820361034157565b600080fd5b600435906001600160a01b038216820361034157565b604435906001600160a01b038216820361034157565b80600052600060205260406000203360005260205260ff60406000205416156103985750565b6044906040519063e2517d3f60e01b82523360048301526024820152fd5b9060009180835282602052604083209160018060a01b03169182845260205260ff6040842054161560001461042f57808352826020526040832082845260205260408320600160ff198254161790557f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d339380a4600190565b505090565b9060009180835282602052604083209160018060a01b03169182845260205260ff60408420541660001461042f5780835282602052604083208284526020526040832060ff1981541690557ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b339380a460019056fea264697066735822122052c9fa6b7400878b6eb1cfbb8f48c868ce1df4dd313042a13b6a36c185f7fd7c64736f6c63430008160033", "linkReferences": {}, "deployedLinkReferences": {} }