2 txs
2 calls
constructor
constructor()
functions
allMessages
viewfunction allMessages(uint256) view returns (address author, string text, uint256 timestamp, uint256 costPaid)
baseCost
viewfunction baseCost() view returns (uint256)
currentMessageCount
viewfunction currentMessageCount() view returns (uint256)
currentPeriod
viewfunction currentPeriod() view returns (uint256)
currentPeriodMessages
viewfunction currentPeriodMessages(uint256) view returns (address author, string text, uint256 timestamp, uint256 costPaid)
getContributions
viewfunction getContributions(uint256 postId) view returns (tuple[])
getCurrentPrice
viewfunction getCurrentPrice() view returns (uint256)
getPeriodHistory
viewfunction getPeriodHistory(uint256 period) view returns (tuple[])
getRecentMessagesWithContributions
viewfunction getRecentMessagesWithContributions() view returns (tuple[] enriched)
getWalletReward
viewfunction getWalletReward(uint256 period, address wallet) view returns (uint256 reward)
lastResetTime
viewfunction lastResetTime() view returns (uint256)
maxDisplayMessages
viewfunction maxDisplayMessages() view returns (uint256)
maxTopWallets
viewfunction maxTopWallets() view returns (uint256)
minContribution
viewfunction minContribution() view returns (uint256)
owner
viewfunction owner() view returns (address)
periodDistributed
viewfunction periodDistributed(uint256) view returns (bool)
periodRetainedFunds
viewfunction periodRetainedFunds(uint256) view returns (uint256)
previewCurrentWinners
viewfunction previewCurrentWinners() view returns (address[] topWallets, uint256[] rewards)
referredBy
viewfunction referredBy(address) view returns (address)
walletStats
viewfunction walletStats(address) view returns (uint256 count, uint256 lastTimestamp, uint256 totalSpent)
weekDuration
viewfunction weekDuration() view returns (uint256)
contributeToMessage
payablefunction contributeToMessage(uint256 postId, string comment) payable
distributeFees
nonpayablefunction distributeFees()
publishMessage
payablefunction publishMessage(string text, address referral) payable
setBaseCost
nonpayablefunction setBaseCost(uint256 newBaseCost)
setMaxDisplayMessages
nonpayablefunction setMaxDisplayMessages(uint256 newMaxDisplayMessages)
setMaxTopWallets
nonpayablefunction setMaxTopWallets(uint256 newMaxTopWallets)
setMinContribution
nonpayablefunction setMinContribution(uint256 newMinContribution)
setOwner
nonpayablefunction setOwner(address newOwner)
setWeekDuration
nonpayablefunction setWeekDuration(uint256 newWeekDuration)
events
ConfigUpdated
event ConfigUpdated(string parameter, uint256 newValue)
ContributionAdded
event ContributionAdded(uint256 indexed postId, address indexed contributor, string comment, uint256 amount, uint256 timestamp)
FeesDistributed
event FeesDistributed(uint256 period, uint256 totalAmount, address[] topWallets, uint256[] rewards)
MessagePublished
event MessagePublished(address indexed author, string text, uint256 costPaid, uint256 timestamp)
PeriodArchived
event PeriodArchived(uint256 period, uint256 messageCount)
errors
No errors.
creation bytecode
0x608060405273a74c3ebf7e700175945702cd9ea3d09d5e654321600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555066038d7ea4c6800060095562093a80600c556064600d55600a600e5566038d7ea4c68000600f5534801561008c57600080fd5b5033601260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555042600b81905550600160038190555061580680620000ed6000396000f3fe6080604052600436106101cd5760003560e01c806393822557116100f7578063be4ad6cc11610095578063eb91d37e11610064578063eb91d37e146106ac578063ed3d6334146106d7578063f3e5864714610702578063f62a39851461071e576101cd565b8063be4ad6cc146105cc578063bfe876db14610609578063c584743014610632578063d05e3cc51461066f576101cd565b8063a2177124116100d1578063a217712414610522578063a90f8e9a1461054d578063aaffadf31461058a578063bb57ad20146105b5576101cd565b8063938225571461047a5780639a23d68e146104a55780639b88c806146104e2576101cd565b80634267e97d1161016f578063678c59391161013e578063678c5939146103aa5780637240f754146103d357806380926dea146104105780638da5cb5b1461044f576101cd565b80634267e97d146102ff578063473b0d461461032b578063564339011461035457806356dcbc0b1461037f576101cd565b806313af4035116101ab57806313af403514610268578063232b14d0146102915780632b5dc91f146102ad57806340ad23f9146102d6576101cd565b806301a85102146101d257806304a3adf714610212578063060406181461023d575b600080fd5b3480156101de57600080fd5b506101f960048036038101906101f49190613d36565b610749565b6040516102099493929190613e43565b60405180910390f35b34801561021e57600080fd5b50610227610831565b6040516102349190613e8f565b60405180910390f35b34801561024957600080fd5b50610252610837565b60405161025f9190613e8f565b60405180910390f35b34801561027457600080fd5b5061028f600480360381019061028a9190613ed6565b61083d565b005b6102ab60048036038101906102a69190613f68565b610911565b005b3480156102b957600080fd5b506102d460048036038101906102cf9190613d36565b610d67565b005b3480156102e257600080fd5b506102fd60048036038101906102f89190613d36565b610e38565b005b34801561030b57600080fd5b50610314610f09565b604051610322929190614144565b60405180910390f35b34801561033757600080fd5b50610352600480360381019061034d9190613d36565b61149d565b005b34801561036057600080fd5b5061036961156e565b6040516103769190613e8f565b60405180910390f35b34801561038b57600080fd5b50610394611574565b6040516103a19190613e8f565b60405180910390f35b3480156103b657600080fd5b506103d160048036038101906103cc9190613d36565b61157a565b005b3480156103df57600080fd5b506103fa60048036038101906103f59190613d36565b61164b565b6040516104079190614196565b60405180910390f35b34801561041c57600080fd5b5061043760048036038101906104329190613ed6565b61166b565b604051610446939291906141b1565b60405180910390f35b34801561045b57600080fd5b50610464611695565b60405161047191906141e8565b60405180910390f35b34801561048657600080fd5b5061048f6116bb565b60405161049c9190613e8f565b60405180910390f35b3480156104b157600080fd5b506104cc60048036038101906104c79190614203565b6116c1565b6040516104d99190613e8f565b60405180910390f35b3480156104ee57600080fd5b5061050960048036038101906105049190613d36565b611db1565b6040516105199493929190613e43565b60405180910390f35b34801561052e57600080fd5b50610537611e99565b6040516105449190613e8f565b60405180910390f35b34801561055957600080fd5b50610574600480360381019061056f9190613ed6565b611e9f565b60405161058191906141e8565b60405180910390f35b34801561059657600080fd5b5061059f611ed2565b6040516105ac9190613e8f565b60405180910390f35b3480156105c157600080fd5b506105ca611ed8565b005b3480156105d857600080fd5b506105f360048036038101906105ee9190613d36565b61292b565b60405161060091906143b2565b60405180910390f35b34801561061557600080fd5b50610630600480360381019061062b9190613d36565b612a99565b005b34801561063e57600080fd5b5061065960048036038101906106549190613d36565b612b6a565b6040516106669190613e8f565b60405180910390f35b34801561067b57600080fd5b5061069660048036038101906106919190613d36565b612b82565b6040516106a391906144f9565b60405180910390f35b3480156106b857600080fd5b506106c1612d37565b6040516106ce9190613e8f565b60405180910390f35b3480156106e357600080fd5b506106ec612d7a565b6040516106f991906146a7565b60405180910390f35b61071c600480360381019061071791906146c9565b613105565b005b34801561072a57600080fd5b5061073361382d565b6040516107409190613e8f565b60405180910390f35b6001818154811061075957600080fd5b90600052602060002090600402016000915090508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16908060010180546107a290614758565b80601f01602080910402602001604051908101604052809291908181526020018280546107ce90614758565b801561081b5780601f106107f05761010080835404028352916020019161081b565b820191906000526020600020905b8154815290600101906020018083116107fe57829003601f168201915b5050505050908060020154908060030154905084565b600c5481565b60035481565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146108cd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108c4906147fb565b60405180910390fd5b80601260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000805490508310610958576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161094f90614867565b60405180910390fd5b600f5434101561099d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610994906148d3565b60405180910390fd5b60006064603c346109ae9190614922565b6109b89190614993565b9050600060646014346109cb9190614922565b6109d59190614993565b9050600060646014346109e89190614922565b6109f29190614993565b90506000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1683604051610a3c906149f5565b60006040518083038185875af1925050503d8060008114610a79576040519150601f19603f3d011682016040523d82523d6000602084013e610a7e565b606091505b5050905080610ac2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ab990614a56565b60405180910390fd5b6000808881548110610ad757610ad6614a76565b5b906000526020600020906004020160000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1685604051610b2c906149f5565b60006040518083038185875af1925050503d8060008114610b69576040519150601f19603f3d011682016040523d82523d6000602084013e610b6e565b606091505b5050905080610bb2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ba990614af1565b60405180910390fd5b826010600060035481526020019081526020016000206000828254610bd79190614b11565b925050819055506004600089815260200190815260200160002060405180608001604052803373ffffffffffffffffffffffffffffffffffffffff16815260200189898080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050815260200134815260200142815250908060018154018082558091505060019003906000526020600020906004020160009091909190915060008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506020820151816001019081610cf19190614d20565b50604082015181600201556060820151816003015550503373ffffffffffffffffffffffffffffffffffffffff16887f2bbc68c972c468d8759b2b71ceafa1c55ad3a146885f14bd8b5cc03c901c890c89893442604051610d559493929190614e2e565b60405180910390a35050505050505050565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610df7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dee906147fb565b60405180910390fd5b806009819055507f12c9dccd129ff783f1c8228eacdfa8e334ddecb7ec5c9a79ec662a4aed3d012a81604051610e2d9190614eba565b60405180910390a150565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610ec8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ebf906147fb565b60405180910390fd5b80600d819055507f12c9dccd129ff783f1c8228eacdfa8e334ddecb7ec5c9a79ec662a4aed3d012a81604051610efe9190614f34565b60405180910390a150565b6060806000600680549050905060008167ffffffffffffffff811115610f3257610f31614b45565b5b604051908082528060200260200182016040528015610f605781602001602082028036833780820191505090505b50905060008267ffffffffffffffff811115610f7f57610f7e614b45565b5b604051908082528060200260200182016040528015610fad5781602001602082028036833780820191505090505b50905060005b838110156110c257600060068281548110610fd157610fd0614a76565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508084838151811061101257611011614a76565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050600560008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600201548383815181106110a2576110a1614a76565b5b6020026020010181815250505080806110ba90614f62565b915050610fb3565b5060005b8381101561128c5760006001826110dd9190614b11565b90505b84811015611278578282815181106110fb576110fa614a76565b5b602002602001015183828151811061111657611115614a76565b5b602002602001015111156112655782818151811061113757611136614a76565b5b602002602001015183838151811061115257611151614a76565b5b602002602001015184848151811061116d5761116c614a76565b5b6020026020010185848151811061118757611186614a76565b5b60200260200101828152508281525050508381815181106111ab576111aa614a76565b5b60200260200101518483815181106111c6576111c5614a76565b5b60200260200101518584815181106111e1576111e0614a76565b5b602002602001018684815181106111fb576111fa614a76565b5b602002602001018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152508273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681525050505b808061127090614f62565b9150506110e0565b50808061128490614f62565b9150506110c6565b506000600e5484106112a057600e546112a2565b835b90508067ffffffffffffffff8111156112be576112bd614b45565b5b6040519080825280602002602001820160405280156112ec5781602001602082028036833780820191505090505b5095508067ffffffffffffffff81111561130957611308614b45565b5b6040519080825280602002602001820160405280156113375781602001602082028036833780820191505090505b5094506000805b828110156113815783818151811061135957611358614a76565b5b60200260200101518261136c9190614b11565b9150808061137990614f62565b91505061133e565b50600060106000600354815260200190815260200160002054905060008114806113ab5750600082145b156113bb57505050505050611499565b60005b83811015611491578581815181106113d9576113d8614a76565b5b60200260200101518982815181106113f4576113f3614a76565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508285828151811061144257611441614a76565b5b6020026020010151836114559190614922565b61145f9190614993565b88828151811061147257611471614a76565b5b602002602001018181525050808061148990614f62565b9150506113be565b505050505050505b9091565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461152d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611524906147fb565b60405180910390fd5b80600f819055507f12c9dccd129ff783f1c8228eacdfa8e334ddecb7ec5c9a79ec662a4aed3d012a816040516115639190614ff6565b60405180910390a150565b600d5481565b600e5481565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461160a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611601906147fb565b60405180910390fd5b80600e819055507f12c9dccd129ff783f1c8228eacdfa8e334ddecb7ec5c9a79ec662a4aed3d012a816040516116409190615070565b60405180910390a150565b60116020528060005260406000206000915054906101000a900460ff1681565b60056020528060005260406000206000915090508060000154908060010154908060020154905083565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60095481565b60008060026000858152602001908152602001600020805480602002602001604051908101604052809291908181526020016000905b8282101561182557838290600052602060002090600402016040518060800160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200160018201805461178090614758565b80601f01602080910402602001604051908101604052809291908181526020018280546117ac90614758565b80156117f95780601f106117ce576101008083540402835291602001916117f9565b820191906000526020600020905b8154815290600101906020018083116117dc57829003601f168201915b5050505050815260200160028201548152602001600382015481525050815260200190600101906116f7565b50505050905060008151905060008167ffffffffffffffff81111561184d5761184c614b45565b5b60405190808252806020026020018201604052801561187b5781602001602082028036833780820191505090505b50905060008267ffffffffffffffff81111561189a57611899614b45565b5b6040519080825280602002602001820160405280156118c85781602001602082028036833780820191505090505b5090506000805b84811015611a8e57600080600090505b838110156119bb578783815181106118fa576118f9614a76565b5b60200260200101516000015173ffffffffffffffffffffffffffffffffffffffff1686828151811061192f5761192e614a76565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff16036119a8576001915087838151811061196957611968614a76565b5b60200260200101516060015185828151811061198857611987614a76565b5b6020026020010181815161199c9190614b11565b915081815250506119bb565b80806119b390614f62565b9150506118df565b5080611a7a578682815181106119d4576119d3614a76565b5b6020026020010151600001518584815181106119f3576119f2614a76565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050868281518110611a4057611a3f614a76565b5b602002602001015160600151848481518110611a5f57611a5e614a76565b5b6020026020010181815250508280611a7690614f62565b9350505b508080611a8690614f62565b9150506118cf565b5060005b81811015611c68576000600182611aa99190614b11565b90505b82811015611c5457838281518110611ac757611ac6614a76565b5b6020026020010151848281518110611ae257611ae1614a76565b5b60200260200101511115611c41576000848381518110611b0557611b04614a76565b5b60200260200101519050848281518110611b2257611b21614a76565b5b6020026020010151858481518110611b3d57611b3c614a76565b5b60200260200101818152505080858381518110611b5d57611b5c614a76565b5b6020026020010181815250506000868481518110611b7e57611b7d614a76565b5b60200260200101519050868381518110611b9b57611b9a614a76565b5b6020026020010151878581518110611bb657611bb5614a76565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505080878481518110611c0457611c03614a76565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505050505b8080611c4c90614f62565b915050611aac565b508080611c6090614f62565b915050611a92565b506000600e548210611c7c57600e54611c7e565b815b90506000805b82811015611cc757848181518110611c9f57611c9e614a76565b5b602002602001015182611cb29190614b11565b91508080611cbf90614f62565b915050611c84565b5060008103611ce0576000975050505050505050611dab565b60005b82811015611d9e578973ffffffffffffffffffffffffffffffffffffffff16868281518110611d1557611d14614a76565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1603611d8b5781858281518110611d4c57611d4b614a76565b5b6020026020010151601060008e815260200190815260200160002054611d729190614922565b611d7c9190614993565b98505050505050505050611dab565b8080611d9690614f62565b915050611ce3565b5060009750505050505050505b92915050565b60008181548110611dc157600080fd5b90600052602060002090600402016000915090508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690806001018054611e0a90614758565b80601f0160208091040260200160405190810160405280929190818152602001828054611e3690614758565b8015611e835780601f10611e5857610100808354040283529160200191611e83565b820191906000526020600020905b815481529060010190602001808311611e6657829003601f168201915b5050505050908060020154908060030154905084565b600b5481565b60076020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600f5481565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611f68576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f5f906147fb565b60405180910390fd5b6000806000600190505b600354811015611fc0576011600082815260200190815260200160002060009054906101000a900460ff16611fad5780925060019150611fc0565b8080611fb890614f62565b915050611f72565b5080612001576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ff890615110565b60405180910390fd5b600060026000848152602001908152602001600020805480602002602001604051908101604052809291908181526020016000905b8282101561216457838290600052602060002090600402016040518060800160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016001820180546120bf90614758565b80601f01602080910402602001604051908101604052809291908181526020018280546120eb90614758565b80156121385780601f1061210d57610100808354040283529160200191612138565b820191906000526020600020905b81548152906001019060200180831161211b57829003601f168201915b505050505081526020016002820154815260200160038201548152505081526020019060010190612036565b50505050905060008151905060008167ffffffffffffffff81111561218c5761218b614b45565b5b6040519080825280602002602001820160405280156121ba5781602001602082028036833780820191505090505b50905060008267ffffffffffffffff8111156121d9576121d8614b45565b5b6040519080825280602002602001820160405280156122075781602001602082028036833780820191505090505b5090506000805b848110156123cd57600080600090505b838110156122fa5787838151811061223957612238614a76565b5b60200260200101516000015173ffffffffffffffffffffffffffffffffffffffff1686828151811061226e5761226d614a76565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff16036122e757600191508783815181106122a8576122a7614a76565b5b6020026020010151606001518582815181106122c7576122c6614a76565b5b602002602001018181516122db9190614b11565b915081815250506122fa565b80806122f290614f62565b91505061221e565b50806123b95786828151811061231357612312614a76565b5b60200260200101516000015185848151811061233257612331614a76565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505086828151811061237f5761237e614a76565b5b60200260200101516060015184848151811061239e5761239d614a76565b5b60200260200101818152505082806123b590614f62565b9350505b5080806123c590614f62565b91505061220e565b5060005b818110156125a75760006001826123e89190614b11565b90505b828110156125935783828151811061240657612405614a76565b5b602002602001015184828151811061242157612420614a76565b5b6020026020010151111561258057600084838151811061244457612443614a76565b5b6020026020010151905084828151811061246157612460614a76565b5b602002602001015185848151811061247c5761247b614a76565b5b6020026020010181815250508085838151811061249c5761249b614a76565b5b60200260200101818152505060008684815181106124bd576124bc614a76565b5b602002602001015190508683815181106124da576124d9614a76565b5b60200260200101518785815181106124f5576124f4614a76565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508087848151811061254357612542614a76565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505050505b808061258b90614f62565b9150506123eb565b50808061259f90614f62565b9150506123d1565b506000600e5482106125bb57600e546125bd565b815b905060008167ffffffffffffffff8111156125db576125da614b45565b5b6040519080825280602002602001820160405280156126095781602001602082028036833780820191505090505b50905060008267ffffffffffffffff81111561262857612627614b45565b5b6040519080825280602002602001820160405280156126565781602001602082028036833780820191505090505b5090506000805b848110156127085787818151811061267857612677614a76565b5b602002602001015184828151811061269357612692614a76565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508681815181106126e0576126df614a76565b5b6020026020010151826126f39190614b11565b9150808061270090614f62565b91505061265d565b506000601060008d815260200190815260200160002054905060008111612764576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161275b9061517c565b60405180910390fd5b60005b858110156128b3578288828151811061278357612782614a76565b5b6020026020010151836127969190614922565b6127a09190614993565b8482815181106127b3576127b2614a76565b5b60200260200101818152505060008582815181106127d4576127d3614a76565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1685838151811061280557612804614a76565b5b6020026020010151604051612819906149f5565b60006040518083038185875af1925050503d8060008114612856576040519150601f19603f3d011682016040523d82523d6000602084013e61285b565b606091505b505090508061289f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612896906151e8565b60405180910390fd5b5080806128ab90614f62565b915050612767565b506001601160008e815260200190815260200160002060006101000a81548160ff0219169083151502179055507f935edfadebf3280d3c16af282600d193db3e21138489ec2671a13055ade8795d8c8286866040516129159493929190615208565b60405180910390a1505050505050505050505050565b606060026000838152602001908152602001600020805480602002602001604051908101604052809291908181526020016000905b82821015612a8e57838290600052602060002090600402016040518060800160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016001820180546129e990614758565b80601f0160208091040260200160405190810160405280929190818152602001828054612a1590614758565b8015612a625780601f10612a3757610100808354040283529160200191612a62565b820191906000526020600020905b815481529060010190602001808311612a4557829003601f168201915b505050505081526020016002820154815260200160038201548152505081526020019060010190612960565b505050509050919050565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614612b29576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b20906147fb565b60405180910390fd5b80600c819055507f12c9dccd129ff783f1c8228eacdfa8e334ddecb7ec5c9a79ec662a4aed3d012a81604051612b5f91906152a7565b60405180910390a150565b60106020528060005260406000206000915090505481565b60606000805490508210612bcb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612bc290614867565b60405180910390fd5b60046000838152602001908152602001600020805480602002602001604051908101604052809291908181526020016000905b82821015612d2c57838290600052602060002090600402016040518060800160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600182018054612c8790614758565b80601f0160208091040260200160405190810160405280929190818152602001828054612cb390614758565b8015612d005780601f10612cd557610100808354040283529160200191612d00565b820191906000526020600020905b815481529060010190602001808311612ce357829003601f168201915b505050505081526020016002820154815260200160038201548152505081526020019060010190612bfe565b505050509050919050565b6000600c54600b54612d499190614b11565b421015612d7157600a546002612d5f9190615408565b600954612d6c9190614922565b612d75565b6009545b905090565b60606000808054905090506000600d548210612d9857600d54612d9a565b815b90508067ffffffffffffffff811115612db657612db5614b45565b5b604051908082528060200260200182016040528015612def57816020015b612ddc613ab0565b815260200190600190039081612dd45790505b50925060005b818110156130ff57600081600185612e0d9190615453565b612e179190615453565b905060008181548110612e2d57612e2c614a76565b5b90600052602060002090600402016040518060800160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001600182018054612eac90614758565b80601f0160208091040260200160405190810160405280929190818152602001828054612ed890614758565b8015612f255780601f10612efa57610100808354040283529160200191612f25565b820191906000526020600020905b815481529060010190602001808311612f0857829003601f168201915b5050505050815260200160028201548152602001600382015481525050858381518110612f5557612f54614a76565b5b60200260200101516000018190525060046000828152602001908152602001600020805480602002602001604051908101604052809291908181526020016000905b828210156130c557838290600052602060002090600402016040518060800160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200160018201805461302090614758565b80601f016020809104026020016040519081016040528092919081815260200182805461304c90614758565b80156130995780601f1061306e57610100808354040283529160200191613099565b820191906000526020600020905b81548152906001019060200180831161307c57829003601f168201915b505050505081526020016002820154815260200160038201548152505081526020019060010190612f97565b505050508583815181106130dc576130db614a76565b5b6020026020010151602001819052505080806130f790614f62565b915050612df5565b50505090565b61014083839050111561314d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613144906154d3565b60405180910390fd5b613155613833565b600061315f612d37565b9050803410156131a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161319b90615565565b60405180910390fd5b6000600560003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001541480156132235750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b801561325b57503373ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b156132df5781600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b60008060006064600a346132f39190614922565b6132fd9190614993565b9050600073ffffffffffffffffffffffffffffffffffffffff16600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146134d95760646046346133a19190614922565b6133ab9190614993565b925060646014346133bc9190614922565b6133c69190614993565b91506000600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168360405161344d906149f5565b60006040518083038185875af1925050503d806000811461348a576040519150601f19603f3d011682016040523d82523d6000602084013e61348f565b606091505b50509050806134d3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016134ca906155f7565b60405180910390fd5b506134f5565b6064605a346134e89190614922565b6134f29190614993565b92505b6000600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168460405161353d906149f5565b60006040518083038185875af1925050503d806000811461357a576040519150601f19603f3d011682016040523d82523d6000602084013e61357f565b606091505b50509050806135c3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016135ba90615689565b60405180910390fd5b8160106000600354815260200190815260200160002060008282546135e89190614b11565b92505081905550600060405180608001604052803373ffffffffffffffffffffffffffffffffffffffff1681526020018a8a8080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050508152602001428152602001348152509050600081908060018154018082558091505060019003906000526020600020906004020160009091909190915060008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060208201518160010190816136f69190614d20565b5060408201518160020155606082015181600301555050600181908060018154018082558091505060019003906000526020600020906004020160009091909190915060008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060208201518160010190816137959190614d20565b5060408201518160020155606082015181600301555050600a60008154809291906137bf90614f62565b91905055506137ce3334613904565b3373ffffffffffffffffffffffffffffffffffffffff167ff44a398e3455e691e75bc1f93fffce6604ef17f918a8aa43abdec704e9bcd4908a8a344260405161381a9493929190614e2e565b60405180910390a2505050505050505050565b600a5481565b600c54600b546138439190614b11565b421061390257600060018054905011156138be57600160026000600354815260200190815260200160002090805461387c929190613ad0565b507f95cee2d5e9e567f0220d1543c78d50aeaa9cbb955b88a1b6d8c4199fb4edad626003546001805490506040516138b59291906156a9565b60405180910390a15b600360008154809291906138d190614f62565b919050555042600b819055506000600a81905550600160006138f39190613bb8565b600660006139019190613bdc565b5b565b6000600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154036139b2576006829080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b6001600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000016000828254613a059190614b11565b9250508190555042600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001018190555080600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002016000828254613aa59190614b11565b925050819055505050565b6040518060400160405280613ac3613bfd565b8152602001606081525090565b828054828255906000526020600020906004028101928215613ba75760005260206000209160040282015b82811115613ba65782826000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060018201816001019081613b8091906156e8565b506002820154816002015560038201548160030155505091600401919060040190613afb565b5b509050613bb49190613c3b565b5090565b5080546000825560040290600052602060002090810190613bd99190613c3b565b50565b5080546000825590600052602060002090810190613bfa9190613c99565b50565b6040518060800160405280600073ffffffffffffffffffffffffffffffffffffffff1681526020016060815260200160008152602001600081525090565b5b80821115613c9557600080820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055600182016000613c7c9190613cb6565b6002820160009055600382016000905550600401613c3c565b5090565b5b80821115613cb2576000816000905550600101613c9a565b5090565b508054613cc290614758565b6000825580601f10613cd45750613cf3565b601f016020900490600052602060002090810190613cf29190613c99565b5b50565b600080fd5b600080fd5b6000819050919050565b613d1381613d00565b8114613d1e57600080fd5b50565b600081359050613d3081613d0a565b92915050565b600060208284031215613d4c57613d4b613cf6565b5b6000613d5a84828501613d21565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000613d8e82613d63565b9050919050565b613d9e81613d83565b82525050565b600081519050919050565b600082825260208201905092915050565b60005b83811015613dde578082015181840152602081019050613dc3565b60008484015250505050565b6000601f19601f8301169050919050565b6000613e0682613da4565b613e108185613daf565b9350613e20818560208601613dc0565b613e2981613dea565b840191505092915050565b613e3d81613d00565b82525050565b6000608082019050613e586000830187613d95565b8181036020830152613e6a8186613dfb565b9050613e796040830185613e34565b613e866060830184613e34565b95945050505050565b6000602082019050613ea46000830184613e34565b92915050565b613eb381613d83565b8114613ebe57600080fd5b50565b600081359050613ed081613eaa565b92915050565b600060208284031215613eec57613eeb613cf6565b5b6000613efa84828501613ec1565b91505092915050565b600080fd5b600080fd5b600080fd5b60008083601f840112613f2857613f27613f03565b5b8235905067ffffffffffffffff811115613f4557613f44613f08565b5b602083019150836001820283011115613f6157613f60613f0d565b5b9250929050565b600080600060408486031215613f8157613f80613cf6565b5b6000613f8f86828701613d21565b935050602084013567ffffffffffffffff811115613fb057613faf613cfb565b5b613fbc86828701613f12565b92509250509250925092565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b613ffd81613d83565b82525050565b600061400f8383613ff4565b60208301905092915050565b6000602082019050919050565b600061403382613fc8565b61403d8185613fd3565b935061404883613fe4565b8060005b838110156140795781516140608882614003565b975061406b8361401b565b92505060018101905061404c565b5085935050505092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6140bb81613d00565b82525050565b60006140cd83836140b2565b60208301905092915050565b6000602082019050919050565b60006140f182614086565b6140fb8185614091565b9350614106836140a2565b8060005b8381101561413757815161411e88826140c1565b9750614129836140d9565b92505060018101905061410a565b5085935050505092915050565b6000604082019050818103600083015261415e8185614028565b9050818103602083015261417281846140e6565b90509392505050565b60008115159050919050565b6141908161417b565b82525050565b60006020820190506141ab6000830184614187565b92915050565b60006060820190506141c66000830186613e34565b6141d36020830185613e34565b6141e06040830184613e34565b949350505050565b60006020820190506141fd6000830184613d95565b92915050565b6000806040838503121561421a57614219613cf6565b5b600061422885828601613d21565b925050602061423985828601613ec1565b9150509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b600082825260208201905092915050565b600061428b82613da4565b614295818561426f565b93506142a5818560208601613dc0565b6142ae81613dea565b840191505092915050565b60006080830160008301516142d16000860182613ff4565b50602083015184820360208601526142e98282614280565b91505060408301516142fe60408601826140b2565b50606083015161431160608601826140b2565b508091505092915050565b600061432883836142b9565b905092915050565b6000602082019050919050565b600061434882614243565b614352818561424e565b9350836020820285016143648561425f565b8060005b858110156143a05784840389528151614381858261431c565b945061438c83614330565b925060208a01995050600181019050614368565b50829750879550505050505092915050565b600060208201905081810360008301526143cc818461433d565b905092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b60006080830160008301516144186000860182613ff4565b50602083015184820360208601526144308282614280565b915050604083015161444560408601826140b2565b50606083015161445860608601826140b2565b508091505092915050565b600061446f8383614400565b905092915050565b6000602082019050919050565b600061448f826143d4565b61449981856143df565b9350836020820285016144ab856143f0565b8060005b858110156144e757848403895281516144c88582614463565b94506144d383614477565b925060208a019950506001810190506144af565b50829750879550505050505092915050565b600060208201905081810360008301526145138184614484565b905092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b600082825260208201905092915050565b6000614563826143d4565b61456d8185614547565b93508360208202850161457f856143f0565b8060005b858110156145bb578484038952815161459c8582614463565b94506145a783614477565b925060208a01995050600181019050614583565b50829750879550505050505092915050565b600060408301600083015184820360008601526145ea82826142b9565b915050602083015184820360208601526146048282614558565b9150508091505092915050565b600061461d83836145cd565b905092915050565b6000602082019050919050565b600061463d8261451b565b6146478185614526565b93508360208202850161465985614537565b8060005b8581101561469557848403895281516146768582614611565b945061468183614625565b925060208a0199505060018101905061465d565b50829750879550505050505092915050565b600060208201905081810360008301526146c18184614632565b905092915050565b6000806000604084860312156146e2576146e1613cf6565b5b600084013567ffffffffffffffff811115614700576146ff613cfb565b5b61470c86828701613f12565b9350935050602061471f86828701613ec1565b9150509250925092565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061477057607f821691505b60208210810361478357614782614729565b5b50919050565b7f556e617574686f72697a65643a2063616c6c6572206973206e6f74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b60006147e5602183613daf565b91506147f082614789565b604082019050919050565b60006020820190508181036000830152614814816147d8565b9050919050565b7f496e76616c696420706f73744964000000000000000000000000000000000000600082015250565b6000614851600e83613daf565b915061485c8261481b565b602082019050919050565b6000602082019050818103600083015261488081614844565b9050919050565b7f436f6e747269627574696f6e20616d6f756e7420746f6f206c6f770000000000600082015250565b60006148bd601b83613daf565b91506148c882614887565b602082019050919050565b600060208201905081810360008301526148ec816148b0565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061492d82613d00565b915061493883613d00565b925082820261494681613d00565b9150828204841483151761495d5761495c6148f3565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061499e82613d00565b91506149a983613d00565b9250826149b9576149b8614964565b5b828204905092915050565b600081905092915050565b50565b60006149df6000836149c4565b91506149ea826149cf565b600082019050919050565b6000614a00826149d2565b9150819050919050565b7f4661696c656420746f207472616e73666572206f776e65722073686172650000600082015250565b6000614a40601e83613daf565b9150614a4b82614a0a565b602082019050919050565b60006020820190508181036000830152614a6f81614a33565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4661696c656420746f207472616e736665722063726561746f72207368617265600082015250565b6000614adb602083613daf565b9150614ae682614aa5565b602082019050919050565b60006020820190508181036000830152614b0a81614ace565b9050919050565b6000614b1c82613d00565b9150614b2783613d00565b9250828201905080821115614b3f57614b3e6148f3565b5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302614bd67fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82614b99565b614be08683614b99565b95508019841693508086168417925050509392505050565b6000819050919050565b6000614c1d614c18614c1384613d00565b614bf8565b613d00565b9050919050565b6000819050919050565b614c3783614c02565b614c4b614c4382614c24565b848454614ba6565b825550505050565b600090565b614c60614c53565b614c6b818484614c2e565b505050565b5b81811015614c8f57614c84600082614c58565b600181019050614c71565b5050565b601f821115614cd457614ca581614b74565b614cae84614b89565b81016020851015614cbd578190505b614cd1614cc985614b89565b830182614c70565b50505b505050565b600082821c905092915050565b6000614cf760001984600802614cd9565b1980831691505092915050565b6000614d108383614ce6565b9150826002028217905092915050565b614d2982613da4565b67ffffffffffffffff811115614d4257614d41614b45565b5b614d4c8254614758565b614d57828285614c93565b600060209050601f831160018114614d8a5760008415614d78578287015190505b614d828582614d04565b865550614dea565b601f198416614d9886614b74565b60005b82811015614dc057848901518255600182019150602085019450602081019050614d9b565b86831015614ddd5784890151614dd9601f891682614ce6565b8355505b6001600288020188555050505b505050505050565b82818337600083830152505050565b6000614e0d8385613daf565b9350614e1a838584614df2565b614e2383613dea565b840190509392505050565b60006060820190508181036000830152614e49818688614e01565b9050614e586020830185613e34565b614e656040830184613e34565b95945050505050565b7f62617365436f7374000000000000000000000000000000000000000000000000600082015250565b6000614ea4600883613daf565b9150614eaf82614e6e565b602082019050919050565b60006040820190508181036000830152614ed381614e97565b9050614ee26020830184613e34565b92915050565b7f6d6178446973706c61794d657373616765730000000000000000000000000000600082015250565b6000614f1e601283613daf565b9150614f2982614ee8565b602082019050919050565b60006040820190508181036000830152614f4d81614f11565b9050614f5c6020830184613e34565b92915050565b6000614f6d82613d00565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203614f9f57614f9e6148f3565b5b600182019050919050565b7f6d696e436f6e747269627574696f6e0000000000000000000000000000000000600082015250565b6000614fe0600f83613daf565b9150614feb82614faa565b602082019050919050565b6000604082019050818103600083015261500f81614fd3565b905061501e6020830184613e34565b92915050565b7f6d6178546f7057616c6c65747300000000000000000000000000000000000000600082015250565b600061505a600d83613daf565b915061506582615024565b602082019050919050565b600060408201905081810360008301526150898161504d565b90506150986020830184613e34565b92915050565b7f4e6f2070656e64696e6720706572696f6420666f72206469737472696275746960008201527f6f6e000000000000000000000000000000000000000000000000000000000000602082015250565b60006150fa602283613daf565b91506151058261509e565b604082019050919050565b60006020820190508181036000830152615129816150ed565b9050919050565b7f4e6f2072657461696e65642066756e647320666f7220706572696f6400000000600082015250565b6000615166601c83613daf565b915061517182615130565b602082019050919050565b6000602082019050818103600083015261519581615159565b9050919050565b7f5472616e73666572206661696c656420666f7220746f702077616c6c65740000600082015250565b60006151d2601e83613daf565b91506151dd8261519c565b602082019050919050565b60006020820190508181036000830152615201816151c5565b9050919050565b600060808201905061521d6000830187613e34565b61522a6020830186613e34565b818103604083015261523c8185614028565b9050818103606083015261525081846140e6565b905095945050505050565b7f7765656b4475726174696f6e0000000000000000000000000000000000000000600082015250565b6000615291600c83613daf565b915061529c8261525b565b602082019050919050565b600060408201905081810360008301526152c081615284565b90506152cf6020830184613e34565b92915050565b60008160011c9050919050565b6000808291508390505b600185111561532c57808604811115615308576153076148f3565b5b60018516156153175780820291505b8081029050615325856152d5565b94506152ec565b94509492505050565b6000826153455760019050615401565b816153535760009050615401565b81600181146153695760028114615373576153a2565b6001915050615401565b60ff841115615385576153846148f3565b5b8360020a91508482111561539c5761539b6148f3565b5b50615401565b5060208310610133831016604e8410600b84101617156153d75782820a9050838111156153d2576153d16148f3565b5b615401565b6153e484848460016152e2565b925090508184048111156153fb576153fa6148f3565b5b81810290505b9392505050565b600061541382613d00565b915061541e83613d00565b925061544b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484615335565b905092915050565b600061545e82613d00565b915061546983613d00565b9250828203905081811115615481576154806148f3565b5b92915050565b7f4d65737361676520746f6f206c6f6e6700000000000000000000000000000000600082015250565b60006154bd601083613daf565b91506154c882615487565b602082019050919050565b600060208201905081810360008301526154ec816154b0565b9050919050565b7f496e73756666696369656e742066756e647320666f72207075626c697368696e60008201527f6700000000000000000000000000000000000000000000000000000000000000602082015250565b600061554f602183613daf565b915061555a826154f3565b604082019050919050565b6000602082019050818103600083015261557e81615542565b9050919050565b7f4661696c656420746f207472616e7366657220726566657272616c207368617260008201527f6500000000000000000000000000000000000000000000000000000000000000602082015250565b60006155e1602183613daf565b91506155ec82615585565b604082019050919050565b60006020820190508181036000830152615610816155d4565b9050919050565b7f4661696c656420746f207472616e736665722066756e647320746f206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b6000615673602183613daf565b915061567e82615617565b604082019050919050565b600060208201905081810360008301526156a281615666565b9050919050565b60006040820190506156be6000830185613e34565b6156cb6020830184613e34565b9392505050565b6000815490506156e181614758565b9050919050565b8181036156f65750506157ce565b6156ff826156d2565b67ffffffffffffffff81111561571857615717614b45565b5b6157228254614758565b61572d828285614c93565b6000601f83116001811461575c576000841561574a578287015490505b6157548582614d04565b8655506157c7565b601f19841661576a87614b74565b965061577586614b74565b60005b8281101561579d57848901548255600182019150600185019450602081019050615778565b868310156157ba57848901546157b6601f891682614ce6565b8355505b6001600288020188555050505b5050505050505b56fea26469706673582212206f53e248cb63b15bd1e7fc14a1fc36e9b49c0ee9d31ac627fb5f2f594fdc888e64736f6c63430008140033