[ { "inputs": [], "stateMutability": "nonpayable", "type": "constructor" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "owner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "spender", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "Approval", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "facilitatorAddress", "type": "address" }, { "indexed": true, "internalType": "bytes32", "name": "label", "type": "bytes32" }, { "indexed": false, "internalType": "uint256", "name": "bucketCapacity", "type": "uint256" } ], "name": "FacilitatorAdded", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "facilitatorAddress", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "oldCapacity", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "newCapacity", "type": "uint256" } ], "name": "FacilitatorBucketCapacityUpdated", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "facilitatorAddress", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "oldLevel", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "newLevel", "type": "uint256" } ], "name": "FacilitatorBucketLevelUpdated", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "facilitatorAddress", "type": "address" } ], "name": "FacilitatorRemoved", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "previousOwner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "OwnershipTransferred", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": true, "internalType": "address", "name": "to", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "Transfer", "type": "event" }, { "inputs": [], "name": "DOMAIN_SEPARATOR", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "PERMIT_TYPEHASH", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "facilitatorAddress", "type": "address" }, { "internalType": "string", "name": "facilitatorLabel", "type": "string" }, { "internalType": "uint128", "name": "bucketCapacity", "type": "uint128" } ], "name": "addFacilitator", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" }, { "internalType": "address", "name": "", "type": "address" } ], "name": "allowance", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "approve", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "burn", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "decimals", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "facilitator", "type": "address" } ], "name": "getFacilitator", "outputs": [ { "components": [ { "internalType": "uint128", "name": "bucketCapacity", "type": "uint128" }, { "internalType": "uint128", "name": "bucketLevel", "type": "uint128" }, { "internalType": "string", "name": "label", "type": "string" } ], "internalType": "struct IGhoToken.Facilitator", "name": "", "type": "tuple" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "facilitator", "type": "address" } ], "name": "getFacilitatorBucket", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" }, { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "getFacilitatorsList", "outputs": [ { "internalType": "address[]", "name": "", "type": "address[]" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "mint", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "nonces", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "value", "type": "uint256" }, { "internalType": "uint256", "name": "deadline", "type": "uint256" }, { "internalType": "uint8", "name": "v", "type": "uint8" }, { "internalType": "bytes32", "name": "r", "type": "bytes32" }, { "internalType": "bytes32", "name": "s", "type": "bytes32" } ], "name": "permit", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "facilitatorAddress", "type": "address" } ], "name": "removeFacilitator", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "facilitator", "type": "address" }, { "internalType": "uint128", "name": "newCapacity", "type": "uint128" } ], "name": "setFacilitatorBucketCapacity", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "symbol", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "transfer", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "from", "type": "address" }, { "internalType": "address", "name": "to", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "transferFrom", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "transferOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" } ]
60e06040523480156200001157600080fd5b50604080518082018252600981526823b437902a37b5b2b760b91b60208083019182528351808501909452600384526247484f60e81b90840152815191929160129162000062916000919062000195565b5081516200007890600190602085019062000195565b5060ff81166080524660a0526200008e620000a7565b60c05250620000a1915033905062000143565b6200031c565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f6000604051620000db919062000278565b6040805191829003822060208301939093528101919091527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660608201524660808201523060a082015260c00160405160208183030381529060405280519060200120905090565b600680546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b828054620001a3906200023b565b90600052602060002090601f016020900481019282620001c7576000855562000212565b82601f10620001e257805160ff191683800117855562000212565b8280016001018555821562000212579182015b8281111562000212578251825591602001919060010190620001f5565b506200022092915062000224565b5090565b5b8082111562000220576000815560010162000225565b600181811c908216806200025057607f821691505b602082108114156200027257634e487b7160e01b600052602260045260246000fd5b50919050565b600080835481600182811c9150808316806200029557607f831692505b6020808410821415620002b657634e487b7160e01b86526022600452602486fd5b818015620002cd5760018114620002df576200030e565b60ff198616895284890196506200030e565b60008a81526020902060005b86811015620003065781548b820152908501908301620002eb565b505084890196505b509498975050505050505050565b60805160a05160c0516120146200034c60003960006106e9015260006106b90152600061024901526120146000f3fe608060405234801561001057600080fd5b50600436106101985760003560e01c80637ecebe00116100e3578063aa02f94a1161008c578063d505accf11610066578063d505accf14610407578063dd62ed3e1461041a578063f2fde38b1461044557600080fd5b8063aa02f94a1461035e578063af93df57146103d4578063d46ec0ed146103e757600080fd5b806395d89b41116100bd57806395d89b4114610330578063a11812ba14610338578063a9059cbb1461034b57600080fd5b80637ecebe00146102d55780637fc24def146102f55780638da5cb5b1461030857600080fd5b8063313ce5671161014557806342966c681161011f57806342966c681461029a57806370a08231146102ad578063715018a6146102cd57600080fd5b8063313ce567146102445780633644e5151461027d57806340c10f191461028557600080fd5b80631ec90f2e116101765780631ec90f2e146101f557806323b872dd1461020a57806330adf81f1461021d57600080fd5b806306fdde031461019d578063095ea7b3146101bb57806318160ddd146101de575b600080fd5b6101a5610458565b6040516101b29190611aea565b60405180910390f35b6101ce6101c9366004611b26565b6104e6565b60405190151581526020016101b2565b6101e760025481565b6040519081526020016101b2565b6101fd610560565b6040516101b29190611b50565b6101ce610218366004611baa565b610571565b6101e77f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c981565b61026b7f000000000000000000000000000000000000000000000000000000000000000081565b60405160ff90911681526020016101b2565b6101e76106b5565b610298610293366004611b26565b61070b565b005b6102986102a8366004611be6565b6108da565b6101e76102bb366004611bff565b60036020526000908152604090205481565b610298610a01565b6101e76102e3366004611bff565b60056020526000908152604090205481565b610298610303366004611c3a565b610a15565b60065460405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101b2565b6101a5610c20565b610298610346366004611bff565b610c2d565b6101ce610359366004611b26565b610e33565b6103bf61036c366004611bff565b73ffffffffffffffffffffffffffffffffffffffff166000908152600760205260409020546fffffffffffffffffffffffffffffffff808216927001000000000000000000000000000000009092041690565b604080519283526020830191909152016101b2565b6102986103e2366004611cce565b610eb8565b6103fa6103f5366004611bff565b611004565b6040516101b29190611d01565b610298610415366004611d4e565b611120565b6101e7610428366004611dc1565b600460209081526000928352604080842090915290825290205481565b610298610453366004611bff565b61144c565b6000805461046590611deb565b80601f016020809104026020016040519081016040528092919081815260200182805461049190611deb565b80156104de5780601f106104b3576101008083540402835291602001916104de565b820191906000526020600020905b8154815290600101906020018083116104c157829003601f168201915b505050505081565b33600081815260046020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259061054e9086815260200190565b60405180910390a35060015b92915050565b606061056c6008611503565b905090565b73ffffffffffffffffffffffffffffffffffffffff831660009081526004602090815260408083203384529091528120547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114610605576105d38382611e6e565b73ffffffffffffffffffffffffffffffffffffffff861660009081526004602090815260408083203384529091529020555b73ffffffffffffffffffffffffffffffffffffffff85166000908152600360205260408120805485929061063a908490611e6e565b909155505073ffffffffffffffffffffffffffffffffffffffff808516600081815260036020526040908190208054870190555190918716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906106a29087815260200190565b60405180910390a3506001949350505050565b60007f000000000000000000000000000000000000000000000000000000000000000046146106e65761056c611517565b507f000000000000000000000000000000000000000000000000000000000000000090565b33600090815260076020526040902080546fffffffffffffffffffffffffffffffff168061079a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f494e56414c49445f464143494c495441544f520000000000000000000000000060448201526064015b60405180910390fd5b815470010000000000000000000000000000000090046fffffffffffffffffffffffffffffffff1660006107ce8583611e85565b90508083101561085f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152602060048201526024808201527f464143494c495441544f525f4255434b45545f43415041434954595f4558434560448201527f45444544000000000000000000000000000000000000000000000000000000006064820152608401610791565b83546fffffffffffffffffffffffffffffffff80831670010000000000000000000000000000000002911617845561089786866115b1565b604080518381526020810183905233917facb6de9209e4f34974cb165eef5738f0cf0b4ea9819ef30d30f0f7d81272ab82910160405180910390a2505050505050565b80610941576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f494e56414c49445f4255524e5f414d4f554e54000000000000000000000000006044820152606401610791565b336000908152600760205260408120805490917001000000000000000000000000000000009091046fffffffffffffffffffffffffffffffff16906109868483611e6e565b83546fffffffffffffffffffffffffffffffff80831670010000000000000000000000000000000002911617845590506109c0338561162a565b604080518381526020810183905233917facb6de9209e4f34974cb165eef5738f0cf0b4ea9819ef30d30f0f7d81272ab82910160405180910390a250505050565b610a096116b8565b610a136000611739565b565b610a1d6116b8565b73ffffffffffffffffffffffffffffffffffffffff84166000908152600760205260409020600181018054610a5190611deb565b159050610aba576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f464143494c495441544f525f414c52454144595f4558495354530000000000006044820152606401610791565b82610b21576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600d60248201527f494e56414c49445f4c4142454c000000000000000000000000000000000000006044820152606401610791565b610b2f600182018585611992565b5080547fffffffffffffffffffffffffffffffff00000000000000000000000000000000166fffffffffffffffffffffffffffffffff8316178155610b756008866117b0565b508383604051602001610b89929190611e9d565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529082905280516020918201206fffffffffffffffffffffffffffffffff851683529173ffffffffffffffffffffffffffffffffffffffff8816917fdabd62626ada7b13e299389e94d768b294e5e24285ed2ffa1e5cd447c99c54ad910160405180910390a35050505050565b6001805461046590611deb565b610c356116b8565b73ffffffffffffffffffffffffffffffffffffffff811660009081526007602052604081206001018054610c6890611deb565b905011610cd1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f464143494c495441544f525f444f45535f4e4f545f45584953540000000000006044820152606401610791565b73ffffffffffffffffffffffffffffffffffffffff811660009081526007602052604090205470010000000000000000000000000000000090046fffffffffffffffffffffffffffffffff1615610daa576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602160248201527f464143494c495441544f525f4255434b45545f4c4556454c5f4e4f545f5a455260448201527f4f000000000000000000000000000000000000000000000000000000000000006064820152608401610791565b73ffffffffffffffffffffffffffffffffffffffff8116600090815260076020526040812081815590610de06001830182611a34565b50610dee90506008826117d2565b5060405173ffffffffffffffffffffffffffffffffffffffff8216907fa8fe5b89f35f2ebd6f3f95a7ef215f4bd89179e10c101073ae76cffad14734cf90600090a250565b33600090815260036020526040812080548391908390610e54908490611e6e565b909155505073ffffffffffffffffffffffffffffffffffffffff8316600081815260036020526040908190208054850190555133907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061054e9086815260200190565b610ec06116b8565b73ffffffffffffffffffffffffffffffffffffffff821660009081526007602052604081206001018054610ef390611deb565b905011610f5c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f464143494c495441544f525f444f45535f4e4f545f45584953540000000000006044820152606401610791565b73ffffffffffffffffffffffffffffffffffffffff821660008181526007602090815260409182902080547fffffffffffffffffffffffffffffffff0000000000000000000000000000000081166fffffffffffffffffffffffffffffffff878116918217909355845192909116808352928201529092917fc795c0a4927c3b6645e4e49a5a519af936b3c1c0e4c323a3f7251063f3f4bb0e910160405180910390a2505050565b60408051606080820183526000808352602080840182905283850183905273ffffffffffffffffffffffffffffffffffffffff8616825260078152908490208451928301855280546fffffffffffffffffffffffffffffffff8082168552700100000000000000000000000000000000909104169183019190915260018101805493949293919284019161109790611deb565b80601f01602080910402602001604051908101604052809291908181526020018280546110c390611deb565b80156111105780601f106110e557610100808354040283529160200191611110565b820191906000526020600020905b8154815290600101906020018083116110f357829003601f168201915b5050505050815250509050919050565b4284101561118a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601760248201527f5045524d49545f444541444c494e455f455850495245440000000000000000006044820152606401610791565b60006111946106b5565b73ffffffffffffffffffffffffffffffffffffffff89811660008181526005602090815260409182902080546001810190915582517f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98184015280840194909452938c166060840152608083018b905260a083019390935260c08083018a90528151808403909101815260e0830190915280519201919091207f190100000000000000000000000000000000000000000000000000000000000061010083015261010282019290925261012281019190915261014201604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120600080855291840180845281905260ff88169284019290925260608301869052608083018590529092509060019060a0016020604051602081039080840390855afa1580156112f3573d6000803e3d6000fd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015191505073ffffffffffffffffffffffffffffffffffffffff81161580159061136e57508873ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16145b6113d4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f494e56414c49445f5349474e45520000000000000000000000000000000000006044820152606401610791565b73ffffffffffffffffffffffffffffffffffffffff90811660009081526004602090815260408083208b8516808552908352928190208a905551898152919350918a16917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a350505050505050565b6114546116b8565b73ffffffffffffffffffffffffffffffffffffffff81166114f7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610791565b61150081611739565b50565b60606000611510836117f4565b9392505050565b60007f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60006040516115499190611ead565b6040805191829003822060208301939093528101919091527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660608201524660808201523060a082015260c00160405160208183030381529060405280519060200120905090565b80600260008282546115c39190611e85565b909155505073ffffffffffffffffffffffffffffffffffffffff82166000818152600360209081526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91015b60405180910390a35050565b73ffffffffffffffffffffffffffffffffffffffff82166000908152600360205260408120805483929061165f908490611e6e565b909155505060028054829003905560405181815260009073ffffffffffffffffffffffffffffffffffffffff8416907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200161161e565b60065473ffffffffffffffffffffffffffffffffffffffff163314610a13576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610791565b6006805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60006115108373ffffffffffffffffffffffffffffffffffffffff8416611850565b60006115108373ffffffffffffffffffffffffffffffffffffffff841661189f565b60608160000180548060200260200160405190810160405280929190818152602001828054801561184457602002820191906000526020600020905b815481526020019060010190808311611830575b50505050509050919050565b60008181526001830160205260408120546118975750815460018181018455600084815260208082209093018490558454848252828601909352604090209190915561055a565b50600061055a565b600081815260018301602052604081205480156119885760006118c3600183611e6e565b85549091506000906118d790600190611e6e565b905081811461193c5760008660000182815481106118f7576118f7611f80565b906000526020600020015490508087600001848154811061191a5761191a611f80565b6000918252602080832090910192909255918252600188019052604090208390555b855486908061194d5761194d611faf565b60019003818190600052602060002001600090559055856001016000868152602001908152602001600020600090556001935050505061055a565b600091505061055a565b82805461199e90611deb565b90600052602060002090601f0160209004810192826119c05760008555611a24565b82601f106119f7578280017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00823516178555611a24565b82800160010185558215611a24579182015b82811115611a24578235825591602001919060010190611a09565b50611a30929150611a6a565b5090565b508054611a4090611deb565b6000825580601f10611a50575050565b601f01602090049060005260206000209081019061150091905b5b80821115611a305760008155600101611a6b565b6000815180845260005b81811015611aa557602081850181015186830182015201611a89565b81811115611ab7576000602083870101525b50601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b6020815260006115106020830184611a7f565b803573ffffffffffffffffffffffffffffffffffffffff81168114611b2157600080fd5b919050565b60008060408385031215611b3957600080fd5b611b4283611afd565b946020939093013593505050565b6020808252825182820181905260009190848201906040850190845b81811015611b9e57835173ffffffffffffffffffffffffffffffffffffffff1683529284019291840191600101611b6c565b50909695505050505050565b600080600060608486031215611bbf57600080fd5b611bc884611afd565b9250611bd660208501611afd565b9150604084013590509250925092565b600060208284031215611bf857600080fd5b5035919050565b600060208284031215611c1157600080fd5b61151082611afd565b80356fffffffffffffffffffffffffffffffff81168114611b2157600080fd5b60008060008060608587031215611c5057600080fd5b611c5985611afd565b9350602085013567ffffffffffffffff80821115611c7657600080fd5b818701915087601f830112611c8a57600080fd5b813581811115611c9957600080fd5b886020828501011115611cab57600080fd5b602083019550809450505050611cc360408601611c1a565b905092959194509250565b60008060408385031215611ce157600080fd5b611cea83611afd565b9150611cf860208401611c1a565b90509250929050565b6020815260006fffffffffffffffffffffffffffffffff808451166020840152806020850151166040840152506040830151606080840152611d466080840182611a7f565b949350505050565b600080600080600080600060e0888a031215611d6957600080fd5b611d7288611afd565b9650611d8060208901611afd565b95506040880135945060608801359350608088013560ff81168114611da457600080fd5b9699959850939692959460a0840135945060c09093013592915050565b60008060408385031215611dd457600080fd5b611ddd83611afd565b9150611cf860208401611afd565b600181811c90821680611dff57607f821691505b60208210811415611e39577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600082821015611e8057611e80611e3f565b500390565b60008219821115611e9857611e98611e3f565b500190565b8183823760009101908152919050565b600080835481600182811c915080831680611ec957607f831692505b6020808410821415611f02577f4e487b710000000000000000000000000000000000000000000000000000000086526022600452602486fd5b818015611f165760018114611f4557611f72565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00861689528489019650611f72565b60008a81526020902060005b86811015611f6a5781548b820152908501908301611f51565b505084890196505b509498975050505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fdfea2646970667358221220a6dab2fc8078c8d8d8865a9fbd24b0c54c6ea3f77af90654d7588e777b91feb164736f6c634300080a0033