0 txs
88 calls
constructor
No constructor.
functions
_nextStakeId
viewfunction _nextStakeId() view returns (uint256)
_userStakes
viewfunction _userStakes(address, uint256) view returns (uint256)
activeStaked
viewfunction activeStaked() view returns (uint256)
admin
viewfunction admin() view returns (address)
nextTermId
viewfunction nextTermId() view returns (uint256)
owner
viewfunction owner() view returns (address)
proxiableUUID
viewfunction proxiableUUID() view returns (bytes32)
stakesByTerm
viewfunction stakesByTerm(uint256, address) view returns (uint256 id, address user, uint256 amount, uint256 startTime, uint256 endTime, uint256 aprBps, uint256 termId, uint256 total)
stakingToken
viewfunction stakingToken() view returns (address)
terms
viewfunction terms(uint256) view returns (uint256 duration, uint256 aprBps, bool exists, uint256 totalStaked, uint256 activeStaked, uint256 fee)
totalFee
viewfunction totalFee() view returns (uint256)
totalStaked
viewfunction totalStaked() view returns (uint256)
addTerm
nonpayablefunction addTerm(uint256 duration, uint256 aprBps, uint256 fee) returns (uint256 termId)
initialize
nonpayablefunction initialize(address _token, uint256[3][] _terms)
renounceOwnership
nonpayablefunction renounceOwnership()
stake
nonpayablefunction stake(uint256 amount, uint256 termId)
transferOwnership
nonpayablefunction transferOwnership(address newOwner)
unstakeFeeWithdraw
nonpayablefunction unstakeFeeWithdraw()
updateAdmin
nonpayablefunction updateAdmin(address _admin)
updateTerm
nonpayablefunction updateTerm(uint256 termId, uint256 newDuration, uint256 newAprBps, uint256 fee)
upgradeTo
nonpayablefunction upgradeTo(address newImplementation)
upgradeToAndCall
payablefunction upgradeToAndCall(address newImplementation, bytes data) payable
withdraw
nonpayablefunction withdraw(uint256 termId)
events
AdminChanged
event AdminChanged(address previousAdmin, address newAdmin)
BeaconUpgraded
event BeaconUpgraded(address indexed beacon)
Deposited
event Deposited(address indexed user, uint256 termId, uint256 amount)
Initialized
event Initialized(uint8 version)
OwnershipTransferred
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner)
TermAdded
event TermAdded(uint256 termId, uint256 duration, uint256 aprBps)
TermUpdated
event TermUpdated(uint256 termId, uint256 oldDuration, uint256 newDuration, uint256 oldApr, uint256 newApr)
Upgraded
event Upgraded(address indexed implementation)
Withdraw
event Withdraw(address indexed user, uint256 indexed stakeId, uint256 amount)
errors
No errors.
creation bytecode
0x60a06040523073ffffffffffffffffffffffffffffffffffffffff1660809073ffffffffffffffffffffffffffffffffffffffff1681525034801561004357600080fd5b50608051613bc261007b600039600081816108810152818161090f01528181610a6c01528181610afa0152610baa0152613bc26000f3fe6080604052600436106101405760003560e01c8063817b1cd2116100b6578063c0aa0e8a1161006f578063c0aa0e8a1461041e578063c1163fdc14610460578063de7f0a5c14610489578063e2f273bd146104b4578063f2fde38b146104dd578063f851a4401461050657610140565b8063817b1cd2146102f35780638cd704d61461031e5780638da5cb5b146103495780639c173b5d14610374578063b0de44861461039d578063ba6c4eab146103e157610140565b80634da33cde116101085780634da33cde1461022a5780634f1ef2861461024157806352d1902d1461025d578063715018a61461028857806372f702f31461029f5780637b0472f0146102ca57610140565b806304619b98146101455780631df4ccfc146101825780632e1a7d4d146101ad578063364bf327146101d65780633659cfe614610201575b600080fd5b34801561015157600080fd5b5061016c600480360381019061016791906123f1565b610531565b6040516101799190612440565b60405180910390f35b34801561018e57600080fd5b50610197610562565b6040516101a49190612440565b60405180910390f35b3480156101b957600080fd5b506101d460048036038101906101cf919061245b565b610569565b005b3480156101e257600080fd5b506101eb610879565b6040516101f89190612440565b60405180910390f35b34801561020d57600080fd5b5061022860048036038101906102239190612488565b61087f565b005b34801561023657600080fd5b5061023f610a07565b005b61025b600480360381019061025691906125fb565b610a6a565b005b34801561026957600080fd5b50610272610ba6565b60405161027f9190612670565b60405180910390f35b34801561029457600080fd5b5061029d610c5f565b005b3480156102ab57600080fd5b506102b4610c73565b6040516102c191906126ea565b60405180910390f35b3480156102d657600080fd5b506102f160048036038101906102ec9190612705565b610c99565b005b3480156102ff57600080fd5b506103086110c3565b6040516103159190612440565b60405180910390f35b34801561032a57600080fd5b506103336110ca565b6040516103409190612440565b60405180910390f35b34801561035557600080fd5b5061035e6110d1565b60405161036b9190612754565b60405180910390f35b34801561038057600080fd5b5061039b600480360381019061039691906128e8565b6110fb565b005b3480156103a957600080fd5b506103c460048036038101906103bf9190612944565b6114b7565b6040516103d8989796959493929190612984565b60405180910390f35b3480156103ed57600080fd5b5061040860048036038101906104039190612a02565b61152d565b6040516104159190612440565b60405180910390f35b34801561042a57600080fd5b506104456004803603810190610440919061245b565b6116b2565b60405161045796959493929190612a70565b60405180910390f35b34801561046c57600080fd5b5061048760048036038101906104829190612ad1565b6116fb565b005b34801561049557600080fd5b5061049e6117d4565b6040516104ab9190612440565b60405180910390f35b3480156104c057600080fd5b506104db60048036038101906104d69190612488565b6117da565b005b3480156104e957600080fd5b5061050460048036038101906104ff9190612488565b611827565b005b34801561051257600080fd5b5061051b6118aa565b6040516105289190612754565b60405180910390f35b60ff602052816000526040600020818154811061054d57600080fd5b90600052602060002001600091509150505481565b6101045481565b600160c954036105ae576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016105a590612b95565b60405180910390fd5b600160c9819055506000610100600083815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002090503373ffffffffffffffffffffffffffffffffffffffff168160010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461069d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161069490612c01565b60405180910390fd5b60008160020154116106e4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016106db90612c6d565b60405180910390fd5b600060fc6000848152602001908152602001600020905060008260040154421015610713578160050154610716565b60005b90506000836002015490506000620186a083836107339190612cbc565b61073d9190612d2d565b90506000818361074d9190612d5e565b90506000866002018190555081610104600082825461076c9190612d92565b9250508190555082610103541015610785576000610795565b82610103546107949190612d5e565b5b6101038190555082856004015410156107af5760006107c0565b8285600401546107bf9190612d5e565b5b8560040181905550610815338260fb60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166118d19092919063ffffffff16565b85600001543373ffffffffffffffffffffffffffffffffffffffff167ff279e6a1f5e320cca91135676d9cb6e44ca8a08c0b88342bcdb1144f6511b568836040516108609190612440565b60405180910390a3505050505050600260c98190555050565b60fe5481565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff160361090d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161090490612e38565b60405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1661094c611957565b73ffffffffffffffffffffffffffffffffffffffff16146109a2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161099990612eca565b60405180910390fd5b6109ab816119ae565b610a0481600067ffffffffffffffff8111156109ca576109c96124d0565b5b6040519080825280601f01601f1916602001820160405280156109fc5781602001600182028036833780820191505090505b5060006119b9565b50565b610a0f611b27565b610a5f336101045460fb60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166118d19092919063ffffffff16565b600061010481905550565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff1603610af8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610aef90612e38565b60405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16610b37611957565b73ffffffffffffffffffffffffffffffffffffffff1614610b8d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b8490612eca565b60405180910390fd5b610b96826119ae565b610ba2828260016119b9565b5050565b60007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff1614610c36576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c2d90612f5c565b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc60001b905090565b610c67611b27565b610c716000611ba5565b565b60fb60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600160c95403610cde576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610cd590612b95565b60405180910390fd5b600160c98190555060008211610d29576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d2090612fc8565b60405180910390fd5b600060fc60008381526020019081526020016000206040518060c001604052908160008201548152602001600182015481526020016002820160009054906101000a900460ff16151515158152602001600382015481526020016004820154815260200160058201548152505090508060400151610ddc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dd390613034565b60405180910390fd5b6000610100600084815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000209050600081600201541115610e855742816004015411610e84576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e7b906130a0565b60405180910390fd5b5b610ed433308660fb60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16611c6b909392919063ffffffff16565b6000816002015403610fe6576000610100600085815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020905060fe6000815480929190610f48906130c0565b919050558160000181905550338160010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550848160020181905550848160070181905550428160030181905550826000015142610fc29190612d92565b8160040181905550826020015181600501819055508381600601819055505061101d565b83816002016000828254610ffa9190612d92565b92505081905550838160070160008282546110159190612d92565b925050819055505b83826060018181525050838260800181815250508361010260008282546110449190612d92565b9250508190555083610103600082825461105e9190612d92565b925050819055503373ffffffffffffffffffffffffffffffffffffffff167f73a19dd210f1a7f902193214c0ee91dd35ee5b4d920cba8d519eca65a7b488ca84866040516110ad929190613108565b60405180910390a25050600260c9819055505050565b6101025481565b6101035481565b6000603360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008060019054906101000a900460ff1615905080801561112c5750600160008054906101000a900460ff1660ff16105b80611159575061113b30611cf4565b1580156111585750600160008054906101000a900460ff1660ff16145b5b611198576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161118f906131a3565b60405180910390fd5b60016000806101000a81548160ff021916908360ff16021790555080156111d5576001600060016101000a81548160ff0219169083151502179055505b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611244576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161123b9061320f565b60405180910390fd5b61124c611d17565b611254611d70565b61125c611dc1565b8260fb60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160fe81905550600160fd819055503361010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060005b8251811015611458576040518060c001604052808483815181106113195761131861322f565b5b60200260200101516000600381106113345761133361322f565b5b602002015181526020018483815181106113515761135061322f565b5b602002602001015160016003811061136c5761136b61322f565b5b6020020151815260200160011515815260200160008152602001600081526020018483815181106113a05761139f61322f565b5b60200260200101516002600381106113bb576113ba61322f565b5b602002015181525060fc600060fd548152602001908152602001600020600082015181600001556020820151816001015560408201518160020160006101000a81548160ff021916908315150217905550606082015181600301556080820151816004015560a0820151816005015590505060fd6000815480929190611440906130c0565b91905055508080611450906130c0565b9150506112f2565b5080156114b25760008060016101000a81548160ff0219169083151502179055507f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249860016040516114a991906132a6565b60405180910390a15b505050565b610100602052816000526040600020602052806000526040600020600091509150508060000154908060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060020154908060030154908060040154908060050154908060060154908060070154905088565b6000611537611b27565b6000841161157a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115719061330d565b60405180910390fd5b600083116115bd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115b490613379565b60405180910390fd5b60fd60008154809291906115d0906130c0565b9190505590506040518060c0016040528085815260200184815260200160011515815260200160008152602001600081526020018381525060fc6000838152602001908152602001600020600082015181600001556020820151816001015560408201518160020160006101000a81548160ff021916908315150217905550606082015181600301556080820151816004015560a082015181600501559050507f93e1552220a7a27f17b07083ae1c0e8db4e24ae7d1688a16268a485546ac60328185856040516116a393929190613399565b60405180910390a19392505050565b60fc6020528060005260406000206000915090508060000154908060010154908060020160009054906101000a900460ff16908060030154908060040154908060050154905086565b611703611b27565b600060fc600086815260200190815260200160002090508060020160009054906101000a900460ff1661176b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117629061341c565b60405180910390fd5b8381600001819055508281600101819055508181600501819055507f3f474b99c496cd8a749225f749ca5f8db46b9e6eaf290f00568a3e5c47219b32858260000154868460010154876040516117c595949392919061343c565b60405180910390a15050505050565b60fd5481565b6117e2611b27565b8061010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b61182f611b27565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff160361189e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161189590613501565b60405180910390fd5b6118a781611ba5565b50565b61010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6119528363a9059cbb60e01b84846040516024016118f0929190613521565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050611e1a565b505050565b60006119857f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc60001b611ee2565b60000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6119b6611b27565b50565b6119e57f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd914360001b611eec565b60000160009054906101000a900460ff1615611a0957611a0483611ef6565b611b22565b8273ffffffffffffffffffffffffffffffffffffffff166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015611a7157506040513d601f19601f82011682018060405250810190611a6e9190613576565b60015b611ab0576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611aa790613615565b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc60001b8114611b15576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b0c906136a7565b60405180910390fd5b50611b21838383611faf565b5b505050565b611b2f611fdb565b73ffffffffffffffffffffffffffffffffffffffff16611b4d6110d1565b73ffffffffffffffffffffffffffffffffffffffff1614611ba3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b9a90613713565b60405180910390fd5b565b6000603360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081603360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b611cee846323b872dd60e01b858585604051602401611c8c93929190613733565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff8381831617835250505050611e1a565b50505050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b600060019054906101000a900460ff16611d66576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d5d906137dc565b60405180910390fd5b611d6e611fe3565b565b600060019054906101000a900460ff16611dbf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611db6906137dc565b60405180910390fd5b565b600060019054906101000a900460ff16611e10576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e07906137dc565b60405180910390fd5b611e18612044565b565b6000611e7c826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c65648152508573ffffffffffffffffffffffffffffffffffffffff1661209d9092919063ffffffff16565b9050600081511480611e9e575080806020019051810190611e9d9190613828565b5b611edd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ed4906138c7565b60405180910390fd5b505050565b6000819050919050565b6000819050919050565b611eff81611cf4565b611f3e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f3590613959565b60405180910390fd5b80611f6b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc60001b611ee2565b60000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b611fb8836120b5565b600082511180611fc55750805b15611fd657611fd48383612104565b505b505050565b600033905090565b600060019054906101000a900460ff16612032576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612029906137dc565b60405180910390fd5b61204261203d611fdb565b611ba5565b565b600060019054906101000a900460ff16612093576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161208a906137dc565b60405180910390fd5b600260c981905550565b60606120ac8484600085612131565b90509392505050565b6120be81611ef6565b8073ffffffffffffffffffffffffffffffffffffffff167fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b60405160405180910390a250565b60606121298383604051806060016040528060278152602001613b66602791396121fe565b905092915050565b606082471015612176576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161216d906139eb565b60405180910390fd5b6000808673ffffffffffffffffffffffffffffffffffffffff16858760405161219f9190613a7c565b60006040518083038185875af1925050503d80600081146121dc576040519150601f19603f3d011682016040523d82523d6000602084013e6121e1565b606091505b50915091506121f287838387612284565b92505050949350505050565b60606000808573ffffffffffffffffffffffffffffffffffffffff16856040516122289190613a7c565b600060405180830381855af49150503d8060008114612263576040519150601f19603f3d011682016040523d82523d6000602084013e612268565b606091505b509150915061227986838387612284565b925050509392505050565b606083156122e65760008351036122de5761229e85611cf4565b6122dd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122d490613adf565b60405180910390fd5b5b8290506122f1565b6122f083836122f9565b5b949350505050565b60008251111561230c5781518083602001fd5b806040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123409190613b43565b60405180910390fd5b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006123888261235d565b9050919050565b6123988161237d565b81146123a357600080fd5b50565b6000813590506123b58161238f565b92915050565b6000819050919050565b6123ce816123bb565b81146123d957600080fd5b50565b6000813590506123eb816123c5565b92915050565b6000806040838503121561240857612407612353565b5b6000612416858286016123a6565b9250506020612427858286016123dc565b9150509250929050565b61243a816123bb565b82525050565b60006020820190506124556000830184612431565b92915050565b60006020828403121561247157612470612353565b5b600061247f848285016123dc565b91505092915050565b60006020828403121561249e5761249d612353565b5b60006124ac848285016123a6565b91505092915050565b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b612508826124bf565b810181811067ffffffffffffffff82111715612527576125266124d0565b5b80604052505050565b600061253a612349565b905061254682826124ff565b919050565b600067ffffffffffffffff821115612566576125656124d0565b5b61256f826124bf565b9050602081019050919050565b82818337600083830152505050565b600061259e6125998461254b565b612530565b9050828152602081018484840111156125ba576125b96124ba565b5b6125c584828561257c565b509392505050565b600082601f8301126125e2576125e16124b5565b5b81356125f284826020860161258b565b91505092915050565b6000806040838503121561261257612611612353565b5b6000612620858286016123a6565b925050602083013567ffffffffffffffff81111561264157612640612358565b5b61264d858286016125cd565b9150509250929050565b6000819050919050565b61266a81612657565b82525050565b60006020820190506126856000830184612661565b92915050565b6000819050919050565b60006126b06126ab6126a68461235d565b61268b565b61235d565b9050919050565b60006126c282612695565b9050919050565b60006126d4826126b7565b9050919050565b6126e4816126c9565b82525050565b60006020820190506126ff60008301846126db565b92915050565b6000806040838503121561271c5761271b612353565b5b600061272a858286016123dc565b925050602061273b858286016123dc565b9150509250929050565b61274e8161237d565b82525050565b60006020820190506127696000830184612745565b92915050565b600067ffffffffffffffff82111561278a576127896124d0565b5b602082029050602081019050919050565b600080fd5b600067ffffffffffffffff8211156127bb576127ba6124d0565b5b602082029050919050565b60006127d96127d4846127a0565b612530565b905080602084028301858111156127f3576127f261279b565b5b835b8181101561281c578061280888826123dc565b8452602084019350506020810190506127f5565b5050509392505050565b600082601f83011261283b5761283a6124b5565b5b60036128488482856127c6565b91505092915050565b600061286461285f8461276f565b612530565b905080838252602082019050606084028301858111156128875761288661279b565b5b835b818110156128b0578061289c8882612826565b845260208401935050606081019050612889565b5050509392505050565b600082601f8301126128cf576128ce6124b5565b5b81356128df848260208601612851565b91505092915050565b600080604083850312156128ff576128fe612353565b5b600061290d858286016123a6565b925050602083013567ffffffffffffffff81111561292e5761292d612358565b5b61293a858286016128ba565b9150509250929050565b6000806040838503121561295b5761295a612353565b5b6000612969858286016123dc565b925050602061297a858286016123a6565b9150509250929050565b60006101008201905061299a600083018b612431565b6129a7602083018a612745565b6129b46040830189612431565b6129c16060830188612431565b6129ce6080830187612431565b6129db60a0830186612431565b6129e860c0830185612431565b6129f560e0830184612431565b9998505050505050505050565b600080600060608486031215612a1b57612a1a612353565b5b6000612a29868287016123dc565b9350506020612a3a868287016123dc565b9250506040612a4b868287016123dc565b9150509250925092565b60008115159050919050565b612a6a81612a55565b82525050565b600060c082019050612a856000830189612431565b612a926020830188612431565b612a9f6040830187612a61565b612aac6060830186612431565b612ab96080830185612431565b612ac660a0830184612431565b979650505050505050565b60008060008060808587031215612aeb57612aea612353565b5b6000612af9878288016123dc565b9450506020612b0a878288016123dc565b9350506040612b1b878288016123dc565b9250506060612b2c878288016123dc565b91505092959194509250565b600082825260208201905092915050565b7f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00600082015250565b6000612b7f601f83612b38565b9150612b8a82612b49565b602082019050919050565b60006020820190508181036000830152612bae81612b72565b9050919050565b7f6e6f74206f776e65720000000000000000000000000000000000000000000000600082015250565b6000612beb600983612b38565b9150612bf682612bb5565b602082019050919050565b60006020820190508181036000830152612c1a81612bde565b9050919050565b7f616c72656164792077697468647261776e000000000000000000000000000000600082015250565b6000612c57601183612b38565b9150612c6282612c21565b602082019050919050565b60006020820190508181036000830152612c8681612c4a565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000612cc7826123bb565b9150612cd2836123bb565b9250828202612ce0816123bb565b91508282048414831517612cf757612cf6612c8d565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000612d38826123bb565b9150612d43836123bb565b925082612d5357612d52612cfe565b5b828204905092915050565b6000612d69826123bb565b9150612d74836123bb565b9250828203905081811115612d8c57612d8b612c8d565b5b92915050565b6000612d9d826123bb565b9150612da8836123bb565b9250828201905080821115612dc057612dbf612c8d565b5b92915050565b7f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060008201527f64656c656761746563616c6c0000000000000000000000000000000000000000602082015250565b6000612e22602c83612b38565b9150612e2d82612dc6565b604082019050919050565b60006020820190508181036000830152612e5181612e15565b9050919050565b7f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060008201527f6163746976652070726f78790000000000000000000000000000000000000000602082015250565b6000612eb4602c83612b38565b9150612ebf82612e58565b604082019050919050565b60006020820190508181036000830152612ee381612ea7565b9050919050565b7f555550535570677261646561626c653a206d757374206e6f742062652063616c60008201527f6c6564207468726f7567682064656c656761746563616c6c0000000000000000602082015250565b6000612f46603883612b38565b9150612f5182612eea565b604082019050919050565b60006020820190508181036000830152612f7581612f39565b9050919050565b7f616d6f756e743d30000000000000000000000000000000000000000000000000600082015250565b6000612fb2600883612b38565b9150612fbd82612f7c565b602082019050919050565b60006020820190508181036000830152612fe181612fa5565b9050919050565b7f696e76616c6964207465726d0000000000000000000000000000000000000000600082015250565b600061301e600c83612b38565b915061302982612fe8565b602082019050919050565b6000602082019050818103600083015261304d81613011565b9050919050565b7f706c656173652077697468647261770000000000000000000000000000000000600082015250565b600061308a600f83612b38565b915061309582613054565b602082019050919050565b600060208201905081810360008301526130b98161307d565b9050919050565b60006130cb826123bb565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036130fd576130fc612c8d565b5b600182019050919050565b600060408201905061311d6000830185612431565b61312a6020830184612431565b9392505050565b7f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160008201527f647920696e697469616c697a6564000000000000000000000000000000000000602082015250565b600061318d602e83612b38565b915061319882613131565b604082019050919050565b600060208201905081810360008301526131bc81613180565b9050919050565b7f746f6b656e3d3000000000000000000000000000000000000000000000000000600082015250565b60006131f9600783612b38565b9150613204826131c3565b602082019050919050565b60006020820190508181036000830152613228816131ec565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000819050919050565b600060ff82169050919050565b600061329061328b6132868461325e565b61268b565b613268565b9050919050565b6132a081613275565b82525050565b60006020820190506132bb6000830184613297565b92915050565b7f6475726174696f6e3d3000000000000000000000000000000000000000000000600082015250565b60006132f7600a83612b38565b9150613302826132c1565b602082019050919050565b60006020820190508181036000830152613326816132ea565b9050919050565b7f6170723d30000000000000000000000000000000000000000000000000000000600082015250565b6000613363600583612b38565b915061336e8261332d565b602082019050919050565b6000602082019050818103600083015261339281613356565b9050919050565b60006060820190506133ae6000830186612431565b6133bb6020830185612431565b6133c86040830184612431565b949350505050565b7f7465726d20216578697374730000000000000000000000000000000000000000600082015250565b6000613406600c83612b38565b9150613411826133d0565b602082019050919050565b60006020820190508181036000830152613435816133f9565b9050919050565b600060a0820190506134516000830188612431565b61345e6020830187612431565b61346b6040830186612431565b6134786060830185612431565b6134856080830184612431565b9695505050505050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b60006134eb602683612b38565b91506134f68261348f565b604082019050919050565b6000602082019050818103600083015261351a816134de565b9050919050565b60006040820190506135366000830185612745565b6135436020830184612431565b9392505050565b61355381612657565b811461355e57600080fd5b50565b6000815190506135708161354a565b92915050565b60006020828403121561358c5761358b612353565b5b600061359a84828501613561565b91505092915050565b7f45524331393637557067726164653a206e657720696d706c656d656e7461746960008201527f6f6e206973206e6f742055555053000000000000000000000000000000000000602082015250565b60006135ff602e83612b38565b915061360a826135a3565b604082019050919050565b6000602082019050818103600083015261362e816135f2565b9050919050565b7f45524331393637557067726164653a20756e737570706f727465642070726f7860008201527f6961626c65555549440000000000000000000000000000000000000000000000602082015250565b6000613691602983612b38565b915061369c82613635565b604082019050919050565b600060208201905081810360008301526136c081613684565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b60006136fd602083612b38565b9150613708826136c7565b602082019050919050565b6000602082019050818103600083015261372c816136f0565b9050919050565b60006060820190506137486000830186612745565b6137556020830185612745565b6137626040830184612431565b949350505050565b7f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960008201527f6e697469616c697a696e67000000000000000000000000000000000000000000602082015250565b60006137c6602b83612b38565b91506137d18261376a565b604082019050919050565b600060208201905081810360008301526137f5816137b9565b9050919050565b61380581612a55565b811461381057600080fd5b50565b600081519050613822816137fc565b92915050565b60006020828403121561383e5761383d612353565b5b600061384c84828501613813565b91505092915050565b7f5361666545524332303a204552433230206f7065726174696f6e20646964206e60008201527f6f74207375636365656400000000000000000000000000000000000000000000602082015250565b60006138b1602a83612b38565b91506138bc82613855565b604082019050919050565b600060208201905081810360008301526138e0816138a4565b9050919050565b7f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60008201527f6f74206120636f6e747261637400000000000000000000000000000000000000602082015250565b6000613943602d83612b38565b915061394e826138e7565b604082019050919050565b6000602082019050818103600083015261397281613936565b9050919050565b7f416464726573733a20696e73756666696369656e742062616c616e636520666f60008201527f722063616c6c0000000000000000000000000000000000000000000000000000602082015250565b60006139d5602683612b38565b91506139e082613979565b604082019050919050565b60006020820190508181036000830152613a04816139c8565b9050919050565b600081519050919050565b600081905092915050565b60005b83811015613a3f578082015181840152602081019050613a24565b60008484015250505050565b6000613a5682613a0b565b613a608185613a16565b9350613a70818560208601613a21565b80840191505092915050565b6000613a888284613a4b565b915081905092915050565b7f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000600082015250565b6000613ac9601d83612b38565b9150613ad482613a93565b602082019050919050565b60006020820190508181036000830152613af881613abc565b9050919050565b600081519050919050565b6000613b1582613aff565b613b1f8185612b38565b9350613b2f818560208601613a21565b613b38816124bf565b840191505092915050565b60006020820190508181036000830152613b5d8184613b0a565b90509291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220a4f5b0b3e0a5627e498a62f973860936fb95fdc20cdad7aaca653c6ec430820564736f6c63430008140033