21 txs
34 calls
constructor
constructor(address _ripeToken, address _distributor, address _initialOwner)
functions
auctionCreated
viewfunction auctionCreated(uint256) view returns (bool)
auctions
viewfunction auctions(uint256) view returns (uint256 distributionId, uint256 amount, uint256 duration, uint256 firstBidTime, uint256 reservePrice, address bidder, bool settled)
currentAuctionId
viewfunction currentAuctionId() view returns (uint256)
distributor
viewfunction distributor() view returns (address)
feeRecipient
viewfunction feeRecipient() view returns (address)
getAuction
viewfunction getAuction(uint256 distributionId) view returns (tuple)
getAuctionCount
viewfunction getAuctionCount() view returns (uint256)
getTimeRemaining
viewfunction getTimeRemaining(uint256 distributionId) view returns (uint256)
isAuctionActive
viewfunction isAuctionActive(uint256 distributionId) view returns (bool)
MAX_AUCTION_DURATION
viewfunction MAX_AUCTION_DURATION() view returns (uint256)
MIN_AUCTION_DURATION
viewfunction MIN_AUCTION_DURATION() view returns (uint256)
minBidIncrementPercentage
viewfunction minBidIncrementPercentage() view returns (uint8)
minReservePrice
viewfunction minReservePrice() view returns (uint256)
owner
viewfunction owner() view returns (address)
ripeToken
viewfunction ripeToken() view returns (address)
timeBuffer
viewfunction timeBuffer() view returns (uint256)
createAuction
nonpayablefunction createAuction() returns (uint256)
createAuctionWithBid
nonpayablefunction createAuctionWithBid(uint256 amount) returns (uint256)
createBid
nonpayablefunction createBid(uint256 distributionId, uint256 amount)
recoverTokens
nonpayablefunction recoverTokens(address token, uint256 amount)
renounceOwnership
nonpayablefunction renounceOwnership()
setFeeRecipient
nonpayablefunction setFeeRecipient(address _feeRecipient)
setMinBidIncrementPercentage
nonpayablefunction setMinBidIncrementPercentage(uint8 _percentage)
setMinReservePrice
nonpayablefunction setMinReservePrice(uint256 _price)
setTimeBuffer
nonpayablefunction setTimeBuffer(uint256 _timeBuffer)
settleAuction
nonpayablefunction settleAuction(uint256 distributionId)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
events
AuctionBid
event AuctionBid(uint256 indexed distributionId, address indexed bidder, uint256 amount, bool firstBid, bool extended)
AuctionCreated
event AuctionCreated(uint256 indexed distributionId, uint256 duration, uint256 reservePrice)
AuctionDurationExtended
event AuctionDurationExtended(uint256 indexed distributionId, uint256 duration)
AuctionExecuted
event AuctionExecuted(uint256 indexed distributionId, address indexed executor)
AuctionSettled
event AuctionSettled(uint256 indexed distributionId, address indexed winner, uint256 amount)
FeeRecipientUpdated
event FeeRecipientUpdated(address indexed oldRecipient, address indexed newRecipient)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
errors
AuctionAlreadyActive
error AuctionAlreadyActive()
AuctionAlreadyExists
error AuctionAlreadyExists()
AuctionAlreadySettled
error AuctionAlreadySettled()
AuctionDoesNotExist
error AuctionDoesNotExist()
AuctionExpired
error AuctionExpired()
AuctionNotActive
error AuctionNotActive()
AuctionNotEnded
error AuctionNotEnded()
BidTooLow
error BidTooLow()
DistributionNotReady
error DistributionNotReady()
InvalidAddress
error InvalidAddress()
TransferFailed
error TransferFailed()
creation bytecode
0x60c06040526103846002556005600360006101000a81548160ff021916908360ff16021790555069021e19e0c9bab24000006004553480156200004157600080fd5b506040516200316b3803806200316b833981810160405281019062000067919062000287565b620000876200007b6200015160201b60201c565b6200015960201b60201c565b600180819055506200009f816200015960201b60201c565b8273ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff16815250508173ffffffffffffffffffffffffffffffffffffffff1660a08173ffffffffffffffffffffffffffffffffffffffff168152505080600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505050620002e3565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200024f8262000222565b9050919050565b620002618162000242565b81146200026d57600080fd5b50565b600081519050620002818162000256565b92915050565b600080600060608486031215620002a357620002a26200021d565b5b6000620002b38682870162000270565b9350506020620002c68682870162000270565b9250506040620002d98682870162000270565b9150509250925092565b60805160a051612e236200034860003960008181610850015281816108ee015281816114b10152818161182701526118c50152600081816105500152818161062e01528181610a130152818161127e015281816112fe01526115420152612e236000f3fe608060405234801561001057600080fd5b50600436106101a95760003560e01c80638cd42991116100f9578063dc45c7b511610097578063e74b981b11610071578063e74b981b146104b2578063ec91f2a4146104ce578063f2fde38b146104ec578063f581144714610508576101a9565b8063dc45c7b514610448578063e4d20c1d14610466578063e71f7b1514610482576101a9565b8063b7751c71116100d3578063b7751c71146103d2578063bfe10928146103ee578063c2f50a7a1461040c578063c44e66401461042a576101a9565b80638cd42991146103665780638da5cb5b14610396578063b296024d146103b4576101a9565b80633fb35178116101665780637120334b116101405780637120334b146102f2578063715018a61461030e57806378bd79351461031857806383af0a1f14610348576101a9565b80633fb3517814610280578063469048401461029e578063571a26a0146102bc576101a9565b8063047fc435146101ae578063069c9fae146101de5780630c0b86ca146101fa5780632d8528fc146102185780632e9936111461024857806336ebdb3814610264575b600080fd5b6101c860048036038101906101c391906121e2565b610526565b6040516101d5919061222a565b60405180910390f35b6101f860048036038101906101f391906122a3565b610546565b005b61020261076a565b60405161020f91906122f2565b60405180910390f35b610232600480360381019061022d91906121e2565b610770565b60405161023f91906122f2565b60405180910390f35b610262600480360381019061025d91906121e2565b610c2e565b005b61027e60048036038101906102799190612346565b610dff565b005b610288610e25565b60405161029591906122f2565b60405180910390f35b6102a6610e2c565b6040516102b39190612382565b60405180910390f35b6102d660048036038101906102d191906121e2565b610e52565b6040516102e9979695949392919061239d565b60405180910390f35b61030c600480360381019061030791906121e2565b610ec1565b005b610316610ed3565b005b610332600480360381019061032d91906121e2565b610ee7565b60405161033f91906124c7565b60405180910390f35b610350610fb7565b60405161035d91906122f2565b60405180910390f35b610380600480360381019061037b91906121e2565b610fbd565b60405161038d91906122f2565b60405180910390f35b61039e61103b565b6040516103ab9190612382565b60405180910390f35b6103bc611064565b6040516103c991906124f1565b60405180910390f35b6103ec60048036038101906103e7919061250c565b611077565b005b6103f66114af565b60405161040391906125ab565b60405180910390f35b6104146114d3565b60405161042191906122f2565b60405180910390f35b6104326114da565b60405161043f91906122f2565b60405180910390f35b610450611540565b60405161045d91906125e7565b60405180910390f35b610480600480360381019061047b91906121e2565b611564565b005b61049c600480360381019061049791906121e2565b611576565b6040516104a9919061222a565b60405180910390f35b6104cc60048036038101906104c79190612602565b6115f3565b005b6104d6611727565b6040516104e391906122f2565b60405180910390f35b61050660048036038101906105019190612602565b61172d565b005b6105106117b0565b60405161051d91906122f2565b60405180910390f35b60066020528060005260406000206000915054906101000a900460ff1681565b61054e611b28565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361071957600080600190505b600754811161062957600060056000838152602001908152602001600020905060008160000154141580156105ed57508060050160149054906101000a900460ff16155b80156105fd575060008160010154115b1561061557806001015483610612919061265e565b92505b50808061062190612692565b9150506105a9565b5060007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b81526004016106859190612382565b602060405180830381865afa1580156106a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106c691906126ef565b90508282826106d5919061271c565b1015610716576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161070d906127ad565b60405180910390fd5b50505b610766600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16828473ffffffffffffffffffffffffffffffffffffffff16611ba69092919063ffffffff16565b5050565b60075481565b600061077a611c2c565b6000610784611c7b565b90506000819050600060075411801561081557503073ffffffffffffffffffffffffffffffffffffffff1663e71f7b156007546040518263ffffffff1660e01b81526004016107d391906122f2565b602060405180830381865afa1580156107f0573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061081491906127f9565b5b1561084c576040517f9cebe16a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166387d3297a836040518263ffffffff1660e01b81526004016108a791906122f2565b602060405180830381865afa1580156108c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108e891906126ef565b905060007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663b2bd78a9846040518263ffffffff1660e01b815260040161094591906122f2565b602060405180830381865afa158015610962573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061098691906126ef565b9050814210156109c2576040517fe8838b6900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006109cd82611d0b565b9050600454871015610a0b576040517fa0d26eb600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610a583330897f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16611d5f909392919063ffffffff16565b6040518060e0016040528085815260200188815260200182815260200142815260200160045481526020013373ffffffffffffffffffffffffffffffffffffffff1681526020016000151581525060056000878152602001908152602001600020600082015181600001556020820151816001015560408201518160020155606082015181600301556080820151816004015560a08201518160050160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060c08201518160050160146101000a81548160ff02191690831515021790555090505060016006600087815260200190815260200160002060006101000a81548160ff02191690831515021790555084600781905550837fd6eddd1118d71820909c1197aa966dbc15ed6f508554252169cc3d5ccac756ca82600454604051610bbc929190612826565b60405180910390a23373ffffffffffffffffffffffffffffffffffffffff16847fac7b4956ef620044e10f430450c0069d356507570c460567101eebac99165c0a8960016000604051610c119392919061284f565b60405180910390a38495505050505050610c29611de8565b919050565b610c36611c2c565b60006005600083815260200190815260200160002090506000816000015403610c8b576040517fe6759c6700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8060050160149054906101000a900460ff1615610cd4576040517f4f4fee1700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000816003015403610d12576040517f69b8d0fe00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80600201548160030154610d26919061265e565b421015610d5f576040517f6463738900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60018160050160146101000a81548160ff0219169083151502179055508060050160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16827fc9f72b276a388619c6d185d146697036241880c36654b1a3ffdad07c24038d998360010154604051610deb91906122f2565b60405180910390a350610dfc611de8565b50565b610e07611b28565b80600360006101000a81548160ff021916908360ff16021790555050565b6225980681565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60056020528060005260406000206000915090508060000154908060010154908060020154908060030154908060040154908060050160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060050160149054906101000a900460ff16905087565b610ec9611b28565b8060028190555050565b610edb611b28565b610ee56000611df1565b565b610eef612152565b600560008381526020019081526020016000206040518060e001604052908160008201548152602001600182015481526020016002820154815260200160038201548152602001600482015481526020016005820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016005820160149054906101000a900460ff1615151515815250509050919050565b60045481565b600080600560008481526020019081526020016000209050600081600001541480610fec575060008160030154145b15610ffb576000915050611036565b600081600201548260030154611011919061265e565b905080421061102557600092505050611036565b4281611031919061271c565b925050505b919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600360009054906101000a900460ff1681565b61107f611c2c565b600060056000848152602001908152602001600020905060008160000154036110d4576040517fe6759c6700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8060050160149054906101000a900460ff161561111d576040517f4f4fee1700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000816003015414158015611145575080600201548160030154611141919061265e565b4210155b1561117c576040517f04a5e67c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80600401548210156111ba576040517fa0d26eb600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000816001015411156112445760006064600360009054906101000a900460ff1660ff1683600101546111ed9190612886565b6111f791906128f7565b8260010154611206919061265e565b905080831015611242576040517fa0d26eb600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b505b60008160050160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690506000826001015490506112c33330867f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16611d5f909392919063ffffffff16565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16146113435761134282827f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16611ba69092919063ffffffff16565b5b838360010181905550338360050160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000808460030154149050600081156113b05742856003018190555061144b565b600042866002015487600301546113c7919061265e565b6113d1919061271c565b905060025481101561144957600086600201549050816002546113f4919061271c565b816113ff919061265e565b876002018190555060019250887f8fdd260941d3b80e0b9ee888471b99a809d93315f1c2ccd41ac35dbfd64f2269886002015460405161143f91906122f2565b60405180910390a2505b505b3373ffffffffffffffffffffffffffffffffffffffff16877fac7b4956ef620044e10f430450c0069d356507570c460567101eebac99165c0a8885856040516114969392919061284f565b60405180910390a350505050506114ab611de8565b5050565b7f000000000000000000000000000000000000000000000000000000000000000081565b6201518081565b600080600090506000600190505b60408111611538576006600082815260200190815260200160002060009054906101000a900460ff161561152557818061152190612692565b9250505b808061153090612692565b9150506114e8565b508091505090565b7f000000000000000000000000000000000000000000000000000000000000000081565b61156c611b28565b8060048190555050565b6000806005600084815260200190815260200160002090506000816000015414806115af57508060050160149054906101000a900460ff165b156115be5760009150506115ee565b60008160030154036115d45760019150506115ee565b806002015481600301546115e8919061265e565b42109150505b919050565b6115fb611b28565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611661576040517fe6c4247b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167faaebcf1bfa00580e41d966056b48521fa9f202645c86d4ddf28113e617c1b1d360405160405180910390a35050565b60025481565b611735611b28565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036117a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161179b9061299a565b60405180910390fd5b6117ad81611df1565b50565b60006117ba611c2c565b60006117c4611c7b565b905060008190506006600083815260200190815260200160002060009054906101000a900460ff1615611823576040517f04581cc800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166387d3297a836040518263ffffffff1660e01b815260040161187e91906122f2565b602060405180830381865afa15801561189b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118bf91906126ef565b905060007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663b2bd78a9846040518263ffffffff1660e01b815260040161191c91906122f2565b602060405180830381865afa158015611939573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061195d91906126ef565b905081421015611999576040517fe8838b6900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006119a482611d0b565b90506040518060e0016040528085815260200160008152602001828152602001600081526020016004548152602001600073ffffffffffffffffffffffffffffffffffffffff1681526020016000151581525060056000878152602001908152602001600020600082015181600001556020820151816001015560408201518160020155606082015181600301556080820151816004015560a08201518160050160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060c08201518160050160146101000a81548160ff02191690831515021790555090505060016006600087815260200190815260200160002060006101000a81548160ff02191690831515021790555084600781905550837fd6eddd1118d71820909c1197aa966dbc15ed6f508554252169cc3d5ccac756ca82600454604051611b0d929190612826565b60405180910390a28495505050505050611b25611de8565b90565b611b30611eb5565b73ffffffffffffffffffffffffffffffffffffffff16611b4e61103b565b73ffffffffffffffffffffffffffffffffffffffff1614611ba4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b9b90612a06565b60405180910390fd5b565b611c278363a9059cbb60e01b8484604051602401611bc5929190612a26565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050611ebd565b505050565b600260015403611c71576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c6890612a9b565b60405180910390fd5b6002600181905550565b600080600190505b60408111611ccc576006600082815260200190815260200160002060009054906101000a900460ff16611cb95780915050611d08565b8080611cc490612692565b915050611c83565b506040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611cff90612b07565b60405180910390fd5b90565b600080428311611d1c576000611d29565b4283611d28919061271c565b5b9050620151808110611d5257622598068111611d455780611d4a565b622598065b915050611d5a565b620151809150505b919050565b611de2846323b872dd60e01b858585604051602401611d8093929190612b27565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050611ebd565b50505050565b60018081905550565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600033905090565b6000611f1f826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c65648152508573ffffffffffffffffffffffffffffffffffffffff16611f859092919063ffffffff16565b9050600081511480611f41575080806020019051810190611f4091906127f9565b5b611f80576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f7790612bd0565b60405180910390fd5b505050565b6060611f948484600085611f9d565b90509392505050565b606082471015611fe2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fd990612c62565b60405180910390fd5b6000808673ffffffffffffffffffffffffffffffffffffffff16858760405161200b9190612cf3565b60006040518083038185875af1925050503d8060008114612048576040519150601f19603f3d011682016040523d82523d6000602084013e61204d565b606091505b509150915061205e8783838761206a565b92505050949350505050565b606083156120cc5760008351036120c457612084856120df565b6120c3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016120ba90612d56565b60405180910390fd5b5b8290506120d7565b6120d68383612102565b5b949350505050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b6000825111156121155781518083602001fd5b806040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121499190612dcb565b60405180910390fd5b6040518060e001604052806000815260200160008152602001600081526020016000815260200160008152602001600073ffffffffffffffffffffffffffffffffffffffff1681526020016000151581525090565b600080fd5b6000819050919050565b6121bf816121ac565b81146121ca57600080fd5b50565b6000813590506121dc816121b6565b92915050565b6000602082840312156121f8576121f76121a7565b5b6000612206848285016121cd565b91505092915050565b60008115159050919050565b6122248161220f565b82525050565b600060208201905061223f600083018461221b565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061227082612245565b9050919050565b61228081612265565b811461228b57600080fd5b50565b60008135905061229d81612277565b92915050565b600080604083850312156122ba576122b96121a7565b5b60006122c88582860161228e565b92505060206122d9858286016121cd565b9150509250929050565b6122ec816121ac565b82525050565b600060208201905061230760008301846122e3565b92915050565b600060ff82169050919050565b6123238161230d565b811461232e57600080fd5b50565b6000813590506123408161231a565b92915050565b60006020828403121561235c5761235b6121a7565b5b600061236a84828501612331565b91505092915050565b61237c81612265565b82525050565b60006020820190506123976000830184612373565b92915050565b600060e0820190506123b2600083018a6122e3565b6123bf60208301896122e3565b6123cc60408301886122e3565b6123d960608301876122e3565b6123e660808301866122e3565b6123f360a0830185612373565b61240060c083018461221b565b98975050505050505050565b612415816121ac565b82525050565b61242481612265565b82525050565b6124338161220f565b82525050565b60e08201600082015161244f600085018261240c565b506020820151612462602085018261240c565b506040820151612475604085018261240c565b506060820151612488606085018261240c565b50608082015161249b608085018261240c565b5060a08201516124ae60a085018261241b565b5060c08201516124c160c085018261242a565b50505050565b600060e0820190506124dc6000830184612439565b92915050565b6124eb8161230d565b82525050565b600060208201905061250660008301846124e2565b92915050565b60008060408385031215612523576125226121a7565b5b6000612531858286016121cd565b9250506020612542858286016121cd565b9150509250929050565b6000819050919050565b600061257161256c61256784612245565b61254c565b612245565b9050919050565b600061258382612556565b9050919050565b600061259582612578565b9050919050565b6125a58161258a565b82525050565b60006020820190506125c0600083018461259c565b92915050565b60006125d182612578565b9050919050565b6125e1816125c6565b82525050565b60006020820190506125fc60008301846125d8565b92915050565b600060208284031215612618576126176121a7565b5b60006126268482850161228e565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000612669826121ac565b9150612674836121ac565b925082820190508082111561268c5761268b61262f565b5b92915050565b600061269d826121ac565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036126cf576126ce61262f565b5b600182019050919050565b6000815190506126e9816121b6565b92915050565b600060208284031215612705576127046121a7565b5b6000612713848285016126da565b91505092915050565b6000612727826121ac565b9150612732836121ac565b925082820390508181111561274a5761274961262f565b5b92915050565b600082825260208201905092915050565b7f43616e6e6f74207265636f766572206c6f636b65642052495045000000000000600082015250565b6000612797601a83612750565b91506127a282612761565b602082019050919050565b600060208201905081810360008301526127c68161278a565b9050919050565b6127d68161220f565b81146127e157600080fd5b50565b6000815190506127f3816127cd565b92915050565b60006020828403121561280f5761280e6121a7565b5b600061281d848285016127e4565b91505092915050565b600060408201905061283b60008301856122e3565b61284860208301846122e3565b9392505050565b600060608201905061286460008301866122e3565b612871602083018561221b565b61287e604083018461221b565b949350505050565b6000612891826121ac565b915061289c836121ac565b92508282026128aa816121ac565b915082820484148315176128c1576128c061262f565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000612902826121ac565b915061290d836121ac565b92508261291d5761291c6128c8565b5b828204905092915050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000612984602683612750565b915061298f82612928565b604082019050919050565b600060208201905081810360008301526129b381612977565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006129f0602083612750565b91506129fb826129ba565b602082019050919050565b60006020820190508181036000830152612a1f816129e3565b9050919050565b6000604082019050612a3b6000830185612373565b612a4860208301846122e3565b9392505050565b7f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00600082015250565b6000612a85601f83612750565b9150612a9082612a4f565b602082019050919050565b60006020820190508181036000830152612ab481612a78565b9050919050565b7f416c6c2061756374696f6e732068617665206265656e20637265617465640000600082015250565b6000612af1601e83612750565b9150612afc82612abb565b602082019050919050565b60006020820190508181036000830152612b2081612ae4565b9050919050565b6000606082019050612b3c6000830186612373565b612b496020830185612373565b612b5660408301846122e3565b949350505050565b7f5361666545524332303a204552433230206f7065726174696f6e20646964206e60008201527f6f74207375636365656400000000000000000000000000000000000000000000602082015250565b6000612bba602a83612750565b9150612bc582612b5e565b604082019050919050565b60006020820190508181036000830152612be981612bad565b9050919050565b7f416464726573733a20696e73756666696369656e742062616c616e636520666f60008201527f722063616c6c0000000000000000000000000000000000000000000000000000602082015250565b6000612c4c602683612750565b9150612c5782612bf0565b604082019050919050565b60006020820190508181036000830152612c7b81612c3f565b9050919050565b600081519050919050565b600081905092915050565b60005b83811015612cb6578082015181840152602081019050612c9b565b60008484015250505050565b6000612ccd82612c82565b612cd78185612c8d565b9350612ce7818560208601612c98565b80840191505092915050565b6000612cff8284612cc2565b915081905092915050565b7f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000600082015250565b6000612d40601d83612750565b9150612d4b82612d0a565b602082019050919050565b60006020820190508181036000830152612d6f81612d33565b9050919050565b600081519050919050565b6000601f19601f8301169050919050565b6000612d9d82612d76565b612da78185612750565b9350612db7818560208601612c98565b612dc081612d81565b840191505092915050565b60006020820190508181036000830152612de58184612d92565b90509291505056fea26469706673582212209960adc1082826dc533088d35970de80a27ce88f5da6d375786ddf3ed20d0b7464736f6c6343000814003300000000000000000000000088b4658c54a2562eb91662cda98b2a59197b0799000000000000000000000000006f606aa68ffc288af61667ea020788ffd1efea000000000000000000000000cb43078c32423f5348cab5885911c3b5fae217f9