Returned Raw Transaction Hex :
0x02f94854830b67d226018201f783518030944e59b44847b379578588920ca78fbf26c0b4956c80b947eab61d8d197c7b67056107063d0a0a4e5654d861c06eac919cccadcaec251b53da610160604052348015610010575f80fd5b506040516147aa3803806147aa83398101604081905261002f916102f9565b604051806060016040528060248152602001614786602491396040805180820190915260018152601960f91b602082015262015180836001600160a01b03811661009357604051636116401160e11b81525f60048201526024015b60405180910390fd5b600180546001600160d01b0316600160d01b65ffffffffffff8516021790556100bc5f82610176565b506100cc915083905060036101e5565b610120526100db8160046101e5565b61014052815160208084019190912060e052815190820120610100524660a05261016760e05161010051604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60208201529081019290925260608201524660808201523060a08201525f9060c00160405160208183030381529060405280519060200120905090565b60805250503060c052506104d5565b5f826101d2575f61018f6002546001600160a01b031690565b6001600160a01b0316146101b657604051631fe1e13d60e11b815260040160405180910390fd5b600280546001600160a01b0319166001600160a01b0384161790555b6101dc8383610215565b90505b92915050565b5f602083511015610200576101f9836102bc565b90506101df565b8161020b84826103be565b5060ff90506101df565b5f828152602081815260408083206001600160a01b038516845290915281205460ff166102b5575f838152602081815260408083206001600160a01b03861684529091529020805460ff1916600117905561026d3390565b6001600160a01b0316826001600160a01b0316847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45060016101df565b505f6101df565b5f80829050601f815111156102e6578260405163305a27a960e01b815260040161008a919061047d565b80516102f1826104b2565b179392505050565b5f60208284031215610309575f80fd5b81516001600160a01b038116811461031f575f80fd5b9392505050565b634e487b7160e01b5f52604160045260245ffd5b600181811c9082168061034e57607f821691505b60208210810361036c57634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156103b957805f5260205f20601f840160051c810160208510156103975750805b601f840160051c820191505b818110156103b6575f81556001016103a3565b50505b505050565b81516001600160401b038111156103d7576103d7610326565b6103eb816103e5845461033a565b84610372565b602080601f83116001811461041e575f84156104075750858301515b5f19600386901b1c1916600185901b178555610475565b5f85815260208120601f198616915b8281101561044c5788860151825594840194600190910190840161042d565b508582101561046957878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b8051602080830151919081101561036c575f1960209190910360031b1b16919050565b60805160a05160c05160e0516101005161012051610140516142606105265f395f6120a101525f61207401525f6131f001525f6131c801525f61312301525f61314d01525f61317701526142605ff3fe608060405234801561000f575f80fd5b506004361061030f575f3560e01c806391d148541161019d578063cab7e8eb116100e8578063d94e238c11610093578063f9fdb5231161006e578063f9fdb5231461084e578063fb0d34b114610861578063fedfc5ce14610874575f80fd5b8063d94e238c14610813578063d9697f031461081c578063ecc06ae61461082f575f80fd5b8063cf6eefb7116100c3578063cf6eefb7146107ac578063d547741f146107f8578063d602b9fd1461080b575f80fd5b8063cab7e8eb14610728578063cc8463c81461079c578063cefc1429146107a4575f80fd5b8063a978018e11610148578063b6bbdfce11610123578063b6bbdfce146106e0578063b85a6616146106f3578063c2adb97814610715575f80fd5b8063a978018e14610693578063afe3d6fd146106a6578063b3d35839146106b9575f80fd5b8063a1eda53c11610178578063a1eda53c1461065c578063a217fddf14610683578063a70b9f0c1461068a575f80fd5b806391d14854146105f357806394408b9a146106365780639ad2aa3814610649575f80fd5b8063484d1ad61161025d57806374f8e9e41161020857806384b0196e116101e357806384b0196e146105b257806384ef8ffc146105cd5780638da5cb5b146105eb575f80fd5b806374f8e9e4146104d25780637adbf9731461055a5780637dc0d1d01461056d575f80fd5b806357c836ba1161023857806357c836ba14610499578063634e93da146104ac578063649a5ec7146104bf575f80fd5b8063484d1ad61461044c5780634a1e7ccc1461045f578063514ebb4214610472575f80fd5b8063248a9ca3116102bd57806336568abe1161029857806336568abe146104135780633f328703146104265780634194d03e14610439575f80fd5b8063248a9ca3146103bc5780632e48152c146103de5780632f2ff15d14610400575f80fd5b806307bd0265116102ed57806307bd02651461036c5780630aa6220b146103a1578063146cedd4146103a9575f80fd5b806301ffc9a714610313578063022d63fb1461033b5780630579636314610357575b5f80fd5b610326610321366004613759565b61089b565b60405190151581526020015b60405180910390f35b620697805b60405165ffffffffffff9091168152602001610332565b61036a6103653660046137ca565b6108f6565b005b6103937fd8aa0f3194971a2a116679f7c2090f6939c8d4e01a2a8d7e41d55e5351469e6381565b604051908152602001610332565b61036a61090f565b61036a6103b7366004613959565b610924565b6103936103ca366004613a57565b5f9081526020819052604090206001015490565b6103266103ec366004613a6e565b60086020525f908152604090205460ff1681565b61036a61040e366004613a87565b610bfd565b61036a610421366004613a87565b610c42565b610393610434366004613a6e565b610d4c565b61036a610447366004613a57565b610df0565b61036a61045a366004613a6e565b610e03565b61036a61046d366004613aa8565b610e38565b6103937f4d9863970d41475dce450df64b8c3f5625245716124ab2023150cc6828d194c481565b6103936104a7366004613aea565b610e80565b61036a6104ba366004613a6e565b610f2e565b61036a6104cd366004613b12565b610f41565b6105216104e0366004613a6e565b60066020525f908152604090205465ffffffffffff8116906601000000000000900479ffffffffffffffffffffffffffffffffffffffffffffffffffff1682565b6040805165ffffffffffff909316835279ffffffffffffffffffffffffffffffffffffffffffffffffffff909116602083015201610332565b61036a610568366004613a6e565b610f54565b60055461058d9073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610332565b6105ba610f67565b6040516103329796959493929190613b83565b60025473ffffffffffffffffffffffffffffffffffffffff1661058d565b61058d610fc5565b610326610601366004613a87565b5f9182526020828152604080842073ffffffffffffffffffffffffffffffffffffffff93909316845291905290205460ff1690565b61036a610644366004613a6e565b610fea565b61036a610657366004613c43565b61101e565b6106646110bb565b6040805165ffffffffffff938416815292909116602083015201610332565b6103935f81565b61039361708081565b61036a6106a1366004613aea565b611135565b6103936106b4366004613aea565b611149565b6103937f3c4a2d89ed8b4cf4347fec87df1c38410f8fc538bf9fd64c10f2717bc0feff3681565b61036a6106ee366004613c43565b6111ef565b610326610701366004613a6e565b60096020525f908152604090205460ff1681565b61036a610723366004613d75565b61125d565b610326610736366004613aea565b73ffffffffffffffffffffffffffffffffffffffff919091165f9081527f9fda4043e343028034f74a0c74b98e8f9361a40465e5a21df3af3d29ba3b850060209081526040808320600885901c8452909152902054600160ff9092169190911b16151590565b610340611394565b61036a611431565b6001546040805173ffffffffffffffffffffffffffffffffffffffff831681527401000000000000000000000000000000000000000090920465ffffffffffff16602083015201610332565b61036a610806366004613a87565b61148d565b61036a6114ce565b610393600a5481565b61039361082a366004613a6e565b6114e0565b61039361083d366004613a6e565b60076020525f908152604090205481565b61039361085c366004613eb0565b6115af565b61036a61086f366004613a6e565b611740565b6103937f01e3814859e1fb52a3619fc87e5bf0e88a404a49d305aef38ab09dc39741b1a781565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167f314987860000000000000000000000000000000000000000000000000000000014806108f057506108f0826118ee565b92915050565b5f61090081611984565b61090a838361198e565b505050565b5f61091981611984565b610921611a65565b50565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000810460ff16159067ffffffffffffffff165f8115801561096e5750825b90505f8267ffffffffffffffff16600114801561098a5750303b155b905081158015610998575080155b156109cf576040517ff92ee8a900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b84547fffffffffffffffffffffffffffffffffffffffffffffffff00000000000000001660011785558315610a305784547fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff16680100000000000000001785555b610a3989611a71565b87515f5b81811015610b4c575f8a8281518110610a5857610a58613ee2565b602002602001015190505f73ffffffffffffffffffffffffffffffffffffffff16816020015173ffffffffffffffffffffffffffffffffffffffff1603610acb576040517fd92e233d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610adc815f01518260200151611b2c565b5080517f3c4a2d89ed8b4cf4347fec87df1c38410f8fc538bf9fd64c10f2717bc0feff361480610b2c575080517f01e3814859e1fb52a3619fc87e5bf0e88a404a49d305aef38ab09dc39741b1a7145b15610b4357610b4381602001518260400151611bea565b50600101610a3d565b505086515f5b81811015610b8657610b7e898281518110610b6f57610b6f613ee2565b6020026020010151600161198e565b600101610b52565b50610b9087611d12565b508315610bf25784547fffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffffffff168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b505050505050505050565b81610c34576040517f3fc3c27a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610c3e8282611d8a565b5050565b81158015610c6a575060025473ffffffffffffffffffffffffffffffffffffffff8281169116145b15610d425760015473ffffffffffffffffffffffffffffffffffffffff81169074010000000000000000000000000000000000000000900465ffffffffffff1681151580610cbe575065ffffffffffff8116155b80610cd157504265ffffffffffff821610155b15610d17576040517f19ca5ebb00000000000000000000000000000000000000000000000000000000815265ffffffffffff821660048201526024015b60405180910390fd5b5050600180547fffffffffffff000000000000ffffffffffffffffffffffffffffffffffffffff1690555b610c3e8282611db4565b73ffffffffffffffffffffffffffffffffffffffff81165f9081526006602052604081205461708090610d879065ffffffffffff1642613f3c565b610d919190613f7c565b15610d9d57505f919050565b5073ffffffffffffffffffffffffffffffffffffffff165f908152600660205260409020546601000000000000900479ffffffffffffffffffffffffffffffffffffffffffffffffffff1690565b919050565b5f610dfa81611984565b610c3e82611d12565b7f4d9863970d41475dce450df64b8c3f5625245716124ab2023150cc6828d194c4610e2d81611984565b610c3e826001611e0d565b5f610e4281611984565b82515f5b81811015610e7957610e71858281518110610e6357610e63613ee2565b60200260200101518561198e565b600101610e46565b5050505050565b6005546040517f16345f1800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84811660048301525f92610f27928592670de0b6b3a76400009216906316345f1890602401602060405180830381865afa158015610efe573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f229190613fb4565b611e8f565b9392505050565b5f610f3881611984565b610c3e82611f86565b5f610f4b81611984565b610c3e82611ffe565b5f610f5e81611984565b610c3e82611a71565b5f6060805f805f6060610f7861206d565b610f8061209a565b604080515f808252602082019092527f0f000000000000000000000000000000000000000000000000000000000000009b939a50919850469750309650945092509050565b5f610fe560025473ffffffffffffffffffffffffffffffffffffffff1690565b905090565b7f4d9863970d41475dce450df64b8c3f5625245716124ab2023150cc6828d194c461101481611984565b610c3e825f611e0d565b5f61102881611984565b611031846120c7565b6040517f9dc29fac00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff848116600483015260248201849052851690639dc29fac906044015b5f604051808303815f87803b15801561109f575f80fd5b505af11580156110b1573d5f803e3d5ffd5b5050505050505050565b6002545f907a010000000000000000000000000000000000000000000000000000900465ffffffffffff1680151580156110fd57504265ffffffffffff821610155b611108575f8061112d565b60025474010000000000000000000000000000000000000000900465ffffffffffff16815b915091509091565b5f61113f81611984565b61090a8383611bea565b6005546040517f16345f1800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84811660048301525f92610f27929116906316345f1890602401602060405180830381865afa1580156111bc573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111e09190613fb4565b83670de0b6b3a7640000611e8f565b5f6111f981611984565b611202846120c7565b6040517f40c10f1900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8481166004830152602482018490528516906340c10f1990604401611088565b7f3c4a2d89ed8b4cf4347fec87df1c38410f8fc538bf9fd64c10f2717bc0feff3661128781611984565b5f6112928484612125565b8451516020860151606087015192935090915f5b83811015611348575f885f015182815181106112c4576112c4613ee2565b602002602001015190505f60018111156112e0576112e0613fcb565b815160018111156112f3576112f3613fcb565b036113125761130d816020015185888785604001516123b4565b61133f565b60018151600181111561132757611327613fcb565b0361133f5761133f81602001518583604001516125f6565b506001016112a6565b50604051819073ffffffffffffffffffffffffffffffffffffffff8416907fe71acb6b8ae22e3f7ecc6846c7e70f3a00e466d2981c718d24ce9a7507d678a9905f90a350505050505050565b6002545f907a010000000000000000000000000000000000000000000000000000900465ffffffffffff1680151580156113d557504265ffffffffffff8216105b611407576001547a010000000000000000000000000000000000000000000000000000900465ffffffffffff1661142b565b60025474010000000000000000000000000000000000000000900465ffffffffffff165b91505090565b60015473ffffffffffffffffffffffffffffffffffffffff16338114611485576040517fc22c8022000000000000000000000000000000000000000000000000000000008152336004820152602401610d0e565b6109216126e5565b816114c4576040517f3fc3c27a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610c3e82826127d6565b5f6114d881611984565b6109216127fa565b73ffffffffffffffffffffffffffffffffffffffff81165f908152600760209081526040808320546006909252822054617080906115269065ffffffffffff1642613f3c565b6115309190613f7c565b1561153b5792915050565b73ffffffffffffffffffffffffffffffffffffffff83165f908152600660205260409020546601000000000000900479ffffffffffffffffffffffffffffffffffffffffffffffffffff16808211156115a0576115988183613f3c565b949350505050565b505f9392505050565b50919050565b5f80825f01515167ffffffffffffffff8111156115ce576115ce6137fb565b6040519080825280602002602001820160405280156115f7578160200160208202803683370190505b508351519091505f5b818110156116525761162d855f0151828151811061162057611620613ee2565b6020026020010151612804565b83828151811061163f5761163f613ee2565b6020908102919091010152600101611600565b506115986040518060800160405280605081526020016141a76050913960405160200161167f919061400f565b60405160208183030381529060405280519060200120836040516020016116a6919061401a565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181528282528051602091820120898201518a8401516060808d0151948701979097529385019190915273ffffffffffffffffffffffffffffffffffffffff1693830193909352608082015260a081019190915260c0016040516020818303038152906040528051906020012061289c565b7fd8aa0f3194971a2a116679f7c2090f6939c8d4e01a2a8d7e41d55e5351469e6361176a81611984565b611773826128e3565b73ffffffffffffffffffffffffffffffffffffffff82165f9081527face8229bb5383429f76d25c60fcf365f2df6e5595b1ca48828b6fedb2d35f9f8602052604090205460ff1615801561180b575073ffffffffffffffffffffffffffffffffffffffff82165f9081527ff878555ae016124451d960d7c5096c165568b65d19ee1151d93fc4c233d234a2602052604090205460ff16155b15611842576040517fd954416a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b604051806040016040528061185642612942565b65ffffffffffff90811682525f602092830181905273ffffffffffffffffffffffffffffffffffffffff86168082526006845260408083208651969095015179ffffffffffffffffffffffffffffffffffffffffffffffffffff166601000000000000029590931694909417909255517fcaf1b0aa786878f565035acf21b31510cafd90559c7ed4993d960aaa5390c20d9190a25050565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167f7965db0b0000000000000000000000000000000000000000000000000000000014806108f057507f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316146108f0565b6109218133612991565b73ffffffffffffffffffffffffffffffffffffffff82166119db576040517fd92e233d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff82165f8181526009602090815260409182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001685151590811790915591519182527fb7259c847d5744bbcca4f3252f5f5370e85209e35435114d02dc121c24ee0ed391015b60405180910390a25050565b611a6f5f80612a16565b565b73ffffffffffffffffffffffffffffffffffffffff8116611abe576040517fd92e233d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600580547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83169081179091556040517f3f32684a32a11dabdbb8c0177de80aa3ae36a004d75210335b49e544e48cd0aa905f90a250565b5f82611be0575f611b5260025473ffffffffffffffffffffffffffffffffffffffff1690565b73ffffffffffffffffffffffffffffffffffffffff1614611b9f576040517f3fc3c27a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600280547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84161790555b610f278383612b6f565b73ffffffffffffffffffffffffffffffffffffffff82165f9081527face8229bb5383429f76d25c60fcf365f2df6e5595b1ca48828b6fedb2d35f9f8602052604090205460ff16158015611c82575073ffffffffffffffffffffffffffffffffffffffff82165f9081527ff878555ae016124451d960d7c5096c165568b65d19ee1151d93fc4c233d234a2602052604090205460ff16155b15611cb9576040517fd954416a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff82165f8181526007602052604090819020839055517f48c7da01e2682c3ce96e683fe7d8cdb3ac07959e743ef43b332b7ea22c9ba14190611a599084815260200190565b805f03611d4b576040517f831761d700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600a8110611d85576040517fe56d58cf00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600a55565b5f82815260208190526040902060010154611da481611984565b611dae8383611b2c565b50505050565b73ffffffffffffffffffffffffffffffffffffffff81163314611e03576040517f6697b23200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61090a8282612c68565b73ffffffffffffffffffffffffffffffffffffffff82165f8181526008602090815260409182902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001685151590811790915591519182527f8458655aae38234254cec6eb5a3b01cea3c62fc526cbde2ca6f576776436ddbc9101611a59565b5f838302817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff85870982811083820303915050805f03611ee257838281611ed857611ed8613f4f565b0492505050610f27565b808411611f1b576040517f227bc15300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f848688095f868103871696879004966002600389028118808a02820302808a02820302808a02820302808a02820302808a02820302808a02909103029181900381900460010186841190950394909402919094039290920491909117919091029150509392505050565b5f611f8f611394565b611f9842612942565b611fa2919061404f565b9050611fae8282612cc9565b60405165ffffffffffff8216815273ffffffffffffffffffffffffffffffffffffffff8316907f3377dc44241e779dd06afab5b788a35ca5f3b778836e2990bdb26a2a4b2e5ed690602001611a59565b5f61200882612d64565b61201142612942565b61201b919061404f565b90506120278282612a16565b6040805165ffffffffffff8085168252831660208201527ff1038c18cf84a56e432fdbfaf746924b7ea511dfe03a6506a0ceba4888788d9b910160405180910390a15050565b6060610fe57f00000000000000000000000000000000000000000000000000000000000000006003612dab565b6060610fe57f00000000000000000000000000000000000000000000000000000000000000006004612dab565b73ffffffffffffffffffffffffffffffffffffffff81165f9081526009602052604090205460ff16610921576040517f981a2a2b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b8151518151606091905f612138866115af565b60608701516020880151919250905f8467ffffffffffffffff811115612160576121606137fb565b604051908082528060200260200182016040528015612189578160200160208202803683370190505b50905042896040015110156121ca576040517f0819bdcd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6121d661708042614075565b89604001511115612213576040517f852e791000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600a54851461224e576040517ff6574a9000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b855f03612287576040517f90b2882800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6122b1827f3c4a2d89ed8b4cf4347fec87df1c38410f8fc538bf9fd64c10f2717bc0feff36612e54565b6122bb8284612e67565b5f5b885181101561236a575f6122f38a83815181106122dc576122dc613ee2565b602002602001015187612f1790919063ffffffff16565b905061231f817f01e3814859e1fb52a3619fc87e5bf0e88a404a49d305aef38ab09dc39741b1a7612e54565b6123298186612e67565b8083838151811061233c5761233c613ee2565b73ffffffffffffffffffffffffffffffffffffffff90921660209283029190910190910152506001016122bd565b505f5b868110156123a7575f8a5f0151828151811061238b5761238b613ee2565b6020026020010151905061239e81612f3f565b5060010161236d565b5098975050505050505050565b5f6123c186868685612f89565b90506123cc816130ab565b73ffffffffffffffffffffffffffffffffffffffff86165f90815260066020819052604090912080549091906124299084906601000000000000900479ffffffffffffffffffffffffffffffffffffffffffffffffffff16614088565b92506101000a81548179ffffffffffffffffffffffffffffffffffffffffffffffffffff021916908379ffffffffffffffffffffffffffffffffffffffffffffffffffff1602179055505f5b845181101561256a57612487826130ab565b60065f87848151811061249c5761249c613ee2565b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f0160068282829054906101000a900479ffffffffffffffffffffffffffffffffffffffffffffffffffff166125139190614088565b92506101000a81548179ffffffffffffffffffffffffffffffffffffffffffffffffffff021916908379ffffffffffffffffffffffffffffffffffffffffffffffffffff1602179055508080600101915050612475565b506040517f40c10f1900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8481166004830152602482018490528716906340c10f19906044015f604051808303815f87803b1580156125d8575f80fd5b505af11580156125ea573d5f803e3d5ffd5b50505050505050505050565b6040517f9dc29fac00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff838116600483015260248201839052841690639dc29fac906044015f604051808303815f87803b158015612663575f80fd5b505af1158015612675573d5f803e3d5ffd5b505050508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fcd44924f01dc2ef1a6ce7f4b7ea7ec396efdd6d4c586ce0c21b1ceb21e94b6b4836040516126d891815260200190565b60405180910390a3505050565b60015473ffffffffffffffffffffffffffffffffffffffff81169074010000000000000000000000000000000000000000900465ffffffffffff1680158061273557504265ffffffffffff821610155b15612776576040517f19ca5ebb00000000000000000000000000000000000000000000000000000000815265ffffffffffff82166004820152602401610d0e565b61279e5f61279960025473ffffffffffffffffffffffffffffffffffffffff1690565b612c68565b506127a95f83611b2c565b5050600180547fffffffffffff000000000000000000000000000000000000000000000000000016905550565b5f828152602081905260409020600101546127f081611984565b611dae8383612c68565b611a6f5f80612cc9565b5f6040518060600160405280603481526020016141f7603491396040518060800160405280605081526020016141a7605091396040516020016128489291906140bb565b60405160208183030381529060405280519060200120825f01518360200151846040015160405160200161287f94939291906140cf565b604051602081830303815290604052805190602001209050919050565b5f6108f06128a861310a565b836040517f19010000000000000000000000000000000000000000000000000000000000008152600281019290925260228201526042902090565b73ffffffffffffffffffffffffffffffffffffffff81165f9081526008602052604090205460ff1615610921576040517fd2d543f600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f65ffffffffffff82111561298d576040517f6dfcc6500000000000000000000000000000000000000000000000000000000081526030600482015260248101839052604401610d0e565b5090565b5f8281526020818152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff16610c3e576040517fe2517d3f00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8216600482015260248101839052604401610d0e565b6002547a010000000000000000000000000000000000000000000000000000900465ffffffffffff168015612aea574265ffffffffffff82161015612ac1576002546001805479ffffffffffffffffffffffffffffffffffffffffffffffffffff167401000000000000000000000000000000000000000090920465ffffffffffff167a01000000000000000000000000000000000000000000000000000002919091179055612aea565b6040517f2b1fa2edafe6f7b9e97c1a9e0c3660e645beb2dcaa2d45bdbf9beaf5472e1ec5905f90a15b506002805473ffffffffffffffffffffffffffffffffffffffff167401000000000000000000000000000000000000000065ffffffffffff9485160279ffffffffffffffffffffffffffffffffffffffffffffffffffff16177a0100000000000000000000000000000000000000000000000000009290931691909102919091179055565b5f8281526020818152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915281205460ff16612c61575f8381526020818152604080832073ffffffffffffffffffffffffffffffffffffffff86168452909152902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055612bff3390565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16847f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45060016108f0565b505f6108f0565b5f82158015612c91575060025473ffffffffffffffffffffffffffffffffffffffff8381169116145b15612cbf57600280547fffffffffffffffffffffffff00000000000000000000000000000000000000001690555b610f278383613240565b600180547401000000000000000000000000000000000000000065ffffffffffff84811682027fffffffffffff0000000000000000000000000000000000000000000000000000841673ffffffffffffffffffffffffffffffffffffffff88161717909355900416801561090a576040517f8886ebfc4259abdbc16601dd8fb5678e54878f47b3c34836cfc51154a9605109905f90a1505050565b5f80612d6e611394565b90508065ffffffffffff168365ffffffffffff1611612d9657612d91838261413c565b610f27565b610f2765ffffffffffff8416620697806132f9565b606060ff8314612dc557612dbe8361330e565b90506108f0565b818054612dd19061415b565b80601f0160208091040260200160405190810160405280929190818152602001828054612dfd9061415b565b8015612e485780601f10612e1f57610100808354040283529160200191612e48565b820191905f5260205f20905b815481529060010190602001808311612e2b57829003601f168201915b505050505090506108f0565b612e5e8183612991565b610c3e826128e3565b73ffffffffffffffffffffffffffffffffffffffff82165f9081527f9fda4043e343028034f74a0c74b98e8f9361a40465e5a21df3af3d29ba3b850060208181526040808420600886901c808652925283208054600160ff871690811b9182189283905593949293929091908183169003612f0e576040517f1f6d5aef00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50505050505050565b5f805f80612f25868661334b565b925092509250612f358282613394565b5090949350505050565b80604001515f03612f7c576040517f1f2a200500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61092181602001516120c7565b5f80612f958684611149565b9050805f03612fd0576040517f1f2a200500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f612fdb8683613497565b905081811015613021576040517fe812b7730000000000000000000000000000000000000000000000000000000081526004810182905260248101839052604401610d0e565b5f5b855181101561309f575f61305087838151811061304257613042613ee2565b602002602001015185613497565b905083811015613096576040517fe812b7730000000000000000000000000000000000000000000000000000000081526004810182905260248101859052604401610d0e565b50600101613023565b50909695505050505050565b5f79ffffffffffffffffffffffffffffffffffffffffffffffffffff82111561298d576040517f6dfcc65000000000000000000000000000000000000000000000000000000000815260d0600482015260248101839052604401610d0e565b5f3073ffffffffffffffffffffffffffffffffffffffff7f00000000000000000000000000000000000000000000000000000000000000001614801561316f57507f000000000000000000000000000000000000000000000000000000000000000046145b1561319957507f000000000000000000000000000000000000000000000000000000000000000090565b610fe5604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f60208201527f0000000000000000000000000000000000000000000000000000000000000000918101919091527f000000000000000000000000000000000000000000000000000000000000000060608201524660808201523060a08201525f9060c00160405160208183030381529060405280519060200120905090565b5f8281526020818152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915281205460ff1615612c61575f8381526020818152604080832073ffffffffffffffffffffffffffffffffffffffff8616808552925280832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016905551339286917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45060016108f0565b5f8183106133075781610f27565b5090919050565b60605f61331a83613626565b6040805160208082528183019092529192505f91906020820181803683375050509182525060208101929092525090565b5f805f8351604103613382576020840151604085015160608601515f1a61337488828585613666565b95509550955050505061338d565b505081515f91506002905b9250925092565b5f8260038111156133a7576133a7613fcb565b036133b0575050565b60018260038111156133c4576133c4613fcb565b036133fb576040517ff645eedf00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600282600381111561340f5761340f613fcb565b03613449576040517ffce698f700000000000000000000000000000000000000000000000000000000815260048101829052602401610d0e565b600382600381111561345d5761345d613fcb565b03610c3e576040517fd78bce0c00000000000000000000000000000000000000000000000000000000815260048101829052602401610d0e565b73ffffffffffffffffffffffffffffffffffffffff82165f81815260066020908152604080832081518083018352905465ffffffffffff8082168352660100000000000090910479ffffffffffffffffffffffffffffffffffffffffffffffffffff16828501529484526007909252822054815192939192909161708091613520911642613f3c565b61352a9190613f7c565b156135835761353842612942565b73ffffffffffffffffffffffffffffffffffffffff86165f90815260066020526040902065ffffffffffff91909116905580841161357a5783925050506108f0565b91506108f09050565b80826020015179ffffffffffffffffffffffffffffffffffffffffffffffffffff16856135b09190614075565b111561361c5780826020015179ffffffffffffffffffffffffffffffffffffffffffffffffffff1610156136125760208201516136099079ffffffffffffffffffffffffffffffffffffffffffffffffffff1682613f3c565b925050506108f0565b5f925050506108f0565b83925050506108f0565b5f60ff8216601f8111156108f0576040517fb3512b0c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f80807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a084111561369f57505f9150600390508261374f565b604080515f808252602082018084528a905260ff891692820192909252606081018790526080810186905260019060a0016020604051602081039080840390855afa1580156136f0573d5f803e3d5ffd5b50506040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0015191505073ffffffffffffffffffffffffffffffffffffffff811661374657505f92506001915082905061374f565b92505f91508190505b9450945094915050565b5f60208284031215613769575f80fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114610f27575f80fd5b803573ffffffffffffffffffffffffffffffffffffffff81168114610deb575f80fd5b80358015158114610deb575f80fd5b5f80604083850312156137db575f80fd5b6137e483613798565b91506137f2602084016137bb565b90509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6040516060810167ffffffffffffffff8111828210171561384b5761384b6137fb565b60405290565b6040516080810167ffffffffffffffff8111828210171561384b5761384b6137fb565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156138bb576138bb6137fb565b604052919050565b5f67ffffffffffffffff8211156138dc576138dc6137fb565b5060051b60200190565b5f82601f8301126138f5575f80fd5b8135602061390a613905836138c3565b613874565b8083825260208201915060208460051b87010193508684111561392b575f80fd5b602086015b8481101561394e5761394181613798565b8352918301918301613930565b509695505050505050565b5f805f806080858703121561396c575f80fd5b61397585613798565b935060208086013567ffffffffffffffff80821115613992575f80fd5b818801915088601f8301126139a5575f80fd5b81356139b3613905826138c3565b8181526060918202840185019185820191908c8411156139d1575f80fd5b948601945b83861015613a205780868e0312156139ec575f80fd5b6139f4613828565b86358152613a03888801613798565b8189015260408781013590820152835294850194918601916139d6565b50975050506040880135925080831115613a38575f80fd5b5050613a46878288016138e6565b949793965093946060013593505050565b5f60208284031215613a67575f80fd5b5035919050565b5f60208284031215613a7e575f80fd5b610f2782613798565b5f8060408385031215613a98575f80fd5b823591506137f260208401613798565b5f8060408385031215613ab9575f80fd5b823567ffffffffffffffff811115613acf575f80fd5b613adb858286016138e6565b9250506137f2602084016137bb565b5f8060408385031215613afb575f80fd5b613b0483613798565b946020939093013593505050565b5f60208284031215613b22575f80fd5b813565ffffffffffff81168114610f27575f80fd5b5f81518084528060208401602086015e5f6020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b7fff00000000000000000000000000000000000000000000000000000000000000881681525f602060e06020840152613bbf60e084018a613b37565b8381036040850152613bd1818a613b37565b6060850189905273ffffffffffffffffffffffffffffffffffffffff8816608086015260a0850187905284810360c0860152855180825260208088019350909101905f5b81811015613c3157835183529284019291840191600101613c15565b50909c9b505050505050505050505050565b5f805f60608486031215613c55575f80fd5b613c5e84613798565b9250613c6c60208501613798565b9150604084013590509250925092565b5f60808284031215613c8c575f80fd5b613c94613851565b9050813567ffffffffffffffff811115613cac575f80fd5b8201601f81018413613cbc575f80fd5b80356020613ccc613905836138c3565b82815260609283028401820192828201919088851115613cea575f80fd5b948301945b84861015613d455780868a031215613d05575f80fd5b613d0d613828565b863560028110613d1b575f80fd5b8152613d28878601613798565b818601526040878101359082015283529485019491830191613cef565b50855250613d54858201613798565b81850152505050604082013560408201526060820135606082015292915050565b5f806040808486031215613d87575f80fd5b833567ffffffffffffffff80821115613d9e575f80fd5b613daa87838801613c7c565b9450602091508186013581811115613dc0575f80fd5b8601601f8082018913613dd1575f80fd5b8135613ddf613905826138c3565b81815260059190911b8301850190858101908b831115613dfd575f80fd5b8685015b83811015613e9d57803587811115613e17575f80fd5b8601603f81018e13613e27575f80fd5b8881013588811115613e3b57613e3b6137fb565b613e6a8a7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08984011601613874565b8181528f8c838501011115613e7d575f80fd5b818c84018c8301375f9181018b0191909152845250918701918701613e01565b5080985050505050505050509250929050565b5f60208284031215613ec0575f80fd5b813567ffffffffffffffff811115613ed6575f80fd5b61159884828501613c7c565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b818103818111156108f0576108f0613f0f565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f82613faf577f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b500490565b5f60208284031215613fc4575f80fd5b5051919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b5f81518060208401855e5f93019283525090919050565b5f610f278284613ff8565b81515f9082906020808601845b8381101561404357815185529382019390820190600101614027565b50929695505050505050565b65ffffffffffff81811683821601908082111561406e5761406e613f0f565b5092915050565b808201808211156108f0576108f0613f0f565b79ffffffffffffffffffffffffffffffffffffffffffffffffffff81811683821601908082111561406e5761406e613f0f565b5f6115986140c98386613ff8565b84613ff8565b848152608081016002851061410b577f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b84602083015273ffffffffffffffffffffffffffffffffffffffff8416604083015282606083015295945050505050565b65ffffffffffff82811682821603908082111561406e5761406e613f0f565b600181811c9082168061416f57607f821691505b6020821081036115a9577f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffdfe52657175657374284f7065726174696f6e5b5d206f7065726174696f6e732c61646472657373206163636f756e742c75696e743235362065787069726174696f6e2c75696e74323536206e6f6e6365294f7065726174696f6e2875696e7438206f70547970652c616464726573732061737365742c75696e7432353620616d6f756e7429a2646970667358221220c381196a2fea5e9b93b39acb021623b09cdefb4a273ef72ed8d4f1183368793564736f6c63430008190033556e6976657273616c20417373657473204d65726368616e7420436f6e74726f6c6c657200000000000000000000000074ed5ed72df3bff374e4c87b8ff4bdebca954abec080a023de8e0cbb9655104860fbbfe0d1aee3c022d337e8f5bd4fb79b1a35ab27ea70a05ad0ebac8cb07002101e0ba25f09dd12689832642dada0eb7fb9a43a4a4a4174