0 txs
0 calls
constructor
constructor()
functions
allowance
viewfunction allowance(address, address) view returns (uint256)
balanceOf
viewfunction balanceOf(address) view returns (uint256)
BUCKET_MANAGER_ROLE
viewfunction BUCKET_MANAGER_ROLE() view returns (bytes32)
decimals
viewfunction decimals() view returns (uint8)
DEFAULT_ADMIN_ROLE
viewfunction DEFAULT_ADMIN_ROLE() view returns (bytes32)
DOMAIN_SEPARATOR
viewfunction DOMAIN_SEPARATOR() view returns (bytes32)
FACILITATOR_MANAGER_ROLE
viewfunction FACILITATOR_MANAGER_ROLE() view returns (bytes32)
getFacilitator
viewfunction getFacilitator(address facilitator) view returns (tuple)
getFacilitatorBucket
viewfunction getFacilitatorBucket(address facilitator) view returns (uint256, uint256)
getFacilitatorsList
viewfunction getFacilitatorsList() view returns (address[])
getRoleAdmin
viewfunction getRoleAdmin(bytes32 role) view returns (bytes32)
hasRole
viewfunction hasRole(bytes32 role, address account) view returns (bool)
name
viewfunction name() view returns (string)
nonces
viewfunction nonces(address) view returns (uint256)
PERMIT_TYPEHASH
viewfunction PERMIT_TYPEHASH() view returns (bytes32)
supportsInterface
viewfunction supportsInterface(bytes4 interfaceId) view returns (bool)
symbol
viewfunction symbol() view returns (string)
totalSupply
viewfunction totalSupply() view returns (uint256)
addFacilitator
nonpayablefunction addFacilitator(address facilitatorAddress, string facilitatorLabel, uint128 bucketCapacity)
approve
nonpayablefunction approve(address spender, uint256 amount) returns (bool)
burn
nonpayablefunction burn(uint256 amount)
grantRole
nonpayablefunction grantRole(bytes32 role, address account)
initialize
nonpayablefunction initialize(address admin)
mint
nonpayablefunction mint(address account, uint256 amount)
permit
nonpayablefunction permit(address owner, address spender, uint256 value, uint256 deadline, uint8 v, bytes32 r, bytes32 s)
removeFacilitator
nonpayablefunction removeFacilitator(address facilitatorAddress)
renounceRole
nonpayablefunction renounceRole(bytes32 role, address account)
revokeRole
nonpayablefunction revokeRole(bytes32 role, address account)
setFacilitatorBucketCapacity
nonpayablefunction setFacilitatorBucketCapacity(address facilitator, uint128 newCapacity)
transfer
nonpayablefunction transfer(address to, uint256 amount) returns (bool)
transferFrom
nonpayablefunction transferFrom(address from, address to, uint256 amount) returns (bool)
events
Approval
event Approval(address indexed owner, address indexed spender, uint256 value)
FacilitatorAdded
event FacilitatorAdded(address indexed facilitatorAddress, bytes32 indexed label, uint256 bucketCapacity)
FacilitatorBucketCapacityUpdated
event FacilitatorBucketCapacityUpdated(address indexed facilitatorAddress, uint256 oldCapacity, uint256 newCapacity)
FacilitatorBucketLevelUpdated
event FacilitatorBucketLevelUpdated(address indexed facilitatorAddress, uint256 oldLevel, uint256 newLevel)
FacilitatorRemoved
event FacilitatorRemoved(address indexed facilitatorAddress)
Initialized
event Initialized(uint8 version)
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)
Transfer
event Transfer(address indexed from, address indexed to, uint256 value)
errors
No errors.
creation bytecode
0x60a060405234801561001057600080fd5b50601261001b610026565b60ff166080526100e6565b600054610100900460ff16156100925760405162461bcd60e51b815260206004820152602760248201527f496e697469616c697a61626c653a20636f6e747261637420697320696e697469604482015266616c697a696e6760c81b606482015260840160405180910390fd5b60005460ff90811610156100e4576000805460ff191660ff9081179091556040519081527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b565b6080516121396200010260003960006102dd01526121396000f3fe608060405234801561001057600080fd5b50600436106101e55760003560e01c8063550d99641161010f578063a9059cbb116100a2578063d46ec0ed11610071578063d46ec0ed146104b5578063d505accf146104d5578063d547741f146104e8578063dd62ed3e146104fb57600080fd5b8063a9059cbb14610429578063aa02f94a1461043c578063af93df571461048f578063c4d66de8146104a257600080fd5b806391d14854116100de57806391d14854146103f357806395d89b4114610406578063a11812ba1461040e578063a217fddf1461042157600080fd5b8063550d99641461037957806370a08231146103a05780637ecebe00146103c05780637fc24def146103e057600080fd5b80632f2ff15d1161018757806336568abe1161015657806336568abe1461031957806340c10f191461032c57806342966c681461033f578063433bef441461035257600080fd5b80632f2ff15d1461029c57806330adf81f146102b1578063313ce567146102d85780633644e5151461031157600080fd5b806318160ddd116101c357806318160ddd1461023a5780631ec90f2e1461025157806323b872dd14610266578063248a9ca31461027957600080fd5b806301ffc9a7146101ea57806306fdde0314610212578063095ea7b314610227575b600080fd5b6101fd6101f8366004611b4c565b610526565b60405190151581526020015b60405180910390f35b61021a61055d565b6040516102099190611bd2565b6101fd610235366004611c01565b6105eb565b61024360035481565b604051908152602001610209565b610259610657565b6040516102099190611c2b565b6101fd610274366004611c78565b610668565b610243610287366004611cb4565b60009081526007602052604090206001015490565b6102af6102aa366004611ccd565b610748565b005b6102437f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c981565b6102ff7f000000000000000000000000000000000000000000000000000000000000000081565b60405160ff9091168152602001610209565b610243610772565b6102af610327366004611ccd565b61077c565b6102af61033a366004611c01565b6107ff565b6102af61034d366004611cb4565b610941565b6102437f5e20732f79076148980e17b6ce9f22756f85058fe2765420ed48a504bef5a8bc81565b6102437fc7f115822aabac0cd6b9d21b08c0c63819451a58157aecad689d1b5674fad40881565b6102436103ae366004611cf9565b60046020526000908152604090205481565b6102436103ce366004611cf9565b60066020526000908152604090205481565b6102af6103ee366004611d2b565b610a1c565b6101fd610401366004611ccd565b610ba4565b61021a610bcf565b6102af61041c366004611cf9565b610bdc565b610243600081565b6101fd610437366004611c01565b610d6b565b61047a61044a366004611cf9565b6001600160a01b03166000908152600860205260409020546001600160801b0380821692600160801b9092041690565b60408051928352602083019190915201610209565b6102af61049d366004611dbf565b610dd1565b6102af6104b0366004611cf9565b610ee2565b6104c86104c3366004611cf9565b61103c565b6040516102099190611de9565b6102af6104e3366004611e2d565b611135565b6102af6104f6366004611ccd565b611386565b610243610509366004611ea0565b600560209081526000928352604080842090915290825290205481565b60006001600160e01b03198216637965db0b60e01b148061055757506301ffc9a760e01b6001600160e01b03198316145b92915050565b6001805461056a90611eca565b80601f016020809104026020016040519081016040528092919081815260200182805461059690611eca565b80156105e35780601f106105b8576101008083540402835291602001916105e3565b820191906000526020600020905b8154815290600101906020018083116105c657829003601f168201915b505050505081565b3360008181526005602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906106469086815260200190565b60405180910390a350600192915050565b606061066360096113ab565b905090565b6001600160a01b038316600090815260056020908152604080832033845290915281205460001981146106c45761069f8382611f1b565b6001600160a01b03861660009081526005602090815260408083203384529091529020555b6001600160a01b038516600090815260046020526040812080548592906106ec908490611f1b565b90915550506001600160a01b03808516600081815260046020526040908190208054870190555190918716906000805160206120e4833981519152906107359087815260200190565b60405180910390a3506001949350505050565b600082815260076020526040902060010154610763816113bf565b61076d83836113cc565b505050565b6000610663611452565b6001600160a01b03811633146107f15760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b6107fb82826114ec565b5050565b600081116108455760405162461bcd60e51b81526020600482015260136024820152721253959053125117d352539517d05353d55395606a1b60448201526064016107e8565b33600090815260086020526040812080549091600160801b9091046001600160801b0316906108748483611f32565b83549091506001600160801b03168111156108dd5760405162461bcd60e51b8152602060048201526024808201527f464143494c495441544f525f4255434b45545f43415041434954595f455843456044820152631151115160e21b60648201526084016107e8565b82546001600160801b03808316600160801b0291161783556108ff8585611553565b604080518381526020810183905233917facb6de9209e4f34974cb165eef5738f0cf0b4ea9819ef30d30f0f7d81272ab82910160405180910390a25050505050565b600081116109875760405162461bcd60e51b81526020600482015260136024820152721253959053125117d095549397d05353d55395606a1b60448201526064016107e8565b33600090815260086020526040812080549091600160801b9091046001600160801b0316906109b68483611f1b565b83546001600160801b03808316600160801b02911617845590506109da33856115ad565b604080518381526020810183905233917facb6de9209e4f34974cb165eef5738f0cf0b4ea9819ef30d30f0f7d81272ab8291015b60405180910390a250505050565b7f5e20732f79076148980e17b6ce9f22756f85058fe2765420ed48a504bef5a8bc610a46816113bf565b6001600160a01b0385166000908152600860205260409020600181018054610a6d90611eca565b159050610abc5760405162461bcd60e51b815260206004820152601a60248201527f464143494c495441544f525f414c52454144595f45584953545300000000000060448201526064016107e8565b83610af95760405162461bcd60e51b815260206004820152600d60248201526c1253959053125117d310509153609a1b60448201526064016107e8565b610b07600182018686611a05565b5080546001600160801b0319166001600160801b038416178155610b2c60098761160f565b508484604051602001610b40929190611f4a565b60408051601f198184030181529082905280516020918201206001600160801b0386168352916001600160a01b038916917fdabd62626ada7b13e299389e94d768b294e5e24285ed2ffa1e5cd447c99c54ad910160405180910390a3505050505050565b60009182526007602090815260408084206001600160a01b0393909316845291905290205460ff1690565b6002805461056a90611eca565b7f5e20732f79076148980e17b6ce9f22756f85058fe2765420ed48a504bef5a8bc610c06816113bf565b6001600160a01b03821660009081526008602052604081206001018054610c2c90611eca565b905011610c7b5760405162461bcd60e51b815260206004820152601a60248201527f464143494c495441544f525f444f45535f4e4f545f455849535400000000000060448201526064016107e8565b6001600160a01b038216600090815260086020526040902054600160801b90046001600160801b031615610cfb5760405162461bcd60e51b815260206004820152602160248201527f464143494c495441544f525f4255434b45545f4c4556454c5f4e4f545f5a45526044820152604f60f81b60648201526084016107e8565b6001600160a01b038216600090815260086020526040812081815590610d246001830182611a89565b50610d329050600983611624565b506040516001600160a01b038316907fa8fe5b89f35f2ebd6f3f95a7ef215f4bd89179e10c101073ae76cffad14734cf90600090a25050565b33600090815260046020526040812080548391908390610d8c908490611f1b565b90915550506001600160a01b038316600081815260046020526040908190208054850190555133906000805160206120e4833981519152906106469086815260200190565b7fc7f115822aabac0cd6b9d21b08c0c63819451a58157aecad689d1b5674fad408610dfb816113bf565b6001600160a01b03831660009081526008602052604081206001018054610e2190611eca565b905011610e705760405162461bcd60e51b815260206004820152601a60248201527f464143494c495441544f525f444f45535f4e4f545f455849535400000000000060448201526064016107e8565b6001600160a01b03831660008181526008602090815260409182902080546001600160801b031981166001600160801b03888116918217909355845192909116808352928201529092917fc795c0a4927c3b6645e4e49a5a519af936b3c1c0e4c323a3f7251063f3f4bb0e9101610a0e565b600054610100900460ff1615808015610f025750600054600160ff909116105b80610f1c5750303b158015610f1c575060005460ff166001145b610f7f5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084016107e8565b6000805460ff191660011790558015610fa2576000805461ff0019166101001790555b610fe86040518060400160405280600981526020016823b437902a37b5b2b760b91b8152506040518060400160405280600381526020016247484f60e81b815250611639565b610ff36000836113cc565b80156107fb576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15050565b6040805160608082018352600080835260208084018290528385018390526001600160a01b038616825260088152908490208451928301855280546001600160801b038082168552600160801b90910416918301919091526001810180549394929391928401916110ac90611eca565b80601f01602080910402602001604051908101604052809291908181526020018280546110d890611eca565b80156111255780601f106110fa57610100808354040283529160200191611125565b820191906000526020600020905b81548152906001019060200180831161110857829003601f168201915b5050505050815250509050919050565b428410156111855760405162461bcd60e51b815260206004820152601760248201527f5045524d49545f444541444c494e455f4558504952454400000000000000000060448201526064016107e8565b600061118f610772565b6001600160a01b0389811660008181526006602090815260409182902080546001810190915582517f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98184015280840194909452938c166060840152608083018b905260a083019390935260c08083018a90528151808403909101815260e08301909152805192019190912061190160f01b6101008301526101028201929092526101228101919091526101420160408051601f198184030181528282528051602091820120600080855291840180845281905260ff88169284019290925260608301869052608083018590529092509060019060a0016020604051602081039080840390855afa1580156112a8573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116158015906112de5750886001600160a01b0316816001600160a01b0316145b61131b5760405162461bcd60e51b815260206004820152600e60248201526d24a72b20a624a22fa9a4a3a722a960911b60448201526064016107e8565b6001600160a01b0390811660009081526005602090815260408083208b8516808552908352928190208a905551898152919350918a16917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a350505050505050565b6000828152600760205260409020600101546113a1816113bf565b61076d83836114ec565b606060006113b883611660565b9392505050565b6113c981336116bc565b50565b6113d68282610ba4565b6107fb5760008281526007602090815260408083206001600160a01b03851684529091529020805460ff1916600117905561140e3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60016040516114849190611f5a565b6040805191829003822060208301939093528101919091527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660608201524660808201523060a082015260c00160405160208183030381529060405280519060200120905090565b6114f68282610ba4565b156107fb5760008281526007602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b80600360008282546115659190611f32565b90915550506001600160a01b0382166000818152600460209081526040808320805486019055518481526000805160206120e483398151915291015b60405180910390a35050565b6001600160a01b038216600090815260046020526040812080548392906115d5908490611f1b565b90915550506003805482900390556040518181526000906001600160a01b038416906000805160206120e4833981519152906020016115a1565b60006113b8836001600160a01b038416611715565b60006113b8836001600160a01b038416611764565b815161164c906001906020850190611ac3565b50805161076d906002906020840190611ac3565b6060816000018054806020026020016040519081016040528092919081815260200182805480156116b057602002820191906000526020600020905b81548152602001906001019080831161169c575b50505050509050919050565b6116c68282610ba4565b6107fb576116d381611857565b6116de836020611869565b6040516020016116ef929190611ff6565b60408051601f198184030181529082905262461bcd60e51b82526107e891600401611bd2565b600081815260018301602052604081205461175c57508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610557565b506000610557565b6000818152600183016020526040812054801561184d576000611788600183611f1b565b855490915060009061179c90600190611f1b565b90508181146118015760008660000182815481106117bc576117bc61206b565b90600052602060002001549050808760000184815481106117df576117df61206b565b6000918252602080832090910192909255918252600188019052604090208390555b855486908061181257611812612081565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050610557565b6000915050610557565b60606105576001600160a01b03831660145b60606000611878836002612097565b611883906002611f32565b67ffffffffffffffff81111561189b5761189b6120b6565b6040519080825280601f01601f1916602001820160405280156118c5576020820181803683370190505b509050600360fc1b816000815181106118e0576118e061206b565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811061190f5761190f61206b565b60200101906001600160f81b031916908160001a9053506000611933846002612097565b61193e906001611f32565b90505b60018111156119b6576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106119725761197261206b565b1a60f81b8282815181106119885761198861206b565b60200101906001600160f81b031916908160001a90535060049490941c936119af816120cc565b9050611941565b5083156113b85760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e7460448201526064016107e8565b828054611a1190611eca565b90600052602060002090601f016020900481019282611a335760008555611a79565b82601f10611a4c5782800160ff19823516178555611a79565b82800160010185558215611a79579182015b82811115611a79578235825591602001919060010190611a5e565b50611a85929150611b37565b5090565b508054611a9590611eca565b6000825580601f10611aa5575050565b601f0160209004906000526020600020908101906113c99190611b37565b828054611acf90611eca565b90600052602060002090601f016020900481019282611af15760008555611a79565b82601f10611b0a57805160ff1916838001178555611a79565b82800160010185558215611a79579182015b82811115611a79578251825591602001919060010190611b1c565b5b80821115611a855760008155600101611b38565b600060208284031215611b5e57600080fd5b81356001600160e01b0319811681146113b857600080fd5b60005b83811015611b91578181015183820152602001611b79565b83811115611ba0576000848401525b50505050565b60008151808452611bbe816020860160208601611b76565b601f01601f19169290920160200192915050565b6020815260006113b86020830184611ba6565b80356001600160a01b0381168114611bfc57600080fd5b919050565b60008060408385031215611c1457600080fd5b611c1d83611be5565b946020939093013593505050565b6020808252825182820181905260009190848201906040850190845b81811015611c6c5783516001600160a01b031683529284019291840191600101611c47565b50909695505050505050565b600080600060608486031215611c8d57600080fd5b611c9684611be5565b9250611ca460208501611be5565b9150604084013590509250925092565b600060208284031215611cc657600080fd5b5035919050565b60008060408385031215611ce057600080fd5b82359150611cf060208401611be5565b90509250929050565b600060208284031215611d0b57600080fd5b6113b882611be5565b80356001600160801b0381168114611bfc57600080fd5b60008060008060608587031215611d4157600080fd5b611d4a85611be5565b9350602085013567ffffffffffffffff80821115611d6757600080fd5b818701915087601f830112611d7b57600080fd5b813581811115611d8a57600080fd5b886020828501011115611d9c57600080fd5b602083019550809450505050611db460408601611d14565b905092959194509250565b60008060408385031215611dd257600080fd5b611ddb83611be5565b9150611cf060208401611d14565b6020815260006001600160801b03808451166020840152806020850151166040840152506040830151606080840152611e256080840182611ba6565b949350505050565b600080600080600080600060e0888a031215611e4857600080fd5b611e5188611be5565b9650611e5f60208901611be5565b95506040880135945060608801359350608088013560ff81168114611e8357600080fd5b9699959850939692959460a0840135945060c09093013592915050565b60008060408385031215611eb357600080fd5b611ebc83611be5565b9150611cf060208401611be5565b600181811c90821680611ede57607f821691505b60208210811415611eff57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b600082821015611f2d57611f2d611f05565b500390565b60008219821115611f4557611f45611f05565b500190565b8183823760009101908152919050565b600080835481600182811c915080831680611f7657607f831692505b6020808410821415611f9657634e487b7160e01b86526022600452602486fd5b818015611faa5760018114611fbb57611fe8565b60ff19861689528489019650611fe8565b60008a81526020902060005b86811015611fe05781548b820152908501908301611fc7565b505084890196505b509498975050505050505050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161202e816017850160208801611b76565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161205f816028840160208801611b76565b01602801949350505050565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052603160045260246000fd5b60008160001904831182151516156120b1576120b1611f05565b500290565b634e487b7160e01b600052604160045260246000fd5b6000816120db576120db611f05565b50600019019056feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa264697066735822122068d846f82851ad0b027419b71ccfe20ba60eb2bf0af9cd03f4515fbe91020e4964736f6c634300080a0033