0x608060405234801561001057600080fd5b50612d52806100206000396000f3fe608060405234801561001057600080fd5b50600436106102955760003560e01c80638456cb5911610167578063d0516650116100ce578063f6be71d111610087578063f6be71d1146105bf578063fa01dc06146105d2578063fc0c546a146105f5578063fd967f4714610608578063fe60d12c14610611578063ff4d1f251461061a57600080fd5b8063d05166501461051c578063d2223c3a1461053f578063d547741f14610552578063ec87621c14610565578063edb08f3f1461058c578063f6a03ebf146105ac57600080fd5b8063a697c35411610120578063a697c354146104b8578063a9610655146104cb578063b0604a26146104de578063b6d7a271146104f8578063be9a655514610500578063c10753291461050957600080fd5b80638456cb591461046f5780638a24c17514610477578063913b722c1461047f57806391d148541461049457806396132521146104a7578063a217fddf146104b057600080fd5b8063302df0831161020b57806359660e23116101c457806359660e23146103f85780635c975abb1461040b578063609466ab1461041657806364d1b1e614610429578063675ab9b21461043c5780636a4e0b301461045c57600080fd5b8063302df0831461037957806336568abe146103a45780633f4ba83a146103b75780634966c8e5146103bf5780635312ea8e146103d257806354d3d6ba146103e557600080fd5b80631726cbc81161025d5780631726cbc8146103005780631916558714610313578063199cbc54146103285780631c7d674114610330578063248a9ca3146103435780632f2ff15d1461036657600080fd5b806301ffc9a71461029a57806306d44d8b146102c257806306fdde03146102d95780630fb5a6b4146102ee57806313d033c0146102f7575b600080fd5b6102ad6102a8366004612792565b61062d565b60405190151581526020015b60405180910390f35b6102cb60cf5481565b6040519081526020016102b9565b6102e1610664565b6040516102b991906129ec565b6102cb60cd5481565b6102cb60cb5481565b6102cb61030e3660046125e5565b6106f2565b6103266103213660046125e5565b61071e565b005b6102cb610775565b61032661033e3660046127e8565b61080b565b6102cb610351366004612754565b60009081526065602052604090206001015490565b61032661037436600461276d565b610b8d565b61038c610387366004612754565b610bb7565b6040516001600160a01b0390911681526020016102b9565b6103266103b236600461276d565b610be7565b610326610c65565b6103266103cd3660046125e5565b610c78565b6103266103e0366004612754565b610d2f565b6103266103f336600461263b565b610da2565b610326610406366004612754565b610f2b565b60975460ff166102ad565b60d75461038c906001600160a01b031681565b61032661043736600461263b565b610ff9565b6102cb61044a3660046125e5565b60d16020526000908152604090205481565b61032661046a3660046125e5565b61100f565b610326611051565b610326611064565b6104876110d0565b6040516102b99190612977565b6102ad6104a236600461276d565b611132565b6102cb60d25481565b6102cb600081565b6103266104c6366004612602565b61115d565b6103266104d9366004612670565b6113c5565b60ce546104eb9060ff1681565b6040516102b991906129c4565b6103266113da565b6102cb60cc5481565b6103266105173660046127bc565b6114ce565b6102ad61052a3660046125e5565b60d56020526000908152604090205460ff1681565b61032661054d36600461263b565b6115b9565b61032661056036600461276d565b6115cf565b6102cb7f241ecf16d79d0f8dbfb92cbc07fe17840425976cf0667f022fe9877caa831b0881565b6102cb61059a3660046125e5565b60d36020526000908152604090205481565b6103266105ba366004612754565b6115f4565b6103266105cd366004612754565b611655565b6102ad6105e03660046125e5565b60d66020526000908152604090205460ff1681565b60ca5461038c906001600160a01b031681565b6102cb61271081565b6102cb60d05481565b610326610628366004612754565b6116b6565b60006001600160e01b03198216637965db0b60e01b148061065e57506301ffc9a760e01b6001600160e01b03198316145b92915050565b60c9805461067190612c35565b80601f016020809104026020016040519081016040528092919081815260200182805461069d90612c35565b80156106ea5780601f106106bf576101008083540402835291602001916106ea565b820191906000526020600020905b8154815290600101906020018083116106cd57829003601f168201915b505050505081565b6001600160a01b038116600090815260d3602052604081205461071483611717565b61065e9190612bdb565b61072661189c565b6001600160a01b038116600090815260d5602052604090205460ff16156107685760405162461bcd60e51b815260040161075f90612af8565b60405180910390fd5b61077281826118e4565b50565b60ca546040516370a0823160e01b815230600482015260009182916001600160a01b03909116906370a082319060240160206040518083038186803b1580156107bd57600080fd5b505afa1580156107d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107f591906128cd565b905060d254816108059190612b90565b91505090565b600054610100900460ff161580801561082b5750600054600160ff909116105b806108455750303b158015610845575060005460ff166001145b6108a85760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161075f565b6000805460ff1916600117905580156108cb576000805461ff0019166101001790555b6001600160a01b03881661092d5760405162461bcd60e51b815260206004820152602360248201527f506978666956657374696e673a20696e76616c696420746f6b656e206164647260448201526265737360e81b606482015260840161075f565b6000841161097d5760405162461bcd60e51b815260206004820152601b60248201527f506978666956657374696e673a206475726174696f6e20697320300000000000604482015260640161075f565b838611156109e15760405162461bcd60e51b815260206004820152602b60248201527f506978666956657374696e673a20636c696666206973206c6f6e67657220746860448201526a30b710323ab930ba34b7b760a91b606482015260840161075f565b426109ec8589612b90565b11610a515760405162461bcd60e51b815260206004820152602f60248201527f506978666956657374696e673a2066696e616c2074696d65206973206265666f60448201526e72652063757272656e742074696d6560881b606482015260840161075f565b612710851115610ab35760405162461bcd60e51b815260206004820152602760248201527f506978666956657374696e673a20696e76616c696420636c69666620756e6c6f6044820152660636b65642042560cc1b606482015260840161075f565b610abb6119f0565b610ac3611a17565b610ace600033611a46565b60ca80546001600160a01b0319166001600160a01b038a1617905560cd849055610af88688612b90565b60cb5560cc87905560ce805484919060ff19166001836003811115610b1f57610b1f612cc5565b02179055508151610b379060c99060208501906124d1565b5060cf8590558015610b83576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050505050505050565b600082815260656020526040902060010154610ba881611a50565b610bb28383611a5a565b505050565b600060d48281548110610bcc57610bcc612cdb565b6000918252602090912001546001600160a01b031692915050565b6001600160a01b0381163314610c575760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b606482015260840161075f565b610c618282611ae0565b5050565b6000610c7081611a50565b610772611b47565b6000610c8381611a50565b6001600160a01b038216610cd95760405162461bcd60e51b815260206004820152601d60248201527f506978666956657374696e673a20696e76616c69642061646472657373000000604482015260640161075f565b60d780546001600160a01b0319166001600160a01b0384169081179091556040519081527f4c08eecf2ad8adf4558969c980ea6cd46cd37281c57dcea2f8766243f7061181906020015b60405180910390a15050565b6000610d3a81611a50565b60cc544210610d5b5760405162461bcd60e51b815260040161075f90612a1f565b60ca54610d72906001600160a01b03163384611b99565b6040518281527ff639e28400db464cf64a55c42636df1b181f180f2ad8519cbcec893760e6e6b790602001610d23565b7f241ecf16d79d0f8dbfb92cbc07fe17840425976cf0667f022fe9877caa831b08610dcc81611a50565b60005b8251811015610bb2576000838281518110610dec57610dec612cdb565b6020908102919091018101516001600160a01b038116600090815260d690925260409091205490915060ff16610f18576000610e27826106f2565b6001600160a01b038316600090815260d3602090815260408083205460d190925282205492935090918391610e5b91612bdb565b610e659190612bdb565b90508060d06000828254610e799190612bdb565b90915550506001600160a01b038316600090815260d36020526040902054610ea2908390612b90565b6001600160a01b038416600081815260d1602090815260408083209490945560d6815290839020805460ff1916600117905582518581529081018490524292810192909252907fca09fb9069cff72da2cd2cf0b7a81984a94043b19761a6ce0db2f68590eed01f9060600160405180910390a250505b5080610f2381612c6a565b915050610dcf565b6000610f3681611a50565b600060d054610f43610775565b610f4d9190612bdb565b905080831115610fa95760405162461bcd60e51b815260206004820152602160248201527f506978666956657374696e673a20696e73756666696369656e7420616d6f756e6044820152601d60fa1b606482015260840161075f565b60ca54610fc0906001600160a01b03163385611b99565b6040518381527f6b986403eb0fb21e87afedd25dbb66c759acb19d9bf3cebea493e7ac296a71fc906020015b60405180910390a1505050565b600061100481611a50565b610c61826001611beb565b61101761189c565b33600090815260d5602052604090205460ff16156110475760405162461bcd60e51b815260040161075f90612af8565b61077233826118e4565b600061105c81611a50565b610772611cc7565b600061106f81611a50565b600060d05461107c610775565b6110869190612bdb565b60ca549091506110a0906001600160a01b03163383611b99565b6040518181527f6b986403eb0fb21e87afedd25dbb66c759acb19d9bf3cebea493e7ac296a71fc90602001610d23565b606060d480548060200260200160405190810160405280929190818152602001828054801561112857602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831161110a575b5050505050905090565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b600061116881611a50565b6001600160a01b038316600090815260d160205260409020546111de5760405162461bcd60e51b815260206004820152602860248201527f506978666956657374696e673a2062656e656669636961727920686173206e6f604482015267207265736572766560c01b606482015260840161075f565b6001600160a01b038216600090815260d16020526040902054156112615760405162461bcd60e51b815260206004820152603460248201527f506978666956657374696e673a206e65772062656e6566696369617279206164604482015273647265737320616c726561647920696e2075736560601b606482015260840161075f565b6001600160a01b03808416600081815260d16020908152604080832080549588168085528285209690965584845283905560d3825280832080548685528285205583905560d48054600181019091557f9780e26d96b1f2a9a18ef8fc72d589dbf03ef788137b64f43897e83a91e7feec0180546001600160a01b03191690951790945591815260d5909152205460ff161561132d576001600160a01b03808316600090815260d56020526040808220805460ff1990811660011790915592861682529020805490911690555b6001600160a01b038316600090815260d6602052604090205460ff1615611385576001600160a01b03808316600090815260d66020526040808220805460ff1990811660011790915592861682529020805490911690555b604080516001600160a01b038086168252841660208201527f768099735d1c322a05a5b9d7b76d99682a1833d3f7055e5ede25e0f2eeaa8c6d9101610fec565b60006113d081611a50565b610bb28383611d04565b60d7546001600160a01b031661144a5760405162461bcd60e51b815260206004820152602f60248201527f506978666956657374696e673a20696e76616c69642077686974656c6973746560448201526e642061646d696e206164647265737360881b606482015260840161075f565b60d7546060805190916001600160a01b031690829060009061146e5761146e612cdb565b60200260200101906001600160a01b031690816001600160a01b031681525050606060d05461149b610775565b6114a59190612bdb565b816000815181106114b8576114b8612cdb565b602002602001018181525050610c618282611d04565b60006114d981611a50565b60ca546001600160a01b038481169116141561155d5760405162461bcd60e51b815260206004820152603a60248201527f506978666956657374696e673a2076657374656420746f6b656e206973206e6f60448201527f7420617661696c61626c6520666f72207769746864726177616c000000000000606482015260840161075f565b6115716001600160a01b0384163384611b99565b826001600160a01b03167f9ded21b3d598bcbd911cdbd22efd30685ee3cfae8b9209896940637d0d3e6472836040516115ac91815260200190565b60405180910390a2505050565b60006115c481611a50565b610c61826000611beb565b6000828152606560205260409020600101546115ea81611a50565b610bb28383611ae0565b60006115ff81611a50565b60cc5442106116205760405162461bcd60e51b815260040161075f90612a1f565b60cc8290556040518281527fa90eb1b95730847a8accda482028369bf1adf121f830e5fcd90aa769d25dbb2290602001610d23565b600061166081611a50565b60cb5442106116815760405162461bcd60e51b815260040161075f90612a68565b60cd8290556040518281527f30e4fe018f9748721db1d6cfa76687e1ff0f75594888399281701125a49774ee90602001610d23565b60006116c181611a50565b60cb5442106116e25760405162461bcd60e51b815260040161075f90612a68565b60cb8290556040518281527ff53460e357ce9844b98d949d79cf1f3224c4c074f39806c5583c477d7e8baf6690602001610d23565b6001600160a01b038116600090815260d66020526040812054429060ff16156117575750506001600160a01b0316600090815260d1602052604090205490565b60cc5481101561176a5750600092915050565b60cb548110156117ae5760cf546001600160a01b038416600090815260d160205260409020546127109161179d91612bbc565b6117a79190612ba8565b9392505050565b60cd5460cc546117be9190612b90565b81106117e15750506001600160a01b0316600090815260d1602052604090205490565b61271060cc5460cb546117f49190612bdb565b60cd546118019190612bdb565b611809611f44565b60cf5461181890612710612bdb565b6001600160a01b038716600090815260d1602052604090205461183b9190612bbc565b6118459190612bbc565b61184f9190612ba8565b6118599190612ba8565b60cf546001600160a01b038516600090815260d160205260409020546127109161188291612bbc565b61188c9190612ba8565b6117a79190612b90565b50919050565b60975460ff16156118e25760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b604482015260640161075f565b565b60006118ef836106f2565b9050600081116119415760405162461bcd60e51b815260206004820152601f60248201527f506978666956657374696e673a206e6f20746f6b656e73206172652064756500604482015260640161075f565b6001600160a01b038316600090815260d3602052604081208054839290611969908490612b90565b925050819055508060d260008282546119829190612b90565b909155505060ca5461199e906001600160a01b03168383611b99565b816001600160a01b0316836001600160a01b03167f3737f2a73c794dafe53d8aeea06810a9ebcf7167401b259406960e088e03f830836040516119e391815260200190565b60405180910390a3505050565b600054610100900460ff166118e25760405162461bcd60e51b815260040161075f90612aad565b600054610100900460ff16611a3e5760405162461bcd60e51b815260040161075f90612aad565b6118e2611fec565b610c618282611a5a565b610772813361201f565b611a648282611132565b610c615760008281526065602090815260408083206001600160a01b03851684529091529020805460ff19166001179055611a9c3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b611aea8282611132565b15610c615760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b611b4f612078565b6097805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a1565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052610bb29084906120c1565b60005b8251811015610bb2578160d56000858481518110611c0e57611c0e612cdb565b60200260200101516001600160a01b03166001600160a01b0316815260200190815260200160002060006101000a81548160ff0219169083151502179055507f1b3ed52c96880928f4186d7d6c854feb2ca1e85844450cb97ed4f1230c1bcdc2838281518110611c8057611c80612cdb565b602002602001015183604051611cad9291906001600160a01b039290921682521515602082015260400190565b60405180910390a180611cbf81612c6a565b915050611bee565b611ccf61189c565b6097805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258611b7c3390565b815181518114611d675760405162461bcd60e51b815260206004820152602860248201527f506978666956657374696e673a204172726179206c656e6774687320646f206e6044820152670dee840dac2e8c6d60c31b606482015260840161075f565b6000805b82811015611eb9576000858281518110611d8757611d87612cdb565b602002602001015190506000858381518110611da557611da5612cdb565b602002602001015190508084611dbb9190612b90565b6001600160a01b038316600090815260d16020526040902054909450611e275760d480546001810182556000919091527f9780e26d96b1f2a9a18ef8fc72d589dbf03ef788137b64f43897e83a91e7feec0180546001600160a01b0319166001600160a01b0384161790555b6001600160a01b038216600090815260d660209081526040808320805460ff1916905560d190915281208054839290611e61908490612b90565b90915550506040518181526001600160a01b038316907fc921bf2f0f78af470ec63c910e5a5b117dbbacb71762a893af0ee8c171c030569060200160405180910390a250508080611eb190612c6a565b915050611d6b565b508060d06000828254611ecc9190612b90565b90915550611eda9050610775565b60d0541115611f3e5760405162461bcd60e51b815260206004820152602a60248201527f506978666956657374696e673a207265736572766564206578636565647320746044820152691bdd185b15995cdd195960b21b606482015260840161075f565b50505050565b600060cb5442611f549190612bdb565b9050600160ce5460ff166003811115611f6f57611f6f612cc5565b1415611f9157611f8262278d0082612c85565b611f8c9082612bdb565b905090565b600260ce5460ff166003811115611faa57611faa612cc5565b1415611fbd57611f826276a70082612c85565b600360ce5460ff166003811115611fd657611fd6612cc5565b1415611fe957611f826201518082612c85565b90565b600054610100900460ff166120135760405162461bcd60e51b815260040161075f90612aad565b6097805460ff19169055565b6120298282611132565b610c615761203681612196565b6120418360206121a8565b604051602001612052929190612902565b60408051601f198184030181529082905262461bcd60e51b825261075f916004016129ec565b60975460ff166118e25760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b604482015260640161075f565b6000612116826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166123449092919063ffffffff16565b90508051600014806121375750808060200190518101906121379190612732565b610bb25760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e6044820152691bdd081cdd58d8d9595960b21b606482015260840161075f565b606061065e6001600160a01b03831660145b606060006121b7836002612bbc565b6121c2906002612b90565b67ffffffffffffffff8111156121da576121da612cf1565b6040519080825280601f01601f191660200182016040528015612204576020820181803683370190505b509050600360fc1b8160008151811061221f5761221f612cdb565b60200101906001600160f81b031916908160001a905350600f60fb1b8160018151811061224e5761224e612cdb565b60200101906001600160f81b031916908160001a9053506000612272846002612bbc565b61227d906001612b90565b90505b60018111156122f5576f181899199a1a9b1b9c1cb0b131b232b360811b85600f16601081106122b1576122b1612cdb565b1a60f81b8282815181106122c7576122c7612cdb565b60200101906001600160f81b031916908160001a90535060049490941c936122ee81612c1e565b9050612280565b5083156117a75760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e74604482015260640161075f565b6060612353848460008561235b565b949350505050565b6060824710156123bc5760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f6044820152651c8818d85b1b60d21b606482015260840161075f565b600080866001600160a01b031685876040516123d891906128e6565b60006040518083038185875af1925050503d8060008114612415576040519150601f19603f3d011682016040523d82523d6000602084013e61241a565b606091505b509150915061242b87838387612436565b979650505050505050565b606083156124a257825161249b576001600160a01b0385163b61249b5760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161075f565b5081612353565b61235383838151156124b75781518083602001fd5b8060405162461bcd60e51b815260040161075f91906129ec565b8280546124dd90612c35565b90600052602060002090601f0160209004810192826124ff5760008555612545565b82601f1061251857805160ff1916838001178555612545565b82800160010185558215612545579182015b8281111561254557825182559160200191906001019061252a565b50612551929150612555565b5090565b5b808211156125515760008155600101612556565b600082601f83011261257b57600080fd5b8135602061259061258b83612b6c565b612b3b565b80838252828201915082860187848660051b89010111156125b057600080fd5b60005b858110156125d85781356125c681612d07565b845292840192908401906001016125b3565b5090979650505050505050565b6000602082840312156125f757600080fd5b81356117a781612d07565b6000806040838503121561261557600080fd5b823561262081612d07565b9150602083013561263081612d07565b809150509250929050565b60006020828403121561264d57600080fd5b813567ffffffffffffffff81111561266457600080fd5b6123538482850161256a565b6000806040838503121561268357600080fd5b823567ffffffffffffffff8082111561269b57600080fd5b6126a78683870161256a565b93506020915081850135818111156126be57600080fd5b85019050601f810186136126d157600080fd5b80356126df61258b82612b6c565b80828252848201915084840189868560051b87010111156126ff57600080fd5b600094505b83851015612722578035835260019490940193918501918501612704565b5080955050505050509250929050565b60006020828403121561274457600080fd5b815180151581146117a757600080fd5b60006020828403121561276657600080fd5b5035919050565b6000806040838503121561278057600080fd5b82359150602083013561263081612d07565b6000602082840312156127a457600080fd5b81356001600160e01b0319811681146117a757600080fd5b600080604083850312156127cf57600080fd5b82356127da81612d07565b946020939093013593505050565b600080600080600080600060e0888a03121561280357600080fd5b873561280e81612d07565b9650602088810135965060408901359550606089013594506080890135935060a08901356004811061283f57600080fd5b925060c089013567ffffffffffffffff8082111561285c57600080fd5b818b0191508b601f83011261287057600080fd5b81358181111561288257612882612cf1565b612894601f8201601f19168501612b3b565b91508082528c848285010111156128aa57600080fd5b808484018584013760008482840101525080935050505092959891949750929550565b6000602082840312156128df57600080fd5b5051919050565b600082516128f8818460208701612bf2565b9190910192915050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161293a816017850160208801612bf2565b7001034b99036b4b9b9b4b733903937b6329607d1b601791840191820152835161296b816028840160208801612bf2565b01602801949350505050565b6020808252825182820181905260009190848201906040850190845b818110156129b85783516001600160a01b031683529284019291840191600101612993565b50909695505050505050565b60208101600483106129e657634e487b7160e01b600052602160045260246000fd5b91905290565b6020815260008251806020840152612a0b816040850160208701612bf2565b601f01601f19169190910160400192915050565b60208082526029908201527f506978666956657374696e673a2076657374696e672068617320616c726561646040820152681e481cdd185c9d195960ba1b606082015260800190565b60208082526025908201527f506978666956657374696e673a20636c6966662068617320616c726561647920604082015264195b99195960da1b606082015260800190565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b60208082526023908201527f506978666956657374696e673a2062656e65666963696172792069732066726f6040820152623d32b760e91b606082015260800190565b604051601f8201601f1916810167ffffffffffffffff81118282101715612b6457612b64612cf1565b604052919050565b600067ffffffffffffffff821115612b8657612b86612cf1565b5060051b60200190565b60008219821115612ba357612ba3612c99565b500190565b600082612bb757612bb7612caf565b500490565b6000816000190483118215151615612bd657612bd6612c99565b500290565b600082821015612bed57612bed612c99565b500390565b60005b83811015612c0d578181015183820152602001612bf5565b83811115611f3e5750506000910152565b600081612c2d57612c2d612c99565b506000190190565b600181811c90821680612c4957607f821691505b6020821081141561189657634e487b7160e01b600052602260045260246000fd5b6000600019821415612c7e57612c7e612c99565b5060010190565b600082612c9457612c94612caf565b500690565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052602160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6001600160a01b038116811461077257600080fdfea26469706673582212204cc6b142549e98efe99abc9027388e6b74c065304a2efc3890c9c995fe77493164736f6c63430008070033