{"ScriptPreparationCode":"var str = \u00220x60806040526001600060146101000a81548160ff021916908360ff1602179055503480156200002d57600080fd5b5060405162003f4038038062003f40833981810160405281019062000053919062000620565b80518251146200009a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000091906200073f565b60405180910390fd5b60005b82518160ff161015620002fd5760016000848360ff1681518110620000eb577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156200014657600080fd5b6001806000858460ff168151811062000188577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550828160ff16815181106200021e577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001015160076000848460ff168151811062000267577f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508080620002f49062000886565b9150506200009d565b5083600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508373ffffffffffffffffffffffffffffffffffffffff166370a08231856040518263ffffffff1660e01b81526004016200037a919062000722565b60206040518083038186803b1580156200039357600080fd5b505afa158015620003a8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003ce9190620006be565b8473ffffffffffffffffffffffffffffffffffffffff166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b1580156200041557600080fd5b505afa1580156200042a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620004509190620006be565b6200045c9190620007ca565b60038190555082600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550336000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f587f8c3da67289e1b7fa2679aafa43e8ef08d5d8d9adfcb67cc825264c431c1360405160405180910390a25050505062000981565b60006200056762000561846200078a565b62000761565b905080838252602082019050828560208602820111156200058757600080fd5b60005b85811015620005bb5781620005a08882620005c5565b8452602084019350602083019250506001810190506200058a565b5050509392505050565b600081519050620005d6816200094d565b92915050565b600082601f830112620005ee57600080fd5b81516200060084826020860162000550565b91505092915050565b6000815190506200061a8162000967565b92915050565b600080600080608085870312156200063757600080fd5b60006200064787828801620005c5565b94505060206200065a87828801620005c5565b935050604085015167ffffffffffffffff8111156200067857600080fd5b6200068687828801620005dc565b925050606085015167ffffffffffffffff811115620006a457600080fd5b620006b287828801620005dc565b91505092959194509250565b600060208284031215620006d157600080fd5b6000620006e18482850162000609565b91505092915050565b620006f58162000805565b82525050565b60006200070a601583620007b9565b9150620007178262000924565b602082019050919050565b6000602082019050620007396000830184620006ea565b92915050565b600060208201905081810360008301526200075a81620006fb565b9050919050565b60006200076d62000780565b90506200077b828262000850565b919050565b6000604051905090565b600067ffffffffffffffff821115620007a857620007a7620008e4565b5b602082029050602081019050919050565b600082825260208201905092915050565b6000620007d78262000839565b9150620007e48362000839565b925082821015620007fa57620007f9620008b5565b5b828203905092915050565b6000620008128262000819565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b6200085b8262000913565b810181811067ffffffffffffffff821117156200087d576200087c620008e4565b5b80604052505050565b6000620008938262000843565b915060ff821415620008aa57620008a9620008b5565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6000601f19601f8301169050919050565b7f6172726179206c656e677468206d69736d617463680000000000000000000000600082015250565b620009588162000805565b81146200096457600080fd5b50565b620009728162000839565b81146200097e57600080fd5b50565b6135af80620009916000396000f3fe608060405234801561001057600080fd5b50600436106101c45760003560e01c8063912d66ff116100f9578063dd01ba0b11610097578063eb1cbd2711610071578063eb1cbd271461052b578063ed1cac5c14610549578063eea70b4214610567578063f77c479114610583576101c4565b8063dd01ba0b146104c2578063e2de6e6d146104de578063e96842ec146104fa576101c4565b8063a7cf676e116100d3578063a7cf676e1461043a578063a8be47e414610458578063af7568dd14610488578063bc6d385d146104a6576101c4565b8063912d66ff146103e657806391b10ffa1461040257806394a4ff3f1461041e576101c4565b80633fd60603116101665780636689109311610140578063668910931461035e5780636bb7d8561461037a5780637d89651a146103aa578063903223bf146103c8576101c4565b80633fd60603146102e1578063572dd5a9146102fd57806359e7454b1461032e576101c4565b8063277817c7116101a2578063277817c71461025957806329f7de26146102755780632dc7d74c146102a55780633c48a620146102c3576101c4565b806302e8e239146101c957806315e1a382146101f9578063274abf3414610229575b600080fd5b6101e360048036038101906101de9190612bc1565b6105a1565b6040516101f091906130b4565b60405180910390f35b610213600480360381019061020e9190612b20565b6106e4565b60405161022091906130b4565b60405180910390f35b610243600480360381019061023e9190612b49565b610743565b60405161025091906130b4565b60405180910390f35b610273600480360381019061026e9190612b85565b6107a1565b005b61028f600480360381019061028a9190612bc1565b610a19565b60405161029c91906130b4565b60405180910390f35b6102ad610ccb565b6040516102ba9190612f15565b60405180910390f35b6102cb610cf5565b6040516102d891906130b4565b60405180910390f35b6102fb60048036038101906102f69190612d3f565b610cfb565b005b61031760048036038101906103129190612d16565b61103b565b6040516103259291906130cf565b60405180910390f35b61034860048036038101906103439190612b20565b61105f565b6040516103559190612f15565b60405180910390f35b61037860048036038101906103739190612cda565b611092565b005b610394600480360381019061038f9190612b20565b6111fb565b6040516103a19190612f59565b60405180910390f35b6103b261121b565b6040516103bf9190612f15565b60405180910390f35b6103d0611241565b6040516103dd91906130b4565b60405180910390f35b61040060048036038101906103fb9190612bfd565b61124a565b005b61041c60048036038101906104179190612b20565b611684565b005b61043860048036038101906104339190612b20565b611869565b005b610442611a05565b60405161044f9190612f15565b60405180910390f35b610472600480360381019061046d9190612b20565b611a2b565b60405161047f91906130b4565b60405180910390f35b610490611a43565b60405161049d91906130b4565b60405180910390f35b6104c060048036038101906104bb9190612d16565b611a4d565b005b6104dc60048036038101906104d79190612c9e565b611cfe565b005b6104f860048036038101906104f39190612bfd565b611e2d565b005b610514600480360381019061050f9190612b20565b6124ae565b6040516105229291906130cf565b60405180910390f35b6105336124d2565b60405161054091906130f8565b60405180910390f35b6105516124e5565b60405161055e91906130f8565b60405180910390f35b610581600480360381019061057c9190612c9e565b6124ea565b005b61058b612716565b6040516105989190612f15565b60405180910390f35b60008060ff168260ff161480156106025750600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15610617576106108361273a565b90506106de565b600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160008360ff1660ff16815260200190815260200160002060010154600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160008460ff1660ff168152602001908152602001600020600001546106db9190613205565b90505b92915050565b60006106ef8261273a565b600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000015461073c9190613124565b9050919050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600301600083815260200190815260200160002054905092915050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461082f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161082690613074565b60405180910390fd5b60008111610872576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161086990612fb4565b60405180910390fd5b6000600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054146108f4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108eb90613014565b60405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610983576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161097a90612ff4565b60405180910390fd5b80600960008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff167fb1dde3dfc5e8df8a1ad5d278b36a91192c9106fc9ae0d1730c82455692640cd882604051610a0d91906130b4565b60405180910390a25050565b6000600860008360ff1660ff16815260200190815260200160002060000154421015610a485760009050610cc5565b600860008360ff1660ff16815260200190815260200160002060010154600860008460ff1660ff16815260200190815260200160002060000154610a8c9190613124565b421180610ab557506000600860008460ff1660ff16815260200190815260200160002060010154145b15610b8557600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160008360ff1660ff16815260200190815260200160002060010154600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160008460ff1660ff16815260200190815260200160002060000154610b7e9190613205565b9050610cc5565b600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160008360ff1660ff1681526020019081526020016000206001015464174876e800600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160008560ff1660ff16815260200190815260200160002060000154600860008660ff1660ff16815260200190815260200160002060010154600860008760ff1660ff1681526020019081526020016000206000015442610c8a9190613205565b64174876e800610c9a91906131ab565b610ca4919061317a565b610cae91906131ab565b610cb8919061317a565b610cc29190613205565b90505b92915050565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60035481565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610d89576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d8090613074565b60405180910390fd5b600060ff168260ff161415610d9d57600080fd5b6000610da98284610a19565b9050600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001015481600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154610e3c9190613205565b1015610e4757600080fd5b80600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160008560ff1660ff1681526020019081526020016000206001016000828254610eb39190613124565b9250508190555080600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000016000828254610f0c9190613205565b925050819055508060036000828254610f259190613205565b92505081905550600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff1660e01b8152600401610f89929190612f30565b602060405180830381600087803b158015610fa357600080fd5b505af1158015610fb7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fdb9190612c4c565b610fe457600080fd5b8260ff168273ffffffffffffffffffffffffffffffffffffffff167f69ff77f8ae4662e6d47e9ec4c054fa45e4ed9cd4d875497ea162e3cb95ee2fd58360405161102e91906130b4565b60405180910390a3505050565b60086020528060005260406000206000915090508060000154908060010154905082565b60076020528060005260406000206000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611120576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161111790613074565b60405180910390fd5b604051806040016040528083815260200182815250600860008060149054906101000a900460ff1660ff1660ff1681526020019081526020016000206000820151816000015560208201518160010155905050600060149054906101000a900460ff1660ff167fc1aade57980687511ea5382b793f5b68cf97b354aef89addfbf9c59d23f1fc7283836040516111b79291906130cf565b60405180910390a26000601481819054906101000a900460ff16809291906111de90613298565b91906101000a81548160ff021916908360ff160217905550505050565b60016020528060005260406000206000915054906101000a900460ff1681565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b64174876e80081565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146112d8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112cf90613074565b60405180910390fd5b60008260ff161180156112ff5750600060149054906101000a900460ff1660ff168260ff16105b61130857600080fd5b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661148b5760006113648461273a565b905080600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160008060ff1660ff16815260200190815260200160002060000160008282546113d29190613124565b9250508190555080600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001600082825461142b9190613124565b9250508190555060018060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550505b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160008060ff1660ff1681526020019081526020016000206000015410156114f457600080fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160008060ff1660ff16815260200190815260200160002060000160008282546115609190613205565b9250508190555080600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160008460ff1660ff16815260200190815260200160002060000160008282546115d39190613124565b92505081905550600060ff168373ffffffffffffffffffffffffffffffffffffffff167f69ff77f8ae4662e6d47e9ec4c054fa45e4ed9cd4d875497ea162e3cb95ee2fd58360405161162591906130b4565b60405180910390a38160ff168373ffffffffffffffffffffffffffffffffffffffff167fd574b9b920ef951710b35bf90459120b667d6c810777f945e3e82996f75824c48360405161167791906130b4565b60405180910390a3505050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611712576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161170990613074565b60405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541115611823576000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508073ffffffffffffffffffffffffffffffffffffffff167faa482319d1110d84c35ff519b80c0449540dfbdbe6ee1daf21c2483378a1bed060405160405180910390a25b8073ffffffffffffffffffffffffffffffffffffffff167f587f8c3da67289e1b7fa2679aafa43e8ef08d5d8d9adfcb67cc825264c431c1360405160405180910390a250565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146118f7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118ee90613074565b60405180910390fd5b6000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054141561197a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161197190613034565b60405180910390fd5b6000600960008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508073ffffffffffffffffffffffffffffffffffffffff167faa482319d1110d84c35ff519b80c0449540dfbdbe6ee1daf21c2483378a1bed060405160405180910390a250565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60096020528060005260406000206000915090505481565b6000600654905090565b600060ff168160ff161415611a6157600080fd5b6000611a6d3383610a19565b9050600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001015481600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000154611b009190613205565b1015611b0b57600080fd5b80600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160008460ff1660ff1681526020019081526020016000206001016000828254611b779190613124565b9250508190555080600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000016000828254611bd09190613205565b925050819055508060036000828254611be99190613205565b92505081905550600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33836040518363ffffffff1660e01b8152600401611c4d929190612f30565b602060405180830381600087803b158015611c6757600080fd5b505af1158015611c7b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c9f9190612c4c565b611ca857600080fd5b8160ff163373ffffffffffffffffffffffffffffffffffffffff167f69ff77f8ae4662e6d47e9ec4c054fa45e4ed9cd4d875497ea162e3cb95ee2fd583604051611cf291906130b4565b60405180910390a35050565b81600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160008381526020019081526020016000206000828254611d619190613205565b9250508190555081600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001016000828254611dba9190613205565b925050819055508160066000828254611dd39190613205565b92505081905550803373ffffffffffffffffffffffffffffffffffffffff167fa131d16963736e4c641f27a7f82f2e350b5971e555ae06ae906892bbba0a093984604051611e2191906130b4565b60405180910390a35050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161480611ec657506000600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054115b611f05576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611efc90613054565b60405180910390fd5b600060149054906101000a900460ff1660ff168260ff1610611f5c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f5390612f94565b60405180910390fd5b6000600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205411156120ec5780600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015612026576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161201d90612f74565b60405180910390fd5b3373ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612095576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161208c90613094565b60405180910390fd5b80600960003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546120e49190613205565b925050819055505b6000816003546120fc9190613124565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b81526004016121579190612f15565b60206040518083038186803b15801561216f57600080fd5b505afa158015612183573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121a79190612c75565b6121b19190613205565b10156121f2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121e990612fd4565b60405180910390fd5b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661237257600061224e8461273a565b905080600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160008060ff16815260200190815260200160002060000160008282546122b99190613124565b9250508190555080600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160008282546123129190613124565b9250508190555060018060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550505b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020160008460ff1660ff16815260200190815260200160002060000160008282546123de9190613124565b9250508190555080600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160008282546124379190613124565b9250508190555080600360008282546124509190613124565b925050819055508160ff168373ffffffffffffffffffffffffffffffffffffffff167fd574b9b920ef951710b35bf90459120b667d6c810777f945e3e82996f75824c4836040516124a191906130b4565b60405180910390a3505050565b60026020528060005260406000206000915090508060000154908060010154905082565b600060149054906101000a900460ff1681565b600081565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001015482600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001015461257b9190613124565b1161258557600080fd5b81600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101546125d39190613124565b6125dc336106e4565b10156125e757600080fd5b81600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010160008282546126399190613124565b9250508190555081600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600301600083815260200190815260200160002060008282546126a39190613124565b9250508190555081600660008282546126bc9190613124565b92505081905550803373ffffffffffffffffffffffffffffffffffffffff167f9e3e33edf5dcded4adabc51b1266225d00fa41516bfcad69513fa4eca69519da8460405161270a91906130b4565b60405180910390a35050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16612a9857600073ffffffffffffffffffffffffffffffffffffffff16600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146129e657600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518263ffffffff1660e01b81526004016128da9190612f15565b60206040518083038186803b1580156128f257600080fd5b505afa158015612906573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061292a9190612c75565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231846040518263ffffffff1660e01b81526004016129859190612f15565b60206040518083038186803b15801561299d57600080fd5b505afa1580156129b1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129d59190612c75565b6129df9190613124565b9050612a9d565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231836040518263ffffffff1660e01b8152600401612a419190612f15565b60206040518083038186803b158015612a5957600080fd5b505afa158015612a6d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612a919190612c75565b9050612a9d565b600090505b919050565b600081359050612ab181613506565b92915050565b600081519050612ac68161351d565b92915050565b600081359050612adb81613534565b92915050565b600081359050612af08161354b565b92915050565b600081519050612b058161354b565b92915050565b600081359050612b1a81613562565b92915050565b600060208284031215612b3257600080fd5b6000612b4084828501612aa2565b91505092915050565b60008060408385031215612b5c57600080fd5b6000612b6a85828601612aa2565b9250506020612b7b85828601612acc565b9150509250929050565b60008060408385031215612b9857600080fd5b6000612ba685828601612aa2565b9250506020612bb785828601612ae1565b9150509250929050565b60008060408385031215612bd457600080fd5b6000612be285828601612aa2565b9250506020612bf385828601612b0b565b9150509250929050565b600080600060608486031215612c1257600080fd5b6000612c2086828701612aa2565b9350506020612c3186828701612b0b565b9250506040612c4286828701612ae1565b9150509250925092565b600060208284031215612c5e57600080fd5b6000612c6c84828501612ab7565b91505092915050565b600060208284031215612c8757600080fd5b6000612c9584828501612af6565b91505092915050565b60008060408385031215612cb157600080fd5b6000612cbf85828601612ae1565b9250506020612cd085828601612acc565b9150509250929050565b60008060408385031215612ced57600080fd5b6000612cfb85828601612ae1565b9250506020612d0c85828601612ae1565b9150509250929050565b600060208284031215612d2857600080fd5b6000612d3684828501612b0b565b91505092915050565b60008060408385031215612d5257600080fd5b6000612d6085828601612b0b565b9250506020612d7185828601612aa2565b9150509250929050565b612d8481613239565b82525050565b612d938161324b565b82525050565b6000612da6601c83613113565b9150612db182613320565b602082019050919050565b6000612dc9601883613113565b9150612dd482613349565b602082019050919050565b6000612dec601283613113565b9150612df782613372565b602082019050919050565b6000612e0f601a83613113565b9150612e1a8261339b565b602082019050919050565b6000612e32602583613113565b9150612e3d826133c4565b604082019050919050565b6000612e55602683613113565b9150612e6082613413565b604082019050919050565b6000612e78601683613113565b9150612e8382613462565b602082019050919050565b6000612e9b601883613113565b9150612ea68261348b565b602082019050919050565b6000612ebe600e83613113565b9150612ec9826134b4565b602082019050919050565b6000612ee1601483613113565b9150612eec826134dd565b602082019050919050565b612f0081613281565b82525050565b612f0f8161328b565b82525050565b6000602082019050612f2a6000830184612d7b565b92915050565b6000604082019050612f456000830185612d7b565b612f526020830184612ef7565b9392505050565b6000602082019050612f6e6000830184612d8a565b92915050565b60006020820190508181036000830152612f8d81612d99565b9050919050565b60006020820190508181036000830152612fad81612dbc565b9050919050565b60006020820190508181036000830152612fcd81612ddf565b9050919050565b60006020820190508181036000830152612fed81612e02565b9050919050565b6000602082019050818103600083015261300d81612e25565b9050919050565b6000602082019050818103600083015261302d81612e48565b9050919050565b6000602082019050818103600083015261304d81612e6b565b9050919050565b6000602082019050818103600083015261306d81612e8e565b9050919050565b6000602082019050818103600083015261308d81612eb1565b9050919050565b600060208201905081810360008301526130ad81612ed4565b9050919050565b60006020820190506130c96000830184612ef7565b92915050565b60006040820190506130e46000830185612ef7565b6130f16020830184612ef7565b9392505050565b600060208201905061310d6000830184612f06565b92915050565b600082825260208201905092915050565b600061312f82613281565b915061313a83613281565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561316f5761316e6132c2565b5b828201905092915050565b600061318582613281565b915061319083613281565b9250826131a05761319f6132f1565b5b828204905092915050565b60006131b682613281565b91506131c183613281565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156131fa576131f96132c2565b5b828202905092915050565b600061321082613281565b915061321b83613281565b92508282101561322e5761322d6132c2565b5b828203905092915050565b600061324482613261565b9050919050565b60008115159050919050565b6000819050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60006132a38261328b565b915060ff8214156132b7576132b66132c2565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f6e6f7420656e6f756768207065726d69747465642062616c616e636500000000600082015250565b7f7472616e6368655f6964206f7574206f6620626f756e64730000000000000000600082015250565b7f616d6f756e74206d757374206265203e20300000000000000000000000000000600082015250565b7f636f6e747261637420746f6b656e2062616c616e6365206c6f77000000000000600082015250565b7f636f6e74726f6c6c65722063616e6e6f74206265207065726d6974746564206960008201527f7373756572000000000000000000000000000000000000000000000000000000602082015250565b7f69737375657220616c7265616479207065726d69747465642c207265766f6b6560008201527f2066697273740000000000000000000000000000000000000000000000000000602082015250565b7f69737375657220616c7265616479207265766f6b656400000000000000000000600082015250565b7f6e6f7420636f6e74726f6c6c6572206f72206973737565720000000000000000600082015250565b7f6e6f7420636f6e74726f6c6c6572000000000000000000000000000000000000600082015250565b7f63616e6e6f7420697373756520746f2073656c66000000000000000000000000600082015250565b61350f81613239565b811461351a57600080fd5b50565b6135268161324b565b811461353157600080fd5b50565b61353d81613257565b811461354857600080fd5b50565b61355481613281565b811461355f57600080fd5b50565b61356b8161328b565b811461357657600080fd5b5056fea26469706673582212202a7971ab4abefd7037204dc450d82929c32ef2a62ee3e0e0761f8f646fdb858f64736f6c634300080100330000000000000000000000005bf5d7337b4effb864f18a50f5ccadd16b62ed17000000000000000000000000fa521adcc11925266a518cde33386fcd9cf2a4a6000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000\u0022","TestCases":[{"Name":"slice","Code":"const buf = new Uint8Array((str.length - 1) \u003E\u003E 1)\r\nlet i\r\nfor (i = str.length - 2; i \u003E 1; i -= 2) {\r\n buf[Math.ceil(i / 2) - 1] = parseInt(str.slice(i, i \u002B 2), 16)\r\n}\r\n\r\nif (i === 1) buf[0] = parseInt(str[2], 16)\r\n\r\nreturn buf","IsDeferred":false},{"Name":"substring","Code":"const buf = new Uint8Array((str.length - 1) \u003E\u003E 1)\r\nlet i\r\nfor (i = str.length - 2; i \u003E 1; i -= 2) {\r\n buf[Math.ceil(i / 2) - 1] = parseInt(str.substring(i, i \u002B 2), 16)\r\n}\r\n\r\nif (i === 1) buf[0] = parseInt(str[2], 16)\r\n\r\nreturn buf","IsDeferred":false},{"Name":"substr","Code":"const buf = new Uint8Array((str.length - 1) \u003E\u003E 1)\r\nlet i\r\nfor (i = str.length - 2; i \u003E 1; i -= 2) {\r\n buf[Math.ceil(i / 2) - 1] = parseInt(str.substr(i, 2), 16)\r\n}\r\n\r\nif (i === 1) buf[0] = parseInt(str[2], 16)\r\n\r\nreturn buf","IsDeferred":false}]}