0 txs
0 calls
constructor
No constructor.
functions
identify
purefunction identify() pure returns (string)
isAppGovernor
viewfunction isAppGovernor(address account) view returns (bool)
isAppRoleAdmin
viewfunction isAppRoleAdmin(address account) view returns (bool)
isFrozen
viewfunction isFrozen() view returns (bool)
isGovernanceAdmin
viewfunction isGovernanceAdmin(address account) view returns (bool)
isOperator
viewfunction isOperator(address account) view returns (bool)
isSecurityAdmin
viewfunction isSecurityAdmin(address account) view returns (bool)
isSecurityAgent
viewfunction isSecurityAgent(address account) view returns (bool)
isTokenAdmin
viewfunction isTokenAdmin(address account) view returns (bool)
isUpgradeGovernor
viewfunction isUpgradeGovernor(address account) view returns (bool)
mintingAllowance
viewfunction mintingAllowance(address token, address account) view returns (uint256)
cancelMintingAllowance
nonpayablefunction cancelMintingAllowance(address token, address account)
initialize
nonpayablefunction initialize(bytes data)
mintRequest
nonpayablefunction mintRequest(address token, uint256 amount)
registerAppGovernor
nonpayablefunction registerAppGovernor(address account)
registerAppRoleAdmin
nonpayablefunction registerAppRoleAdmin(address account)
registerGovernanceAdmin
nonpayablefunction registerGovernanceAdmin(address account)
registerOperator
nonpayablefunction registerOperator(address account)
registerSecurityAdmin
nonpayablefunction registerSecurityAdmin(address account)
registerSecurityAgent
nonpayablefunction registerSecurityAgent(address account)
registerTokenAdmin
nonpayablefunction registerTokenAdmin(address account)
registerTokenMinter
nonpayablefunction registerTokenMinter(address token, address minter)
registerUpgradeGovernor
nonpayablefunction registerUpgradeGovernor(address account)
renounceRole
nonpayablefunction renounceRole(bytes32 role, address account)
revokeAppGovernor
nonpayablefunction revokeAppGovernor(address account)
revokeAppRoleAdmin
nonpayablefunction revokeAppRoleAdmin(address account)
revokeGovernanceAdmin
nonpayablefunction revokeGovernanceAdmin(address account)
revokeOperator
nonpayablefunction revokeOperator(address account)
revokeSecurityAdmin
nonpayablefunction revokeSecurityAdmin(address account)
revokeSecurityAgent
nonpayablefunction revokeSecurityAgent(address account)
revokeTokenAdmin
nonpayablefunction revokeTokenAdmin(address account)
revokeTokenMinter
nonpayablefunction revokeTokenMinter(address token, address minter)
revokeUpgradeGovernor
nonpayablefunction revokeUpgradeGovernor(address account)
setMintingAllowance
nonpayablefunction setMintingAllowance(address token, address account, uint256 amount)
events
MintingAllowanceSet
event MintingAllowanceSet(address token, address account, uint256 newAllowance)
MintProcessed
event MintProcessed(address token, address account, uint256 amount)
RoleAdminChanged
event RoleAdminChanged(bytes32 indexed role, bytes32 indexed previousAdminRole, bytes32 indexed newAdminRole)
RoleGranted
event RoleGranted(bytes32 indexed role, address indexed account, address indexed sender)
RoleRevoked
event RoleRevoked(bytes32 indexed role, address indexed account, address indexed sender)
TokenMinterRegistered
event TokenMinterRegistered(address token, address minter)
TokenMinterRevoked
event TokenMinterRevoked(address token, address minter)
errors
No errors.
creation bytecode
0x60c060405234801562000010575f80fd5b50306080525f60a0819052620000256200002c565b5062000532565b336200003981806200003c565b50565b6200004982825f6200004d565b5050565b62000057620001ae565b15620000ef576001600160a01b0383165f9081527fa5fdb349cc4ffac7e8ce7d3b075149d1bc847367d814e69a9beca89ef02db8b0602052604090205460ff16620000e95760405162461bcd60e51b815260206004820152601960248201527f524f4c45535f414c52454144595f494e495449414c495a45440000000000000060448201526064015b60405180910390fd5b620000fb565b620000fb8382620001ff565b6200010562000385565b15620001a3576001600160a01b0382165f9081527f2c11a1f9c63817dbb9f0faa966615764d2db5d6e008269e948a99e0b52181c23602052604090205460ff166200019e5760405162461bcd60e51b815260206004820152602260248201527f53454355524954595f524f4c45535f414c52454144595f494e495449414c495a604482015261115160f21b6064820152608401620000e0565b505050565b6200019e82620003d4565b5f80516020620021d38339815191525f9081525f80516020620022338339815191526020527fa5fdb349cc4ffac7e8ce7d3b075149d1bc847367d814e69a9beca89ef02db8b15481905b1415905090565b620002195f80516020620021d3833981519152836200043d565b620002527ed2ead78c620e94b02d0a996e99298c59ddccfa1d8a0149080ac3a20de060685f8051602062002253833981519152620004db565b6200027a5f80516020620022538339815191525f80516020620021d3833981519152620004db565b620002945f80516020620021d383398151915280620004db565b620002ce7f023edb77f7c8cc9e38e8afe78954f703aeeda7fffe014eeb6e56ea84e62f6da75f8051602062002253833981519152620004db565b620003087f0128d63adbf6b09002c26caf55c47e2f26635807e3ef1b027218aa74c8d61a3e5f8051602062002253833981519152620004db565b620003305f80516020620022138339815191525f80516020620021d3833981519152620004db565b80156200004957620003515f8051602062002253833981519152836200043d565b6200036b5f80516020620021d3833981519152836200043d565b620000495f8051602062002213833981519152836200043d565b5f80516020620021f38339815191525f9081525f80516020620022338339815191526020527f2c11a1f9c63817dbb9f0faa966615764d2db5d6e008269e948a99e0b52181c24548190620001f8565b620003ee5f80516020620021f383398151915280620004db565b620004287f037693ba312785932d430dccf0f56ffedd0aa7c0f8b6da2cc4530c2717689b965f80516020620021f3833981519152620004db565b620000395f80516020620021f3833981519152825b5f8281525f8051602062002233833981519152602090815260408083206001600160a01b038516845290915290205460ff1662000049575f8281525f8051602062002233833981519152602090815260408083206001600160a01b0385168085529252808320805460ff1916600117905551339285917f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9190a45050565b5f8281525f80516020620022338339815191526020526040808220600101805490849055905190918391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b60805160a051611c7f620005545f395f61068001525f6107250152611c7f5ff3fe608060405234801561000f575f80fd5b50600436106101fd575f3560e01c80638101b64c11610114578063d9fa7091116100a9578063eeb7286611610079578063eeb728661461042e578063f89333fe1461046d578063fa0f73ba14610480578063fad8b32a14610493578063fc9ca499146104a6575f80fd5b8063d9fa7091146103e2578063deec9c5a146103f5578063ed9ef16a14610408578063ee0e68071461041b575f80fd5b8063a2bdde3d116100e4578063a2bdde3d14610396578063cb1cccce146103a9578063cdd1f70d146103bc578063d08fb6cb146103cf575f80fd5b80638101b64c1461034a5780638e5224ff1461035d5780639463629a146103705780639a65797c14610383575f80fd5b8063439fab9111610195578063671357221161016557806367135722146102eb5780636c04d9d5146102fe5780636d70f7ae146103115780636fc97cbf14610324578063757bd9ab14610337575f80fd5b8063439fab911461029f5780634a949f19146102b25780635a5d1bb9146102c557806362a14376146102d8575f80fd5b80632f951985116101d05780632f9519851461024f57806333eeb1471461026257806336568abe146102795780633682a4501461028c575f80fd5b80630b3a2d21146102015780630e770f23146102165780630fbd28e114610229578063178963831461023c575b5f80fd5b61021461020f36600461182b565b6104c7565b005b61021461022436600461182b565b6104f4565b610214610237366004611846565b61051e565b61021461024a36600461182b565b6105e6565b61021461025d36600461182b565b610610565b5f5b60405190151581526020015b60405180910390f35b610214610287366004611884565b610667565b61021461029a36600461182b565b6106f8565b6102146102ad3660046118b2565b610722565b6102146102c036600461191e565b6108af565b6102646102d336600461182b565b61099a565b6102146102e636600461182b565b6109ca565b6102146102f936600461191e565b6109f4565b61026461030c36600461182b565b610a4a565b61026461031f36600461182b565b610a75565b61021461033236600461182b565b610aa0565b61026461034536600461182b565b610aca565b61021461035836600461182b565b610af5565b61026461036b36600461182b565b610b48565b61021461037e36600461182b565b610b73565b61021461039136600461194a565b610b8a565b6102646103a436600461182b565b610d5e565b6102646103b736600461182b565b610d89565b6102146103ca36600461182b565b610da1565b6102646103dd36600461182b565b610dca565b6102146103f036600461182b565b610df5565b61021461040336600461182b565b610e1f565b61021461041636600461182b565b610e48565b61021461042936600461182b565b610e72565b604080518082018252601c81527f537461726b576172655f4d696e744d616e616765725f323032345f3100000000602082015290516102709190611996565b61021461047b36600461191e565b610eb2565b61021461048e36600461182b565b610fc8565b6102146104a136600461182b565b610ff2565b6104b96104b436600461191e565b61101c565b604051908152602001610270565b6104f17f0128d63adbf6b09002c26caf55c47e2f26635807e3ef1b027218aa74c8d61a3e82611047565b50565b6104f17f037693ba312785932d430dccf0f56ffedd0aa7c0f8b6da2cc4530c2717689b9682611047565b61052733610d5e565b61056b5760405162461bcd60e51b815260206004820152601060248201526f27a7262cafaa27a5a2a72fa0a226a4a760811b60448201526064015b60405180910390fd5b61057483611077565b6001600160a01b0383165f908152602091909152604090205460ff166105d65760405162461bcd60e51b81526020600482015260176024820152762727aa2fa0afa922a3a4a9aa22a922a22fa6a4a72a22a960491b6044820152606401610562565b6105e18383836110e7565b505050565b6104f17f03e615638e0b79444a70f8c695bf8f2a47033bf1cf95691ec3130f64939cee9982611047565b80336001600160a01b038216036106395760405162461bcd60e51b8152600401610562906119c8565b6106637f03e615638e0b79444a70f8c695bf8f2a47033bf1cf95691ec3130f64939cee998361114d565b5050565b5f80516020611bc0833981519152821480156106a157507f0000000000000000000000000000000000000000000000000000000000000000155b156106ee5760405162461bcd60e51b815260206004820181905260248201527f43414e4e4f545f52454e4f554e43455f474f5645524e414e43455f41444d494e6044820152606401610562565b610663828261117d565b6104f17f023edb77f7c8cc9e38e8afe78954f703aeeda7fffe014eeb6e56ea84e62f6da782611047565b307f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316036107935760405162461bcd60e51b81526020600482015260166024820152751112549150d517d0d0531317d11254d0531313d5d15160521b6044820152606401610562565b5f61079f816020611a0c565b90505f6107ad826020611a23565b9050808310156107f55760405162461bcd60e51b81526020600482015260136024820152721253925517d110551057d513d3d7d4d3505313606a1b6044820152606401610562565b5f61080282848688611a36565b81019061080f919061182b565b9050365f61081f8582888a611a36565b9150915061082d82826111f7565b365f61083b8887818c611a36565b90925090506001600160a01b038516156108655761085a858383611237565b505050505050505050565b80156108aa5760405162461bcd60e51b8152602060048201526014602482015273554e45585045435445445f494e49545f4441544160601b6044820152606401610562565b61085a565b6108b83361099a565b6108f85760405162461bcd60e51b815260206004820152601160248201527027a7262cafa0a8282fa3a7ab22a92727a960791b6044820152606401610562565b61090182611077565b6001600160a01b0382165f908152602091909152604090205460ff1661066357600161092c83611077565b6001600160a01b038381165f8181526020938452604090819020805460ff19169515159590951790945583519186168252918101919091527fe15b00fb42f5e5b49d622bbd12e672c12133d5c8a4f87cb5b3a5a95e8825e747910160405180910390a161066382825f6110e7565b5f6109c47ed2ead78c620e94b02d0a996e99298c59ddccfa1d8a0149080ac3a20de0606883611375565b92915050565b6104f17f026bd110619d11cfdfc28e281df893bc24828e89177318e9dbd860cdaedeb6b382611047565b6109fd33610aca565b610a3f5760405162461bcd60e51b815260206004820152601360248201527213d3931657d4d150d55492551657d051d15395606a1b6044820152606401610562565b61066382825f6110e7565b5f6109c47f0251e864ca2a080f55bce5da2452e8cfcafdbc951a3e7fff5023d558452ec22883611375565b5f6109c47f023edb77f7c8cc9e38e8afe78954f703aeeda7fffe014eeb6e56ea84e62f6da783611375565b6104f17f0251e864ca2a080f55bce5da2452e8cfcafdbc951a3e7fff5023d558452ec22882611047565b5f6109c47f037693ba312785932d430dccf0f56ffedd0aa7c0f8b6da2cc4530c2717689b9683611375565b80336001600160a01b03821603610b1e5760405162461bcd60e51b8152600401610562906119c8565b6106637f026bd110619d11cfdfc28e281df893bc24828e89177318e9dbd860cdaedeb6b38361114d565b5f6109c47f03e615638e0b79444a70f8c695bf8f2a47033bf1cf95691ec3130f64939cee9983611375565b6104f15f80516020611bc083398151915282611047565b33610b9483611077565b6001600160a01b0382165f908152602091909152604090205460ff16610bf65760405162461bcd60e51b81526020600482015260176024820152762727aa2fa0afa922a3a4a9aa22a922a22fa6a4a72a22a960491b6044820152606401610562565b81610c00846113ab565b6001600160a01b0383165f90815260209190915260409020541015610c675760405162461bcd60e51b815260206004820152601e60248201527f494e53554646494349454e545f4d494e54494e475f414c4c4f57414e434500006044820152606401610562565b610c7183836113d8565b81610c7b846113ab565b5f836001600160a01b03166001600160a01b031681526020019081526020015f205f828254610caa9190611a5d565b90915550506040516340c10f1960e01b81526001600160a01b038281166004830152602482018490528416906340c10f19906044015f604051808303815f87803b158015610cf6575f80fd5b505af1158015610d08573d5f803e3d5ffd5b5050604080516001600160a01b038088168252851660208201529081018590527f0c68a46fe8c4fb94cc2926074142f4ee6d29c13a3b6abb23fcfe33c5848adee5925060600190505b60405180910390a1505050565b5f6109c47f0128d63adbf6b09002c26caf55c47e2f26635807e3ef1b027218aa74c8d61a3e83611375565b5f6109c45f80516020611bc083398151915283611375565b6104f17ed2ead78c620e94b02d0a996e99298c59ddccfa1d8a0149080ac3a20de0606882611047565b5f6109c47f026bd110619d11cfdfc28e281df893bc24828e89177318e9dbd860cdaedeb6b383611375565b6104f17f037693ba312785932d430dccf0f56ffedd0aa7c0f8b6da2cc4530c2717689b968261114d565b6104f17ed2ead78c620e94b02d0a996e99298c59ddccfa1d8a0149080ac3a20de060688261114d565b6104f17f0251e864ca2a080f55bce5da2452e8cfcafdbc951a3e7fff5023d558452ec2288261114d565b80336001600160a01b03821603610e9b5760405162461bcd60e51b8152600401610562906119c8565b6106635f80516020611bc08339815191528361114d565b33610ebc8161099a565b80610ecb5750610ecb81610dca565b80610eda5750610eda81610aca565b610f265760405162461bcd60e51b815260206004820152601960248201527f4f4e4c595f474f5645524e4f525f4f525f5345435552495459000000000000006044820152606401610562565b610f2f83611077565b6001600160a01b0383165f908152602091909152604090205460ff16156105e1575f610f5a84611077565b6001600160a01b038481165f8181526020938452604090819020805460ff19169515159590951790945583519187168252918101919091527f21137fb57a43ba53944aabc84a49ae5ed119aab76cda305ef37eb758a21a4d7c910160405180910390a16105e183835f6110e7565b6104f17f0128d63adbf6b09002c26caf55c47e2f26635807e3ef1b027218aa74c8d61a3e8261114d565b6104f17f023edb77f7c8cc9e38e8afe78954f703aeeda7fffe014eeb6e56ea84e62f6da78261114d565b5f611026836113ab565b6001600160a01b0383165f9081526020919091526040902054905092915050565b5f8281525f80516020611be0833981519152602052604090206001015461106d8161147c565b6105e18383611486565b5f806040518060400160405280601b81526020017f524547495354455245445f4d494e544552535f534c4f545f5441470000000000815250836040516020016110c1929190611a70565b6040516020818303038152906040528051906020012090506110e08190565b9392505050565b806110f1846113ab565b6001600160a01b038085165f81815260209384526040908190209490945583519187168252918101919091529081018290527f3373cfe89eb90f116edbde5165c9b66e65935cecee1713070658b65c07080a8290606001610d51565b5f8281525f80516020611be083398151915260205260409020600101546111738161147c565b6105e183836114fa565b6001600160a01b03811633146111ed5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610562565b61066382826114fa565b80156106635760405162461bcd60e51b815260206004820152600f60248201526e554e45585045435445445f4441544160881b6044820152606401610562565b6001600160a01b0383163b6112835760405162461bcd60e51b8152602060048201526012602482015271115250d7d393d517d057d0d3d395149050d560721b6044820152606401610562565b5f80846001600160a01b031663439fab9160e01b85856040516024016112aa929190611aa6565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b03199094169390931790925290516112e89190611ad4565b5f60405180830381855af49150503d805f8114611320576040519150601f19603f3d011682016040523d82523d5f602084013e611325565b606091505b509150915081819061134a5760405162461bcd60e51b81526004016105629190611996565b50805181901561136d5760405162461bcd60e51b81526004016105629190611996565b505050505050565b5f9182525f80516020611be0833981519152602090815260408084206001600160a01b0393909316845291905290205460ff1690565b5f80604051806060016040528060278152602001611c2360279139836040516020016110c1929190611a70565b5f6113e28361156c565b90505f6113ed6115c4565b5f838152602091909152604081205491506114088483611a23565b90506a034f086f3b33b68400000081111561145d5760405162461bcd60e51b81526020600482015260156024820152744558434545445f504552494f445f4d494e54494e4760581b6044820152606401610562565b806114666115c4565b5f94855260205260409093209290925550505050565b6104f181336115eb565b6114908282611375565b610663575f8281525f80516020611be0833981519152602090815260408083206001600160a01b0385168085529252808320805460ff1916600117905551339285917f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d9190a45050565b6115048282611375565b15610663575f8281525f80516020611be0833981519152602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b5f8061157b62093a8042611aef565b6040805162093a8060208201526001600160a01b038616918101919091526060810182905290915060800160405160208183030381529060405280519060200120915050919050565b5f6115e6604051806060016040528060238152602001611c006023913961164f565b905090565b6115f58282611375565b6106635761160d816001600160a01b03166014611681565b611618836020611681565b604051602001611629929190611b0e565b60408051601f198184030181529082905262461bcd60e51b825261056291600401611996565b5f80826040516020016116629190611ad4565b60408051601f1981840301815291905280516020909101209392505050565b60605f61168f836002611a0c565b61169a906002611a23565b67ffffffffffffffff8111156116b2576116b2611b82565b6040519080825280601f01601f1916602001820160405280156116dc576020820181803683370190505b509050600360fc1b815f815181106116f6576116f6611b96565b60200101906001600160f81b03191690815f1a905350600f60fb1b8160018151811061172457611724611b96565b60200101906001600160f81b03191690815f1a9053505f611746846002611a0c565b611751906001611a23565b90505b60018111156117c8576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061178557611785611b96565b1a60f81b82828151811061179b5761179b611b96565b60200101906001600160f81b03191690815f1a90535060049490941c936117c181611baa565b9050611754565b5083156110e05760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610562565b6001600160a01b03811681146104f1575f80fd5b5f6020828403121561183b575f80fd5b81356110e081611817565b5f805f60608486031215611858575f80fd5b833561186381611817565b9250602084013561187381611817565b929592945050506040919091013590565b5f8060408385031215611895575f80fd5b8235915060208301356118a781611817565b809150509250929050565b5f80602083850312156118c3575f80fd5b823567ffffffffffffffff808211156118da575f80fd5b818501915085601f8301126118ed575f80fd5b8135818111156118fb575f80fd5b86602082850101111561190c575f80fd5b60209290920196919550909350505050565b5f806040838503121561192f575f80fd5b823561193a81611817565b915060208301356118a781611817565b5f806040838503121561195b575f80fd5b823561196681611817565b946020939093013593505050565b5f5b8381101561198e578181015183820152602001611976565b50505f910152565b602081525f82518060208401526119b4816040850160208701611974565b601f01601f19169190910160400192915050565b60208082526016908201527521a0a72727aa2fa822a92327a926afa7a72fa9a2a62360511b604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b80820281158282048414176109c4576109c46119f8565b808201808211156109c4576109c46119f8565b5f8085851115611a44575f80fd5b83861115611a50575f80fd5b5050820193919092039150565b818103818111156109c4576109c46119f8565b5f8351611a81818460208801611974565b60609390931b6bffffffffffffffffffffffff19169190920190815260140192915050565b60208152816020820152818360408301375f818301604090810191909152601f909201601f19160101919050565b5f8251611ae5818460208701611974565b9190910192915050565b5f82611b0957634e487b7160e01b5f52601260045260245ffd5b500490565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081525f8351611b45816017850160208801611974565b7001034b99036b4b9b9b4b733903937b6329607d1b6017918401918201528351611b76816028840160208801611974565b01602801949350505050565b634e487b7160e01b5f52604160045260245ffd5b634e487b7160e01b5f52603260045260245ffd5b5f81611bb857611bb86119f8565b505f19019056fe03711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c84184653e43b954ba190a7e49386f1f78b01dcd9f628db23f432fa029a7dfd6d98e8fb504552494f444943414c5f4d494e545f4143434f554e54494e475f534c4f545f5441474d494e545f4d414e414745525f4d494e54494e475f414c4c4f57414e43455f534c4f545f544147a2646970667358221220f1eb27d253f359d8d844fbadbdc4ff844ccf75f7e177d0f132ff357eaca03a1a64736f6c6343000818003303711c9d994faf6055172091cb841fd4831aa743e6f3315163b06a122c841846026bd110619d11cfdfc28e281df893bc24828e89177318e9dbd860cdaedeb6b30251e864ca2a080f55bce5da2452e8cfcafdbc951a3e7fff5023d558452ec22853e43b954ba190a7e49386f1f78b01dcd9f628db23f432fa029a7dfd6d98e8fb03e615638e0b79444a70f8c695bf8f2a47033bf1cf95691ec3130f64939cee99