0x60c06040523480156200001157600080fd5b5060405162005fd138038062005fd1833981810160405281019062000037919062000379565b81806040518060400160405280600c81526020017f4c617965725a65726f4e465400000000000000000000000000000000000000008152506040518060400160405280600581526020017f4c5a4e4654000000000000000000000000000000000000000000000000000000815250620000c5620000b96200015860201b60201c565b6200016060201b60201c565b8160019080519060200190620000dd92919062000224565b508060029080519060200190620000f692919062000224565b5050508073ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff1681525050505080600d819055506202e1d8600d54620001499190620003ef565b60a081815250505050620004b1565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b82805462000232906200047b565b90600052602060002090601f016020900481019282620002565760008555620002a2565b82601f106200027157805160ff1916838001178555620002a2565b82800160010185558215620002a2579182015b82811115620002a157825182559160200191906001019062000284565b5b509050620002b19190620002b5565b5090565b5b80821115620002d0576000816000905550600101620002b6565b5090565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006200030682620002d9565b9050919050565b6200031881620002f9565b81146200032457600080fd5b50565b60008151905062000338816200030d565b92915050565b6000819050919050565b62000353816200033e565b81146200035f57600080fd5b50565b600081519050620003738162000348565b92915050565b60008060408385031215620003935762000392620002d4565b5b6000620003a38582860162000327565b9250506020620003b68582860162000362565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000620003fc826200033e565b915062000409836200033e565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115620004415762000440620003c0565b5b828201905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200049457607f821691505b60208210811415620004ab57620004aa6200044c565b5b50919050565b60805160a051615ab46200051d600039600081816110ea0152611174015260008181610a6401528181610e3c0152818161105c0152818161127b0152818161143d0152818161161301528181611cf501528181611e74015281816123a30152612b0f0152615ab46000f3fe6080604052600436106102655760003560e01c806370a0823111610144578063b88d4fde116100b6578063d1deba1f1161007a578063d1deba1f14610951578063df2a5b3b1461096d578063e985e9c514610996578063eb8d72b7146109d3578063f2fde38b146109fc578063f5ecbdbc14610a2557610265565b8063b88d4fde1461086e578063baf3292d14610897578063c4461834146108c0578063c87b56dd146108eb578063cbed8b9c1461092857610265565b8063950c8a7411610108578063950c8a741461075e57806395d89b41146107895780639f38369a146107b4578063a22cb465146107f1578063a6c3d1651461081a578063b353aaa71461084357610265565b806370a0823114610665578063715018a6146106a25780637533d788146106b95780638cfd8f5c146106f65780638da5cb5b1461073357610265565b80631e128296116101dd57806342842e0e116101a157806342842e0e1461054557806342d65a8d1461056e5780635b8c41e61461059757806361bc221a146105d45780636352211e146105ff57806366ad5c8a1461063c57610265565b80631e1282961461044957806323b872dd14610465578063362790f61461048e5780633d8b38f6146104cb5780633f1f4fa41461050857610265565b8063081812fc1161022f578063081812fc1461034f578063095ea7b31461038c5780630df37483146103b557806310ddb137146103de5780631249c58b1461040757806317bac0521461041e57610265565b80621d35671461026a5780629a9b7b1461029357806301ffc9a7146102be57806306fdde03146102fb57806307e0db1714610326575b600080fd5b34801561027657600080fd5b50610291600480360381019061028c9190613a5a565b610a62565b005b34801561029f57600080fd5b506102a8610cb8565b6040516102b59190613b1a565b60405180910390f35b3480156102ca57600080fd5b506102e560048036038101906102e09190613b8d565b610cbe565b6040516102f29190613bd5565b60405180910390f35b34801561030757600080fd5b50610310610da0565b60405161031d9190613c89565b60405180910390f35b34801561033257600080fd5b5061034d60048036038101906103489190613cab565b610e32565b005b34801561035b57600080fd5b5061037660048036038101906103719190613d04565b610ec8565b6040516103839190613d72565b60405180910390f35b34801561039857600080fd5b506103b360048036038101906103ae9190613db9565b610f0e565b005b3480156103c157600080fd5b506103dc60048036038101906103d79190613df9565b611026565b005b3480156103ea57600080fd5b5061040560048036038101906104009190613cab565b611052565b005b34801561041357600080fd5b5061041c6110e8565b005b34801561042a57600080fd5b50610433611172565b6040516104409190613b1a565b60405180910390f35b610463600480360381019061045e9190613df9565b611196565b005b34801561047157600080fd5b5061048c60048036038101906104879190613e39565b61137e565b005b34801561049a57600080fd5b506104b560048036038101906104b09190613df9565b6113de565b6040516104c29190613b1a565b60405180910390f35b3480156104d757600080fd5b506104f260048036038101906104ed9190613e8c565b6114fd565b6040516104ff9190613bd5565b60405180910390f35b34801561051457600080fd5b5061052f600480360381019061052a9190613cab565b6115d1565b60405161053c9190613b1a565b60405180910390f35b34801561055157600080fd5b5061056c60048036038101906105679190613e39565b6115e9565b005b34801561057a57600080fd5b5061059560048036038101906105909190613e8c565b611609565b005b3480156105a357600080fd5b506105be60048036038101906105b9919061401c565b6116a5565b6040516105cb91906140a4565b60405180910390f35b3480156105e057600080fd5b506105e96116ed565b6040516105f69190613b1a565b60405180910390f35b34801561060b57600080fd5b5061062660048036038101906106219190613d04565b6116f3565b6040516106339190613d72565b60405180910390f35b34801561064857600080fd5b50610663600480360381019061065e9190613a5a565b6117a5565b005b34801561067157600080fd5b5061068c600480360381019061068791906140bf565b6118b6565b6040516106999190613b1a565b60405180910390f35b3480156106ae57600080fd5b506106b761196e565b005b3480156106c557600080fd5b506106e060048036038101906106db9190613cab565b611982565b6040516106ed9190614141565b60405180910390f35b34801561070257600080fd5b5061071d60048036038101906107189190614163565b611a22565b60405161072a9190613b1a565b60405180910390f35b34801561073f57600080fd5b50610748611a47565b6040516107559190613d72565b60405180910390f35b34801561076a57600080fd5b50610773611a70565b6040516107809190613d72565b60405180910390f35b34801561079557600080fd5b5061079e611a96565b6040516107ab9190613c89565b60405180910390f35b3480156107c057600080fd5b506107db60048036038101906107d69190613cab565b611b28565b6040516107e89190614141565b60405180910390f35b3480156107fd57600080fd5b50610818600480360381019061081391906141cf565b611c42565b005b34801561082657600080fd5b50610841600480360381019061083c9190613e8c565b611c58565b005b34801561084f57600080fd5b50610858611cf3565b604051610865919061426e565b60405180910390f35b34801561087a57600080fd5b5061089560048036038101906108909190614289565b611d17565b005b3480156108a357600080fd5b506108be60048036038101906108b991906140bf565b611d79565b005b3480156108cc57600080fd5b506108d5611dfc565b6040516108e29190613b1a565b60405180910390f35b3480156108f757600080fd5b50610912600480360381019061090d9190613d04565b611e02565b60405161091f9190613c89565b60405180910390f35b34801561093457600080fd5b5061094f600480360381019061094a919061430c565b611e6a565b005b61096b60048036038101906109669190613a5a565b611f0c565b005b34801561097957600080fd5b50610994600480360381019061098f9190614394565b612150565b005b3480156109a257600080fd5b506109bd60048036038101906109b891906143e7565b612214565b6040516109ca9190613bd5565b60405180910390f35b3480156109df57600080fd5b506109fa60048036038101906109f59190613e8c565b6122a8565b005b348015610a0857600080fd5b50610a236004803603810190610a1e91906140bf565b61231b565b005b348015610a3157600080fd5b50610a4c6004803603810190610a479190614427565b61239f565b604051610a599190614141565b60405180910390f35b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff16610aa161245f565b73ffffffffffffffffffffffffffffffffffffffff1614610af7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610aee906144da565b60405180910390fd5b6000600760008861ffff1661ffff1681526020019081526020016000208054610b1f90614529565b80601f0160208091040260200160405190810160405280929190818152602001828054610b4b90614529565b8015610b985780601f10610b6d57610100808354040283529160200191610b98565b820191906000526020600020905b815481529060010190602001808311610b7b57829003601f168201915b50505050509050805186869050148015610bb3575060008151115b8015610bdc575080805190602001208686604051610bd292919061458b565b6040518091039020145b610c1b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c1290614616565b60405180910390fd5b610caf8787878080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050508686868080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050612467565b50505050505050565b600d5481565b60007f80ac58cd000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161480610d8957507f5b5e139f000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916145b80610d995750610d9882612532565b5b9050919050565b606060018054610daf90614529565b80601f0160208091040260200160405190810160405280929190818152602001828054610ddb90614529565b8015610e285780601f10610dfd57610100808354040283529160200191610e28565b820191906000526020600020905b815481529060010190602001808311610e0b57829003601f168201915b5050505050905090565b610e3a61259c565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166307e0db17826040518263ffffffff1660e01b8152600401610e939190614645565b600060405180830381600087803b158015610ead57600080fd5b505af1158015610ec1573d6000803e3d6000fd5b5050505050565b6000610ed38261261a565b6005600083815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6000610f19826116f3565b90508073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415610f8a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f81906146d2565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16610fa961245f565b73ffffffffffffffffffffffffffffffffffffffff161480610fd85750610fd781610fd261245f565b612214565b5b611017576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161100e90614764565b60405180910390fd5b6110218383612665565b505050565b61102e61259c565b80600960008461ffff1661ffff168152602001908152602001600020819055505050565b61105a61259c565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166310ddb137826040518263ffffffff1660e01b81526004016110b39190614645565b600060405180830381600087803b1580156110cd57600080fd5b505af11580156110e1573d6000803e3d6000fd5b5050505050565b7f0000000000000000000000000000000000000000000000000000000000000000600d541415611144576040517f7d3d824900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61115033600d5461271e565b600d6000815460010191905081905550600c6000815460010191905081905550565b7f000000000000000000000000000000000000000000000000000000000000000081565b61119f816116f3565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611203576040517f59dc379f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600c60008154600190039190508190555061121d816128f8565b60003382604051602001611232929190614784565b6040516020818303038152906040529050600060019050600062055730905060008282604051602001611266929190614804565b604051602081830303815290604052905060007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166340a7bb108830886000876040518663ffffffff1660e01b81526004016112db959493929190614830565b604080518083038186803b1580156112f257600080fd5b505afa158015611306573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061132a91906148a6565b509050803411611366576040517f1c26714c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61137587863360008634612a15565b50505050505050565b61138f61138961245f565b82612bac565b6113ce576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113c590614958565b60405180910390fd5b6113d9838383612c41565b505050565b60008033836040516020016113f4929190614784565b6040516020818303038152906040529050600060019050600062055730905060008282604051602001611428929190614804565b604051602081830303815290604052905060007f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166340a7bb108930886000876040518663ffffffff1660e01b815260040161149d959493929190614830565b604080518083038186803b1580156114b457600080fd5b505afa1580156114c8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114ec91906148a6565b509050809550505050505092915050565b600080600760008661ffff1661ffff168152602001908152602001600020805461152690614529565b80601f016020809104026020016040519081016040528092919081815260200182805461155290614529565b801561159f5780601f106115745761010080835404028352916020019161159f565b820191906000526020600020905b81548152906001019060200180831161158257829003601f168201915b5050505050905083836040516115b692919061458b565b60405180910390208180519060200120149150509392505050565b60096020528060005260406000206000915090505481565b61160483838360405180602001604052806000815250611d17565b505050565b61161161259c565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff166342d65a8d8484846040518463ffffffff1660e01b815260040161166e939291906149a5565b600060405180830381600087803b15801561168857600080fd5b505af115801561169c573d6000803e3d6000fd5b50505050505050565b600b6020528260005260406000208280516020810182018051848252602083016020850120818352809550505050505060205280600052604060002060009250925050505481565b600c5481565b6000806003600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561179c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161179390614a23565b60405180910390fd5b80915050919050565b3073ffffffffffffffffffffffffffffffffffffffff166117c461245f565b73ffffffffffffffffffffffffffffffffffffffff161461181a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161181190614ab5565b60405180910390fd5b6118ae8686868080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050508585858080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050612ea8565b505050505050565b60008073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611927576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161191e90614b47565b60405180910390fd5b600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b61197661259c565b6119806000612f2e565b565b600760205280600052604060002060009150905080546119a190614529565b80601f01602080910402602001604051908101604052809291908181526020018280546119cd90614529565b8015611a1a5780601f106119ef57610100808354040283529160200191611a1a565b820191906000526020600020905b8154815290600101906020018083116119fd57829003601f168201915b505050505081565b6008602052816000526040600020602052806000526040600020600091509150505481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b606060028054611aa590614529565b80601f0160208091040260200160405190810160405280929190818152602001828054611ad190614529565b8015611b1e5780601f10611af357610100808354040283529160200191611b1e565b820191906000526020600020905b815481529060010190602001808311611b0157829003601f168201915b5050505050905090565b60606000600760008461ffff1661ffff1681526020019081526020016000208054611b5290614529565b80601f0160208091040260200160405190810160405280929190818152602001828054611b7e90614529565b8015611bcb5780601f10611ba057610100808354040283529160200191611bcb565b820191906000526020600020905b815481529060010190602001808311611bae57829003601f168201915b50505050509050600081511415611c17576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c0e90614bb3565b60405180910390fd5b611c3a600060148351611c2a9190614c02565b83612ff29092919063ffffffff16565b915050919050565b611c54611c4d61245f565b8383613110565b5050565b611c6061259c565b818130604051602001611c7593929190614c7e565b604051602081830303815290604052600760008561ffff1661ffff1681526020019081526020016000209080519060200190611cb292919061383e565b507f8c0400cfe2d1199b1a725c78960bcc2a344d869b80590d0f2bd005db15a572ce838383604051611ce6939291906149a5565b60405180910390a1505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b611d28611d2261245f565b83612bac565b611d67576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d5e90614958565b60405180910390fd5b611d738484848461327d565b50505050565b611d8161259c565b80600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f5db758e995a17ec1ad84bdef7e8c3293a0bd6179bcce400dff5d4c3d87db726b81604051611df19190613d72565b60405180910390a150565b61271081565b6060611e0d8261261a565b6000611e176132d9565b90506000815111611e375760405180602001604052806000815250611e62565b80611e41846132f0565b604051602001611e52929190614ce4565b6040516020818303038152906040525b915050919050565b611e7261259c565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663cbed8b9c86868686866040518663ffffffff1660e01b8152600401611ed3959493929190614d08565b600060405180830381600087803b158015611eed57600080fd5b505af1158015611f01573d6000803e3d6000fd5b505050505050505050565b6000600b60008861ffff1661ffff1681526020019081526020016000208686604051611f3992919061458b565b908152602001604051809103902060008567ffffffffffffffff1667ffffffffffffffff1681526020019081526020016000205490506000801b811415611fb5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fac90614dc8565b60405180910390fd5b808383604051611fc692919061458b565b60405180910390201461200e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161200590614e5a565b60405180910390fd5b6000801b600b60008961ffff1661ffff168152602001908152602001600020878760405161203d92919061458b565b908152602001604051809103902060008667ffffffffffffffff1667ffffffffffffffff168152602001908152602001600020819055506121088787878080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050508686868080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f82011690508083019250505050505050612ea8565b7fc264d91f3adc5588250e1551f547752ca0cfa8f6b530d243b9f9f4cab10ea8e5878787878560405161213f959493929190614e89565b60405180910390a150505050505050565b61215861259c565b6000811161219b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161219290614f23565b60405180910390fd5b80600860008561ffff1661ffff16815260200190815260200160002060008461ffff1661ffff168152602001908152602001600020819055507f9d5c7c0b934da8fefa9c7760c98383778a12dfbfc0c3b3106518f43fb9508ac083838360405161220793929190614f43565b60405180910390a1505050565b6000600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16905092915050565b6122b061259c565b8181600760008661ffff1661ffff16815260200190815260200160002091906122da9291906138c4565b507ffa41487ad5d6728f0b19276fa1eddc16558578f5109fc39d2dc33c3230470dab83838360405161230e939291906149a5565b60405180910390a1505050565b61232361259c565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415612393576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161238a90614fec565b60405180910390fd5b61239c81612f2e565b50565b60607f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663f5ecbdbc868630866040518563ffffffff1660e01b8152600401612400949392919061500c565b60006040518083038186803b15801561241857600080fd5b505afa15801561242c573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f8201168201806040525081019061245591906150c1565b9050949350505050565b600033905090565b6000806125135a60966366ad5c8a60e01b8989898960405160240161248f949392919061510a565b604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050503073ffffffffffffffffffffffffffffffffffffffff16613451909392919063ffffffff16565b915091508161252a5761252986868686856134e9565b5b505050505050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916827bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916149050919050565b6125a461245f565b73ffffffffffffffffffffffffffffffffffffffff166125c2611a47565b73ffffffffffffffffffffffffffffffffffffffff1614612618576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161260f906151a9565b60405180910390fd5b565b61262381613597565b612662576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161265990614a23565b60405180910390fd5b50565b816005600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff166126d8836116f3565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92560405160405180910390a45050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561278e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161278590615215565b60405180910390fd5b61279781613597565b156127d7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016127ce90615281565b60405180910390fd5b6127e360008383613603565b6001600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461283391906152a1565b92505081905550816003600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a46128f460008383613608565b5050565b6000612903826116f3565b905061291181600084613603565b61291c600083612665565b6001600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461296c9190614c02565b925050819055506003600083815260200190815260200160002060006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905581600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4612a1181600084613608565b5050565b6000600760008861ffff1661ffff1681526020019081526020016000208054612a3d90614529565b80601f0160208091040260200160405190810160405280929190818152602001828054612a6990614529565b8015612ab65780601f10612a8b57610100808354040283529160200191612ab6565b820191906000526020600020905b815481529060010190602001808311612a9957829003601f168201915b50505050509050600081511415612b02576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612af990615369565b60405180910390fd5b612b0d87875161360d565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663c58031008389848a8a8a8a6040518863ffffffff1660e01b8152600401612b71969594939291906153aa565b6000604051808303818588803b158015612b8a57600080fd5b505af1158015612b9e573d6000803e3d6000fd5b505050505050505050505050565b600080612bb8836116f3565b90508073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161480612bfa5750612bf98185612214565b5b80612c3857508373ffffffffffffffffffffffffffffffffffffffff16612c2084610ec8565b73ffffffffffffffffffffffffffffffffffffffff16145b91505092915050565b8273ffffffffffffffffffffffffffffffffffffffff16612c61826116f3565b73ffffffffffffffffffffffffffffffffffffffff1614612cb7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612cae90615492565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612d27576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612d1e90615524565b60405180910390fd5b612d32838383613603565b612d3d600082612665565b6001600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254612d8d9190614c02565b925050819055506001600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254612de491906152a1565b92505081905550816003600083815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60405160405180910390a4612ea3838383613608565b505050565b60006014840151905060008083806020019051810190612ec89190615570565b91509150612ed6828261271e565b600c60008154600101919050819055507f31ae2bb20187b24b2039def7711f43f56311ec96de17b7ef01d1b1da40eb2eee878483600c54604051612f1d94939291906155b0565b60405180910390a150505050505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b606081601f8361300291906152a1565b1015613043576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161303a90615641565b60405180910390fd5b818361304f91906152a1565b84511015613092576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613089906156ad565b60405180910390fd5b60608215600081146130b35760405191506000825260208201604052613104565b6040519150601f8416801560200281840101858101878315602002848b0101015b818310156130f157805183526020830192506020810190506130d4565b50868552601f19601f8301166040525050505b50809150509392505050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141561317f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161317690615719565b60405180910390fd5b80600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31836040516132709190613bd5565b60405180910390a3505050565b613288848484612c41565b61329484848484613684565b6132d3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016132ca906157ab565b60405180910390fd5b50505050565b606060405180602001604052806000815250905090565b60606000821415613338576040518060400160405280600181526020017f3000000000000000000000000000000000000000000000000000000000000000815250905061344c565b600082905060005b6000821461336a578080613353906157cb565b915050600a826133639190615843565b9150613340565b60008167ffffffffffffffff81111561338657613385613ef1565b5b6040519080825280601f01601f1916602001820160405280156133b85781602001600182028036833780820191505090505b5090505b60008514613445576001826133d19190614c02565b9150600a856133e09190615874565b60306133ec91906152a1565b60f81b818381518110613402576134016158a5565b5b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600a8561343e9190615843565b94506133bc565b8093505050505b919050565b6000606060008060008661ffff1667ffffffffffffffff81111561347857613477613ef1565b5b6040519080825280601f01601f1916602001820160405280156134aa5781602001600182028036833780820191505090505b50905060008087516020890160008d8df191503d9250868311156134cc578692505b828152826000602083013e81819450945050505094509492505050565b8180519060200120600b60008761ffff1661ffff1681526020019081526020016000208560405161351a9190615905565b908152602001604051809103902060008567ffffffffffffffff1667ffffffffffffffff168152602001908152602001600020819055507fe183f33de2837795525b4792ca4cd60535bd77c53b7e7030060bfcf5734d6b0c858585858560405161358895949392919061591c565b60405180910390a15050505050565b60008073ffffffffffffffffffffffffffffffffffffffff166003600084815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614159050919050565b505050565b505050565b6000600960008461ffff1661ffff168152602001908152602001600020549050600081141561363c5761271090505b8082111561367f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613676906159d0565b60405180910390fd5b505050565b60006136a58473ffffffffffffffffffffffffffffffffffffffff1661381b565b1561380e578373ffffffffffffffffffffffffffffffffffffffff1663150b7a026136ce61245f565b8786866040518563ffffffff1660e01b81526004016136f094939291906159f0565b602060405180830381600087803b15801561370a57600080fd5b505af192505050801561373b57506040513d601f19601f820116820180604052508101906137389190615a51565b60015b6137be573d806000811461376b576040519150601f19603f3d011682016040523d82523d6000602084013e613770565b606091505b506000815114156137b6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016137ad906157ab565b60405180910390fd5b805181602001fd5b63150b7a0260e01b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916817bffffffffffffffffffffffffffffffffffffffffffffffffffffffff191614915050613813565b600190505b949350505050565b6000808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b82805461384a90614529565b90600052602060002090601f01602090048101928261386c57600085556138b3565b82601f1061388557805160ff19168380011785556138b3565b828001600101855582156138b3579182015b828111156138b2578251825591602001919060010190613897565b5b5090506138c0919061394a565b5090565b8280546138d090614529565b90600052602060002090601f0160209004810192826138f25760008555613939565b82601f1061390b57803560ff1916838001178555613939565b82800160010185558215613939579182015b8281111561393857823582559160200191906001019061391d565b5b509050613946919061394a565b5090565b5b8082111561396357600081600090555060010161394b565b5090565b6000604051905090565b600080fd5b600080fd5b600061ffff82169050919050565b6139928161397b565b811461399d57600080fd5b50565b6000813590506139af81613989565b92915050565b600080fd5b600080fd5b600080fd5b60008083601f8401126139da576139d96139b5565b5b8235905067ffffffffffffffff8111156139f7576139f66139ba565b5b602083019150836001820283011115613a1357613a126139bf565b5b9250929050565b600067ffffffffffffffff82169050919050565b613a3781613a1a565b8114613a4257600080fd5b50565b600081359050613a5481613a2e565b92915050565b60008060008060008060808789031215613a7757613a76613971565b5b6000613a8589828a016139a0565b965050602087013567ffffffffffffffff811115613aa657613aa5613976565b5b613ab289828a016139c4565b95509550506040613ac589828a01613a45565b935050606087013567ffffffffffffffff811115613ae657613ae5613976565b5b613af289828a016139c4565b92509250509295509295509295565b6000819050919050565b613b1481613b01565b82525050565b6000602082019050613b2f6000830184613b0b565b92915050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082169050919050565b613b6a81613b35565b8114613b7557600080fd5b50565b600081359050613b8781613b61565b92915050565b600060208284031215613ba357613ba2613971565b5b6000613bb184828501613b78565b91505092915050565b60008115159050919050565b613bcf81613bba565b82525050565b6000602082019050613bea6000830184613bc6565b92915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015613c2a578082015181840152602081019050613c0f565b83811115613c39576000848401525b50505050565b6000601f19601f8301169050919050565b6000613c5b82613bf0565b613c658185613bfb565b9350613c75818560208601613c0c565b613c7e81613c3f565b840191505092915050565b60006020820190508181036000830152613ca38184613c50565b905092915050565b600060208284031215613cc157613cc0613971565b5b6000613ccf848285016139a0565b91505092915050565b613ce181613b01565b8114613cec57600080fd5b50565b600081359050613cfe81613cd8565b92915050565b600060208284031215613d1a57613d19613971565b5b6000613d2884828501613cef565b91505092915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000613d5c82613d31565b9050919050565b613d6c81613d51565b82525050565b6000602082019050613d876000830184613d63565b92915050565b613d9681613d51565b8114613da157600080fd5b50565b600081359050613db381613d8d565b92915050565b60008060408385031215613dd057613dcf613971565b5b6000613dde85828601613da4565b9250506020613def85828601613cef565b9150509250929050565b60008060408385031215613e1057613e0f613971565b5b6000613e1e858286016139a0565b9250506020613e2f85828601613cef565b9150509250929050565b600080600060608486031215613e5257613e51613971565b5b6000613e6086828701613da4565b9350506020613e7186828701613da4565b9250506040613e8286828701613cef565b9150509250925092565b600080600060408486031215613ea557613ea4613971565b5b6000613eb3868287016139a0565b935050602084013567ffffffffffffffff811115613ed457613ed3613976565b5b613ee0868287016139c4565b92509250509250925092565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b613f2982613c3f565b810181811067ffffffffffffffff82111715613f4857613f47613ef1565b5b80604052505050565b6000613f5b613967565b9050613f678282613f20565b919050565b600067ffffffffffffffff821115613f8757613f86613ef1565b5b613f9082613c3f565b9050602081019050919050565b82818337600083830152505050565b6000613fbf613fba84613f6c565b613f51565b905082815260208101848484011115613fdb57613fda613eec565b5b613fe6848285613f9d565b509392505050565b600082601f830112614003576140026139b5565b5b8135614013848260208601613fac565b91505092915050565b60008060006060848603121561403557614034613971565b5b6000614043868287016139a0565b935050602084013567ffffffffffffffff81111561406457614063613976565b5b61407086828701613fee565b925050604061408186828701613a45565b9150509250925092565b6000819050919050565b61409e8161408b565b82525050565b60006020820190506140b96000830184614095565b92915050565b6000602082840312156140d5576140d4613971565b5b60006140e384828501613da4565b91505092915050565b600081519050919050565b600082825260208201905092915050565b6000614113826140ec565b61411d81856140f7565b935061412d818560208601613c0c565b61413681613c3f565b840191505092915050565b6000602082019050818103600083015261415b8184614108565b905092915050565b6000806040838503121561417a57614179613971565b5b6000614188858286016139a0565b9250506020614199858286016139a0565b9150509250929050565b6141ac81613bba565b81146141b757600080fd5b50565b6000813590506141c9816141a3565b92915050565b600080604083850312156141e6576141e5613971565b5b60006141f485828601613da4565b9250506020614205858286016141ba565b9150509250929050565b6000819050919050565b600061423461422f61422a84613d31565b61420f565b613d31565b9050919050565b600061424682614219565b9050919050565b60006142588261423b565b9050919050565b6142688161424d565b82525050565b6000602082019050614283600083018461425f565b92915050565b600080600080608085870312156142a3576142a2613971565b5b60006142b187828801613da4565b94505060206142c287828801613da4565b93505060406142d387828801613cef565b925050606085013567ffffffffffffffff8111156142f4576142f3613976565b5b61430087828801613fee565b91505092959194509250565b60008060008060006080868803121561432857614327613971565b5b6000614336888289016139a0565b9550506020614347888289016139a0565b945050604061435888828901613cef565b935050606086013567ffffffffffffffff81111561437957614378613976565b5b614385888289016139c4565b92509250509295509295909350565b6000806000606084860312156143ad576143ac613971565b5b60006143bb868287016139a0565b93505060206143cc868287016139a0565b92505060406143dd86828701613cef565b9150509250925092565b600080604083850312156143fe576143fd613971565b5b600061440c85828601613da4565b925050602061441d85828601613da4565b9150509250929050565b6000806000806080858703121561444157614440613971565b5b600061444f878288016139a0565b9450506020614460878288016139a0565b935050604061447187828801613da4565b925050606061448287828801613cef565b91505092959194509250565b7f4c7a4170703a20696e76616c696420656e64706f696e742063616c6c65720000600082015250565b60006144c4601e83613bfb565b91506144cf8261448e565b602082019050919050565b600060208201905081810360008301526144f3816144b7565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061454157607f821691505b60208210811415614555576145546144fa565b5b50919050565b600081905092915050565b6000614572838561455b565b935061457f838584613f9d565b82840190509392505050565b6000614598828486614566565b91508190509392505050565b7f4c7a4170703a20696e76616c696420736f757263652073656e64696e6720636f60008201527f6e74726163740000000000000000000000000000000000000000000000000000602082015250565b6000614600602683613bfb565b915061460b826145a4565b604082019050919050565b6000602082019050818103600083015261462f816145f3565b9050919050565b61463f8161397b565b82525050565b600060208201905061465a6000830184614636565b92915050565b7f4552433732313a20617070726f76616c20746f2063757272656e74206f776e6560008201527f7200000000000000000000000000000000000000000000000000000000000000602082015250565b60006146bc602183613bfb565b91506146c782614660565b604082019050919050565b600060208201905081810360008301526146eb816146af565b9050919050565b7f4552433732313a20617070726f76652063616c6c6572206973206e6f7420746f60008201527f6b656e206f776e6572206e6f7220617070726f76656420666f7220616c6c0000602082015250565b600061474e603e83613bfb565b9150614759826146f2565b604082019050919050565b6000602082019050818103600083015261477d81614741565b9050919050565b60006040820190506147996000830185613d63565b6147a66020830184613b0b565b9392505050565b60008160f01b9050919050565b60006147c5826147ad565b9050919050565b6147dd6147d88261397b565b6147ba565b82525050565b6000819050919050565b6147fe6147f982613b01565b6147e3565b82525050565b600061481082856147cc565b60028201915061482082846147ed565b6020820191508190509392505050565b600060a0820190506148456000830188614636565b6148526020830187613d63565b81810360408301526148648186614108565b90506148736060830185613bc6565b81810360808301526148858184614108565b90509695505050505050565b6000815190506148a081613cd8565b92915050565b600080604083850312156148bd576148bc613971565b5b60006148cb85828601614891565b92505060206148dc85828601614891565b9150509250929050565b7f4552433732313a2063616c6c6572206973206e6f7420746f6b656e206f776e6560008201527f72206e6f7220617070726f766564000000000000000000000000000000000000602082015250565b6000614942602e83613bfb565b915061494d826148e6565b604082019050919050565b6000602082019050818103600083015261497181614935565b9050919050565b600061498483856140f7565b9350614991838584613f9d565b61499a83613c3f565b840190509392505050565b60006040820190506149ba6000830186614636565b81810360208301526149cd818486614978565b9050949350505050565b7f4552433732313a20696e76616c696420746f6b656e2049440000000000000000600082015250565b6000614a0d601883613bfb565b9150614a18826149d7565b602082019050919050565b60006020820190508181036000830152614a3c81614a00565b9050919050565b7f4e6f6e626c6f636b696e674c7a4170703a2063616c6c6572206d75737420626560008201527f204c7a4170700000000000000000000000000000000000000000000000000000602082015250565b6000614a9f602683613bfb565b9150614aaa82614a43565b604082019050919050565b60006020820190508181036000830152614ace81614a92565b9050919050565b7f4552433732313a2061646472657373207a65726f206973206e6f74206120766160008201527f6c6964206f776e65720000000000000000000000000000000000000000000000602082015250565b6000614b31602983613bfb565b9150614b3c82614ad5565b604082019050919050565b60006020820190508181036000830152614b6081614b24565b9050919050565b7f4c7a4170703a206e6f20747275737465642070617468207265636f7264000000600082015250565b6000614b9d601d83613bfb565b9150614ba882614b67565b602082019050919050565b60006020820190508181036000830152614bcc81614b90565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000614c0d82613b01565b9150614c1883613b01565b925082821015614c2b57614c2a614bd3565b5b828203905092915050565b60008160601b9050919050565b6000614c4e82614c36565b9050919050565b6000614c6082614c43565b9050919050565b614c78614c7382613d51565b614c55565b82525050565b6000614c8b828587614566565b9150614c978284614c67565b601482019150819050949350505050565b600081905092915050565b6000614cbe82613bf0565b614cc88185614ca8565b9350614cd8818560208601613c0c565b80840191505092915050565b6000614cf08285614cb3565b9150614cfc8284614cb3565b91508190509392505050565b6000608082019050614d1d6000830188614636565b614d2a6020830187614636565b614d376040830186613b0b565b8181036060830152614d4a818486614978565b90509695505050505050565b7f4e6f6e626c6f636b696e674c7a4170703a206e6f2073746f726564206d65737360008201527f6167650000000000000000000000000000000000000000000000000000000000602082015250565b6000614db2602383613bfb565b9150614dbd82614d56565b604082019050919050565b60006020820190508181036000830152614de181614da5565b9050919050565b7f4e6f6e626c6f636b696e674c7a4170703a20696e76616c6964207061796c6f6160008201527f6400000000000000000000000000000000000000000000000000000000000000602082015250565b6000614e44602183613bfb565b9150614e4f82614de8565b604082019050919050565b60006020820190508181036000830152614e7381614e37565b9050919050565b614e8381613a1a565b82525050565b6000608082019050614e9e6000830188614636565b8181036020830152614eb1818688614978565b9050614ec06040830185614e7a565b614ecd6060830184614095565b9695505050505050565b7f4c7a4170703a20696e76616c6964206d696e4761730000000000000000000000600082015250565b6000614f0d601583613bfb565b9150614f1882614ed7565b602082019050919050565b60006020820190508181036000830152614f3c81614f00565b9050919050565b6000606082019050614f586000830186614636565b614f656020830185614636565b614f726040830184613b0b565b949350505050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000614fd6602683613bfb565b9150614fe182614f7a565b604082019050919050565b6000602082019050818103600083015261500581614fc9565b9050919050565b60006080820190506150216000830187614636565b61502e6020830186614636565b61503b6040830185613d63565b6150486060830184613b0b565b95945050505050565b600061506461505f84613f6c565b613f51565b9050828152602081018484840111156150805761507f613eec565b5b61508b848285613c0c565b509392505050565b600082601f8301126150a8576150a76139b5565b5b81516150b8848260208601615051565b91505092915050565b6000602082840312156150d7576150d6613971565b5b600082015167ffffffffffffffff8111156150f5576150f4613976565b5b61510184828501615093565b91505092915050565b600060808201905061511f6000830187614636565b81810360208301526151318186614108565b90506151406040830185614e7a565b81810360608301526151528184614108565b905095945050505050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000615193602083613bfb565b915061519e8261515d565b602082019050919050565b600060208201905081810360008301526151c281615186565b9050919050565b7f4552433732313a206d696e7420746f20746865207a65726f2061646472657373600082015250565b60006151ff602083613bfb565b915061520a826151c9565b602082019050919050565b6000602082019050818103600083015261522e816151f2565b9050919050565b7f4552433732313a20746f6b656e20616c7265616479206d696e74656400000000600082015250565b600061526b601c83613bfb565b915061527682615235565b602082019050919050565b6000602082019050818103600083015261529a8161525e565b9050919050565b60006152ac82613b01565b91506152b783613b01565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156152ec576152eb614bd3565b5b828201905092915050565b7f4c7a4170703a2064657374696e6174696f6e20636861696e206973206e6f742060008201527f61207472757374656420736f7572636500000000000000000000000000000000602082015250565b6000615353603083613bfb565b915061535e826152f7565b604082019050919050565b6000602082019050818103600083015261538281615346565b9050919050565b600061539482613d31565b9050919050565b6153a481615389565b82525050565b600060c0820190506153bf6000830189614636565b81810360208301526153d18188614108565b905081810360408301526153e58187614108565b90506153f4606083018661539b565b6154016080830185613d63565b81810360a08301526154138184614108565b9050979650505050505050565b7f4552433732313a207472616e736665722066726f6d20696e636f72726563742060008201527f6f776e6572000000000000000000000000000000000000000000000000000000602082015250565b600061547c602583613bfb565b915061548782615420565b604082019050919050565b600060208201905081810360008301526154ab8161546f565b9050919050565b7f4552433732313a207472616e7366657220746f20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b600061550e602483613bfb565b9150615519826154b2565b604082019050919050565b6000602082019050818103600083015261553d81615501565b9050919050565b61554d81615389565b811461555857600080fd5b50565b60008151905061556a81615544565b92915050565b6000806040838503121561558757615586613971565b5b60006155958582860161555b565b92505060206155a685828601614891565b9150509250929050565b60006080820190506155c56000830187614636565b6155d26020830186613d63565b6155df6040830185613b0b565b6155ec6060830184613b0b565b95945050505050565b7f736c6963655f6f766572666c6f77000000000000000000000000000000000000600082015250565b600061562b600e83613bfb565b9150615636826155f5565b602082019050919050565b6000602082019050818103600083015261565a8161561e565b9050919050565b7f736c6963655f6f75744f66426f756e6473000000000000000000000000000000600082015250565b6000615697601183613bfb565b91506156a282615661565b602082019050919050565b600060208201905081810360008301526156c68161568a565b9050919050565b7f4552433732313a20617070726f766520746f2063616c6c657200000000000000600082015250565b6000615703601983613bfb565b915061570e826156cd565b602082019050919050565b60006020820190508181036000830152615732816156f6565b9050919050565b7f4552433732313a207472616e7366657220746f206e6f6e20455243373231526560008201527f63656976657220696d706c656d656e7465720000000000000000000000000000602082015250565b6000615795603283613bfb565b91506157a082615739565b604082019050919050565b600060208201905081810360008301526157c481615788565b9050919050565b60006157d682613b01565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141561580957615808614bd3565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061584e82613b01565b915061585983613b01565b92508261586957615868615814565b5b828204905092915050565b600061587f82613b01565b915061588a83613b01565b92508261589a57615899615814565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60006158df826140ec565b6158e9818561455b565b93506158f9818560208601613c0c565b80840191505092915050565b600061591182846158d4565b915081905092915050565b600060a0820190506159316000830188614636565b81810360208301526159438187614108565b90506159526040830186614e7a565b81810360608301526159648185614108565b905081810360808301526159788184614108565b90509695505050505050565b7f4c7a4170703a207061796c6f61642073697a6520697320746f6f206c61726765600082015250565b60006159ba602083613bfb565b91506159c582615984565b602082019050919050565b600060208201905081810360008301526159e9816159ad565b9050919050565b6000608082019050615a056000830187613d63565b615a126020830186613d63565b615a1f6040830185613b0b565b8181036060830152615a318184614108565b905095945050505050565b600081519050615a4b81613b61565b92915050565b600060208284031215615a6757615a66613971565b5b6000615a7584828501615a3c565b9150509291505056fea264697066735822122067ef15475ee0c0de24e73ceef7798262c9ec2f47e8695962edb6660f761e9bac64736f6c63430008090033000000000000000000000000b6319cc6c8c27a8f5daf0dd3df91ea35c4720dd700000000000000000000000000000000000000000000000000000000000003e8