0x59aa2dcbdb1218fce11d0f01429ad38873ee91ae2f9ce8c7a60133e4c0f007cd
Safe Transaction on 0x3655...9b41
Overview
Transaction Data
0x8d80ff0a000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000086560042cf536467f4fa474010a16f66a3fa7576f987d600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024dc517f3b0000000000000000000000000000000000000000000000000000000067decbc00042cf536467f4fa474010a16f66a3fa7576f987d6000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001243a66f901000000000000000000000000cba71acede17d2cabbfadbab30cc08f20eeaca52000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000067decbc0000000000000000000000000000000000000000000000000000000000000001772657665727449665175657565642862797465733332290000000000000000000000000000000000000000000000000000000000000000000000000000000020eb12e03dc0447aae8b96911813e14bbb842d26a781941481902e166ebfb0af3c0042cf536467f4fa474010a16f66a3fa7576f987d6000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020c43a66f90100000000000000000000000048d945acc64043b10a781917bfb88ddf49e06fc6000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000067decbc000000000000000000000000000000000000000000000000000000000000000156465706c6f7928627974657333322c62797465732900000000000000000000000000000000000000000000000000000000000000000000000000000000001fc0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000001f5c6101406040526000805460ff191660011790553480156200001f57600080fd5b5060405162001ebc38038062001ebc83398101604081905262000042916200021f565b84806200004f81620001c4565b604051632bdad0e360e11b81527121a7a72a2920a1aa29afa922a3a4a9aa22a960711b6004820152600060248201526001600160a01b038316906357b5a1c690604401602060405180830381865afa158015620000b0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000d691906200028f565b6001600160a01b03908116608052604051632bdad0e360e11b815267545245415355525960c01b60048201526000602482015290881692506357b5a1c69150604401602060405180830381865afa15801562000136573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200015c91906200028f565b6001600160a01b031660a05261271061ffff841610806200018457508361ffff168361ffff16105b15620001a3576040516347fbaa9760e01b815260040160405180910390fd5b61ffff93841660c05291831660e052821661010052166101205250620002b4565b6001600160a01b038116620001ec57604051635919af9760e11b815260040160405180910390fd5b50565b80516001600160a01b03811681146200020757600080fd5b919050565b805161ffff811681146200020757600080fd5b600080600080600060a086880312156200023857600080fd5b6200024386620001ef565b945062000253602087016200020c565b935062000263604087016200020c565b925062000273606087016200020c565b915062000283608087016200020c565b90509295509295909350565b600060208284031215620002a257600080fd5b620002ad82620001ef565b9392505050565b60805160a05160c05160e0516101005161012051611b6c62000350600039600081816101a301526107e0015260008181610142015261078901526000818161017c01528181610df201528181610ec60152610ef90152600081816101dd01528181610a4201528181610dc101528181610e350152610e6601526000818160dc0152610bf701526000818161011b01526111ac0152611b6c6000f3fe608060405234801561001057600080fd5b50600436106100a35760003560e01c80637d196f7211610076578063a88e8f6d1161005b578063a88e8f6d1461019e578063bf7520ba146101c5578063e1b4264c146101d857600080fd5b80637d196f721461013d578063803a09501461017757600080fd5b806354fd4d50146100a85780635b0c6e08146100c457806361d027b3146100d75780637a0c7b2114610116575b600080fd5b6100b161012c81565b6040519081526020015b60405180910390f35b6100b16100d23660046114bd565b6101ff565b6100fe7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016100bb565b6100fe7f000000000000000000000000000000000000000000000000000000000000000081565b6101647f000000000000000000000000000000000000000000000000000000000000000081565b60405161ffff90911681526020016100bb565b6101647f000000000000000000000000000000000000000000000000000000000000000081565b6101647f000000000000000000000000000000000000000000000000000000000000000081565b6100b16101d33660046114bd565b610345565b6101647f000000000000000000000000000000000000000000000000000000000000000081565b6000610209610469565b6000805460ff1916600217815561021f896104c6565b905061022c818585610820565b610237818a8a6109d5565b60a08101516040808301516060840151915163b66102df60e01b8152600481018b90526001600160a01b0392831660248201528b83166044820152612710929091169063b66102df90606401602060405180830381865afa1580156102a0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102c4919061157e565b6102ce91906115ad565b6102d891906115c4565b915085821015610314576040517f0579074c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610322818a8a8a868a610aa1565b61032c818a610dbc565b506000805460ff19166001179055979650505050505050565b600061034f610469565b6000805460ff19166002178155610365896104c6565b9050610372818585610820565b61037d818a8a6109d5565b60a08101516040808301516060840151915163b66102df60e01b8152600481018b90526001600160a01b038c81166024830152928316604482015261271093929091169063b66102df90606401602060405180830381865afa1580156103e7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061040b919061157e565b61041591906115ad565b61041f91906115c4565b91508582111561045b576040517f6dd4012100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610322818a8a858b8a610aa1565b60005460ff16600119016104c45760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064015b60405180910390fd5b565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a0810191909152816001600160a01b031663c12c21c06040518163ffffffff1660e01b8152600401602060405180830381865afa158015610536573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061055a91906115f6565b6001600160a01b0316808252604080517f2f7a18810000000000000000000000000000000000000000000000000000000081529051632f7a1881916004808201926020929091908290030181865afa1580156105ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105de91906115f6565b81602001906001600160a01b031690816001600160a01b03168152505080600001516001600160a01b0316632630c12f6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561063d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061066191906115f6565b81604001906001600160a01b031690816001600160a01b03168152505080600001516001600160a01b0316636f307dc36040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106e491906115f6565b6001600160a01b0390811660608301528151604080517f9af1d35a000000000000000000000000000000000000000000000000000000008152905160009384931691639af1d35a9160048083019260a09291908290030181865afa158015610750573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610774919061162c565b505061ffff91821694508116925061271091507f0000000000000000000000000000000000000000000000000000000000000000166107b38383611691565b6107bd91906115ad565b6107c791906115c4565b6107d390612710611691565b60a08401526127106108097f000000000000000000000000000000000000000000000000000000000000000061ffff16846115ad565b61081391906115c4565b6080840152509092915050565b8060005b818110156109ce573684848381811061083f5761083f6116a4565b905060200281019061085191906116ba565b60408701519091506000906001600160a01b031663ff29984561087760208501856116da565b6108876040860160208701611705565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b1681526001600160a01b03909216600483015215156024820152604401602060405180830381865afa1580156108ea573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061090e91906115f6565b90506001600160a01b038116610950576040517f68d8c6d800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b038116638736ec4761096c6040850185611722565b6040518363ffffffff1660e01b8152600401610989929190611770565b600060405180830381600087803b1580156109a357600080fd5b505af11580156109b7573d6000803e3d6000fd5b505050505050806109c79061179f565b9050610824565b5050505050565b82516109e090610f5d565b82606001516001600160a01b0316816001600160a01b031603610a2f576040517ff0851a1200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610a66610a40846000015184610f9f565b7f00000000000000000000000000000000000000000000000000000000000000006110c2565b610a9c576040517f234b893b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b505050565b6060860151610abb906001600160a01b03163387866110f8565b608086015160009061271090610ad190866115ad565b610adb91906115c4565b9050610ae78185611691565b6040805160038082526080820190925291955060009190816020015b604080518082019091526000815260606020820152815260200190600190039081610b03579050509050604051806040016040528089602001516001600160a01b0316815260200186604051602401610b5e91815260200190565b60408051601f198184030181529190526020810180516001600160e01b03167f2a7ba1f700000000000000000000000000000000000000000000000000000000179052905281518290600090610bb657610bb66116a4565b6020908102919091018101919091526040805180820182528a8301516001600160a01b03908116825260608c015192519281166024840152604483018690527f00000000000000000000000000000000000000000000000000000000000000001660648301529182019060840160408051601f198184030181529190526020810180516001600160e01b031662f8844560e51b1790529052815182906001908110610c6357610c636116a4565b6020908102919091018101919091526040805180820182528a8301516001600160a01b039081168252915189831660248201526044810188905291861660648301529182019060840160408051601f198184030181529190526020810180516001600160e01b031662f8844560e51b1790529052815182906002908110610cec57610cec6116a4565b602002602001018190525087602001516001600160a01b0316637e2ca9db88836040518363ffffffff1660e01b8152600401610d2992919061181e565b600060405180830381600087803b158015610d4357600080fd5b505af1158015610d57573d6000803e3d6000fd5b5050895160408051898152602081018990529081018690526001600160a01b038a811694508b81169350909116907f40350e8625a7c7ce13ace10daee23cc0d714408aab88d4798b867520aa0a112a9060600160405180910390a45050505050505050565b6127107f000000000000000000000000000000000000000000000000000000000000000061ffff1611801590610e15575061ffff7f00000000000000000000000000000000000000000000000000000000000000008116145b15610e1e575050565b6000610e2e836000015183610f9f565b90506127107f000000000000000000000000000000000000000000000000000000000000000061ffff16118015610e8a5750610e8a817f00000000000000000000000000000000000000000000000000000000000000006110c2565b15610ec1576040517fc346a66000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61ffff7f0000000000000000000000000000000000000000000000000000000000000000811614801590610f265750610f2481610f1f7f000000000000000000000000000000000000000000000000000000000000000060016118a7565b6110c2565b155b15610a9c576040517fd4e96b1900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610f6681611171565b610f9c576040517fbc6a488a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50565b61102c604051806101c0016040528060008152602001600081526020016000815260200160006fffffffffffffffffffffffffffffffff16815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016060815260200160006001600160a01b031681525090565b6040517f0d334ca60000000000000000000000000000000000000000000000000000000081526001600160a01b03841690630d334ca6906110749085906003906004016118c9565b600060405180830381865afa158015611091573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526110b991908101906119e7565b90505b92915050565b600061271061ffff168261ffff168460c001516110df91906115ad565b6110e991906115c4565b83610120015110905092915050565b604080516001600160a01b0385811660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03167f23b872dd0000000000000000000000000000000000000000000000000000000017905261116b908590611219565b50505050565b6040517f6fbc6f6b0000000000000000000000000000000000000000000000000000000081526001600160a01b0382811660048301526000917f000000000000000000000000000000000000000000000000000000000000000090911690636fbc6f6b90602401602060405180830381865afa1580156111f5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110bc9190611af4565b600061126e826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166113019092919063ffffffff16565b905080516000148061128f57508080602001905181019061128f9190611af4565b610a9c5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e60448201527f6f7420737563636565640000000000000000000000000000000000000000000060648201526084016104bb565b60606113108484600085611318565b949350505050565b6060824710156113905760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f60448201527f722063616c6c000000000000000000000000000000000000000000000000000060648201526084016104bb565b600080866001600160a01b031685876040516113ac9190611b11565b60006040518083038185875af1925050503d80600081146113e9576040519150601f19603f3d011682016040523d82523d6000602084013e6113ee565b606091505b50915091506113ff8783838761140a565b979650505050505050565b60608315611479578251600003611472576001600160a01b0385163b6114725760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016104bb565b5081611310565b611310838381511561148e5781518083602001fd5b8060405162461bcd60e51b81526004016104bb9190611b23565b6001600160a01b0381168114610f9c57600080fd5b600080600080600080600060c0888a0312156114d857600080fd5b87356114e3816114a8565b965060208801356114f3816114a8565b955060408801359450606088013593506080880135611511816114a8565b925060a088013567ffffffffffffffff8082111561152e57600080fd5b818a0191508a601f83011261154257600080fd5b81358181111561155157600080fd5b8b60208260051b850101111561156657600080fd5b60208301945080935050505092959891949750929550565b60006020828403121561159057600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b80820281158282048414176110bc576110bc611597565b6000826115e157634e487b7160e01b600052601260045260246000fd5b500490565b80516115f1816114a8565b919050565b60006020828403121561160857600080fd5b8151611613816114a8565b9392505050565b805161ffff811681146115f157600080fd5b600080600080600060a0868803121561164457600080fd5b61164d8661161a565b945061165b6020870161161a565b93506116696040870161161a565b92506116776060870161161a565b91506116856080870161161a565b90509295509295909350565b818103818111156110bc576110bc611597565b634e487b7160e01b600052603260045260246000fd5b60008235605e198336030181126116d057600080fd5b9190910192915050565b6000602082840312156116ec57600080fd5b8135611613816114a8565b8015158114610f9c57600080fd5b60006020828403121561171757600080fd5b8135611613816116f7565b6000808335601e1984360301811261173957600080fd5b83018035915067ffffffffffffffff82111561175457600080fd5b60200191503681900382131561176957600080fd5b9250929050565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b6000600182016117b1576117b1611597565b5060010190565b634e487b7160e01b600052604160045260246000fd5b60005b838110156117e95781810151838201526020016117d1565b50506000910152565b6000815180845261180a8160208601602086016117ce565b601f01601f19169290920160200192915050565b600060408083016001600160a01b0380871685526020838187015282875180855260608801915060608160051b890101945082890160005b8281101561189757898703605f190184528151805187168852850151858801899052611884898901826117f2565b9750509284019290840190600101611856565b50949a9950505050505050505050565b61ffff8181168382160190808211156118c2576118c2611597565b5092915050565b6001600160a01b038316815260408101600583106118f757634e487b7160e01b600052602160045260246000fd5b8260208301529392505050565b6040516101c0810167ffffffffffffffff81118282101715611928576119286117b8565b60405290565b80516fffffffffffffffffffffffffffffffff811681146115f157600080fd5b600082601f83011261195f57600080fd5b8151602067ffffffffffffffff8083111561197c5761197c6117b8565b8260051b604051601f19603f830116810181811084821117156119a1576119a16117b8565b6040529384528581018301938381019250878511156119bf57600080fd5b83870191505b848210156113ff5781516119d8816114a8565b835291830191908301906119c5565b6000602082840312156119f957600080fd5b815167ffffffffffffffff80821115611a1157600080fd5b908301906101c08286031215611a2657600080fd5b611a2e611904565b825181526020830151602082015260408301516040820152611a526060840161192e565b60608201526080830151608082015260a083015160a082015260c083015160c082015260e083015160e08201526101008084015181830152506101208084015181830152506101408084015181830152506101608084015181830152506101808084015183811115611ac357600080fd5b611acf8882870161194e565b8284015250506101a09150611ae58284016115e6565b91810191909152949350505050565b600060208284031215611b0657600080fd5b8151611613816116f7565b600082516116d08184602087016117ce565b6020815260006110b960208301846117f256fea26469706673582212209cfc0b1b3e31b58a0dc54bddf26d6a4181f69b157d0447d4035c09937e6a1bd564736f6c634300081100330000000000000000000000002eb0be5585e49190414307597912bd039a029eda0000000000000000000000000000000000000000000000000000000000002710000000000000000000000000000000000000000000000000000000000000ffff00000000000000000000000000000000000000000000000000000000000027100000000000000000000000000000000000000000000000000000000000002710000000000042cf536467f4fa474010a16f66a3fa7576f987d6000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020c43a66f90100000000000000000000000048d945acc64043b10a781917bfb88ddf49e06fc6000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000067decbc000000000000000000000000000000000000000000000000000000000000000156465706c6f7928627974657333322c62797465732900000000000000000000000000000000000000000000000000000000000000000000000000000000001fc0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000001f5c6101406040526000805460ff191660011790553480156200001f57600080fd5b5060405162001ebc38038062001ebc83398101604081905262000042916200021f565b84806200004f81620001c4565b604051632bdad0e360e11b81527121a7a72a2920a1aa29afa922a3a4a9aa22a960711b6004820152600060248201526001600160a01b038316906357b5a1c690604401602060405180830381865afa158015620000b0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000d691906200028f565b6001600160a01b03908116608052604051632bdad0e360e11b815267545245415355525960c01b60048201526000602482015290881692506357b5a1c69150604401602060405180830381865afa15801562000136573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200015c91906200028f565b6001600160a01b031660a05261271061ffff841610806200018457508361ffff168361ffff16105b15620001a3576040516347fbaa9760e01b815260040160405180910390fd5b61ffff93841660c05291831660e052821661010052166101205250620002b4565b6001600160a01b038116620001ec57604051635919af9760e11b815260040160405180910390fd5b50565b80516001600160a01b03811681146200020757600080fd5b919050565b805161ffff811681146200020757600080fd5b600080600080600060a086880312156200023857600080fd5b6200024386620001ef565b945062000253602087016200020c565b935062000263604087016200020c565b925062000273606087016200020c565b915062000283608087016200020c565b90509295509295909350565b600060208284031215620002a257600080fd5b620002ad82620001ef565b9392505050565b60805160a05160c05160e0516101005161012051611b6c62000350600039600081816101a301526107e0015260008181610142015261078901526000818161017c01528181610df201528181610ec60152610ef90152600081816101dd01528181610a4201528181610dc101528181610e350152610e6601526000818160dc0152610bf701526000818161011b01526111ac0152611b6c6000f3fe608060405234801561001057600080fd5b50600436106100a35760003560e01c80637d196f7211610076578063a88e8f6d1161005b578063a88e8f6d1461019e578063bf7520ba146101c5578063e1b4264c146101d857600080fd5b80637d196f721461013d578063803a09501461017757600080fd5b806354fd4d50146100a85780635b0c6e08146100c457806361d027b3146100d75780637a0c7b2114610116575b600080fd5b6100b161012c81565b6040519081526020015b60405180910390f35b6100b16100d23660046114bd565b6101ff565b6100fe7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016100bb565b6100fe7f000000000000000000000000000000000000000000000000000000000000000081565b6101647f000000000000000000000000000000000000000000000000000000000000000081565b60405161ffff90911681526020016100bb565b6101647f000000000000000000000000000000000000000000000000000000000000000081565b6101647f000000000000000000000000000000000000000000000000000000000000000081565b6100b16101d33660046114bd565b610345565b6101647f000000000000000000000000000000000000000000000000000000000000000081565b6000610209610469565b6000805460ff1916600217815561021f896104c6565b905061022c818585610820565b610237818a8a6109d5565b60a08101516040808301516060840151915163b66102df60e01b8152600481018b90526001600160a01b0392831660248201528b83166044820152612710929091169063b66102df90606401602060405180830381865afa1580156102a0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102c4919061157e565b6102ce91906115ad565b6102d891906115c4565b915085821015610314576040517f0579074c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610322818a8a8a868a610aa1565b61032c818a610dbc565b506000805460ff19166001179055979650505050505050565b600061034f610469565b6000805460ff19166002178155610365896104c6565b9050610372818585610820565b61037d818a8a6109d5565b60a08101516040808301516060840151915163b66102df60e01b8152600481018b90526001600160a01b038c81166024830152928316604482015261271093929091169063b66102df90606401602060405180830381865afa1580156103e7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061040b919061157e565b61041591906115ad565b61041f91906115c4565b91508582111561045b576040517f6dd4012100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610322818a8a858b8a610aa1565b60005460ff16600119016104c45760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064015b60405180910390fd5b565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a0810191909152816001600160a01b031663c12c21c06040518163ffffffff1660e01b8152600401602060405180830381865afa158015610536573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061055a91906115f6565b6001600160a01b0316808252604080517f2f7a18810000000000000000000000000000000000000000000000000000000081529051632f7a1881916004808201926020929091908290030181865afa1580156105ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105de91906115f6565b81602001906001600160a01b031690816001600160a01b03168152505080600001516001600160a01b0316632630c12f6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561063d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061066191906115f6565b81604001906001600160a01b031690816001600160a01b03168152505080600001516001600160a01b0316636f307dc36040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106e491906115f6565b6001600160a01b0390811660608301528151604080517f9af1d35a000000000000000000000000000000000000000000000000000000008152905160009384931691639af1d35a9160048083019260a09291908290030181865afa158015610750573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610774919061162c565b505061ffff91821694508116925061271091507f0000000000000000000000000000000000000000000000000000000000000000166107b38383611691565b6107bd91906115ad565b6107c791906115c4565b6107d390612710611691565b60a08401526127106108097f000000000000000000000000000000000000000000000000000000000000000061ffff16846115ad565b61081391906115c4565b6080840152509092915050565b8060005b818110156109ce573684848381811061083f5761083f6116a4565b905060200281019061085191906116ba565b60408701519091506000906001600160a01b031663ff29984561087760208501856116da565b6108876040860160208701611705565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b1681526001600160a01b03909216600483015215156024820152604401602060405180830381865afa1580156108ea573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061090e91906115f6565b90506001600160a01b038116610950576040517f68d8c6d800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b038116638736ec4761096c6040850185611722565b6040518363ffffffff1660e01b8152600401610989929190611770565b600060405180830381600087803b1580156109a357600080fd5b505af11580156109b7573d6000803e3d6000fd5b505050505050806109c79061179f565b9050610824565b5050505050565b82516109e090610f5d565b82606001516001600160a01b0316816001600160a01b031603610a2f576040517ff0851a1200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610a66610a40846000015184610f9f565b7f00000000000000000000000000000000000000000000000000000000000000006110c2565b610a9c576040517f234b893b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b505050565b6060860151610abb906001600160a01b03163387866110f8565b608086015160009061271090610ad190866115ad565b610adb91906115c4565b9050610ae78185611691565b6040805160038082526080820190925291955060009190816020015b604080518082019091526000815260606020820152815260200190600190039081610b03579050509050604051806040016040528089602001516001600160a01b0316815260200186604051602401610b5e91815260200190565b60408051601f198184030181529190526020810180516001600160e01b03167f2a7ba1f700000000000000000000000000000000000000000000000000000000179052905281518290600090610bb657610bb66116a4565b6020908102919091018101919091526040805180820182528a8301516001600160a01b03908116825260608c015192519281166024840152604483018690527f00000000000000000000000000000000000000000000000000000000000000001660648301529182019060840160408051601f198184030181529190526020810180516001600160e01b031662f8844560e51b1790529052815182906001908110610c6357610c636116a4565b6020908102919091018101919091526040805180820182528a8301516001600160a01b039081168252915189831660248201526044810188905291861660648301529182019060840160408051601f198184030181529190526020810180516001600160e01b031662f8844560e51b1790529052815182906002908110610cec57610cec6116a4565b602002602001018190525087602001516001600160a01b0316637e2ca9db88836040518363ffffffff1660e01b8152600401610d2992919061181e565b600060405180830381600087803b158015610d4357600080fd5b505af1158015610d57573d6000803e3d6000fd5b5050895160408051898152602081018990529081018690526001600160a01b038a811694508b81169350909116907f40350e8625a7c7ce13ace10daee23cc0d714408aab88d4798b867520aa0a112a9060600160405180910390a45050505050505050565b6127107f000000000000000000000000000000000000000000000000000000000000000061ffff1611801590610e15575061ffff7f00000000000000000000000000000000000000000000000000000000000000008116145b15610e1e575050565b6000610e2e836000015183610f9f565b90506127107f000000000000000000000000000000000000000000000000000000000000000061ffff16118015610e8a5750610e8a817f00000000000000000000000000000000000000000000000000000000000000006110c2565b15610ec1576040517fc346a66000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61ffff7f0000000000000000000000000000000000000000000000000000000000000000811614801590610f265750610f2481610f1f7f000000000000000000000000000000000000000000000000000000000000000060016118a7565b6110c2565b155b15610a9c576040517fd4e96b1900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610f6681611171565b610f9c576040517fbc6a488a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50565b61102c604051806101c0016040528060008152602001600081526020016000815260200160006fffffffffffffffffffffffffffffffff16815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016060815260200160006001600160a01b031681525090565b6040517f0d334ca60000000000000000000000000000000000000000000000000000000081526001600160a01b03841690630d334ca6906110749085906003906004016118c9565b600060405180830381865afa158015611091573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526110b991908101906119e7565b90505b92915050565b600061271061ffff168261ffff168460c001516110df91906115ad565b6110e991906115c4565b83610120015110905092915050565b604080516001600160a01b0385811660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03167f23b872dd0000000000000000000000000000000000000000000000000000000017905261116b908590611219565b50505050565b6040517f6fbc6f6b0000000000000000000000000000000000000000000000000000000081526001600160a01b0382811660048301526000917f000000000000000000000000000000000000000000000000000000000000000090911690636fbc6f6b90602401602060405180830381865afa1580156111f5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110bc9190611af4565b600061126e826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166113019092919063ffffffff16565b905080516000148061128f57508080602001905181019061128f9190611af4565b610a9c5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e60448201527f6f7420737563636565640000000000000000000000000000000000000000000060648201526084016104bb565b60606113108484600085611318565b949350505050565b6060824710156113905760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f60448201527f722063616c6c000000000000000000000000000000000000000000000000000060648201526084016104bb565b600080866001600160a01b031685876040516113ac9190611b11565b60006040518083038185875af1925050503d80600081146113e9576040519150601f19603f3d011682016040523d82523d6000602084013e6113ee565b606091505b50915091506113ff8783838761140a565b979650505050505050565b60608315611479578251600003611472576001600160a01b0385163b6114725760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016104bb565b5081611310565b611310838381511561148e5781518083602001fd5b8060405162461bcd60e51b81526004016104bb9190611b23565b6001600160a01b0381168114610f9c57600080fd5b600080600080600080600060c0888a0312156114d857600080fd5b87356114e3816114a8565b965060208801356114f3816114a8565b955060408801359450606088013593506080880135611511816114a8565b925060a088013567ffffffffffffffff8082111561152e57600080fd5b818a0191508a601f83011261154257600080fd5b81358181111561155157600080fd5b8b60208260051b850101111561156657600080fd5b60208301945080935050505092959891949750929550565b60006020828403121561159057600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b80820281158282048414176110bc576110bc611597565b6000826115e157634e487b7160e01b600052601260045260246000fd5b500490565b80516115f1816114a8565b919050565b60006020828403121561160857600080fd5b8151611613816114a8565b9392505050565b805161ffff811681146115f157600080fd5b600080600080600060a0868803121561164457600080fd5b61164d8661161a565b945061165b6020870161161a565b93506116696040870161161a565b92506116776060870161161a565b91506116856080870161161a565b90509295509295909350565b818103818111156110bc576110bc611597565b634e487b7160e01b600052603260045260246000fd5b60008235605e198336030181126116d057600080fd5b9190910192915050565b6000602082840312156116ec57600080fd5b8135611613816114a8565b8015158114610f9c57600080fd5b60006020828403121561171757600080fd5b8135611613816116f7565b6000808335601e1984360301811261173957600080fd5b83018035915067ffffffffffffffff82111561175457600080fd5b60200191503681900382131561176957600080fd5b9250929050565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b6000600182016117b1576117b1611597565b5060010190565b634e487b7160e01b600052604160045260246000fd5b60005b838110156117e95781810151838201526020016117d1565b50506000910152565b6000815180845261180a8160208601602086016117ce565b601f01601f19169290920160200192915050565b600060408083016001600160a01b0380871685526020838187015282875180855260608801915060608160051b890101945082890160005b8281101561189757898703605f190184528151805187168852850151858801899052611884898901826117f2565b9750509284019290840190600101611856565b50949a9950505050505050505050565b61ffff8181168382160190808211156118c2576118c2611597565b5092915050565b6001600160a01b038316815260408101600583106118f757634e487b7160e01b600052602160045260246000fd5b8260208301529392505050565b6040516101c0810167ffffffffffffffff81118282101715611928576119286117b8565b60405290565b80516fffffffffffffffffffffffffffffffff811681146115f157600080fd5b600082601f83011261195f57600080fd5b8151602067ffffffffffffffff8083111561197c5761197c6117b8565b8260051b604051601f19603f830116810181811084821117156119a1576119a16117b8565b6040529384528581018301938381019250878511156119bf57600080fd5b83870191505b848210156113ff5781516119d8816114a8565b835291830191908301906119c5565b6000602082840312156119f957600080fd5b815167ffffffffffffffff80821115611a1157600080fd5b908301906101c08286031215611a2657600080fd5b611a2e611904565b825181526020830151602082015260408301516040820152611a526060840161192e565b60608201526080830151608082015260a083015160a082015260c083015160c082015260e083015160e08201526101008084015181830152506101208084015181830152506101408084015181830152506101608084015181830152506101808084015183811115611ac357600080fd5b611acf8882870161194e565b8284015250506101a09150611ae58284016115e6565b91810191909152949350505050565b600060208284031215611b0657600080fd5b8151611613816116f7565b600082516116d08184602087016117ce565b6020815260006110b960208301846117f256fea26469706673582212209cfc0b1b3e31b58a0dc54bddf26d6a4181f69b157d0447d4035c09937e6a1bd564736f6c634300081100330000000000000000000000002eb0be5585e49190414307597912bd039a029eda0000000000000000000000000000000000000000000000000000000000002774000000000000000000000000000000000000000000000000000000000000280a00000000000000000000000000000000000000000000000000000000000013880000000000000000000000000000000000000000000000000000000000001388000000000042cf536467f4fa474010a16f66a3fa7576f987d6000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020c43a66f90100000000000000000000000048d945acc64043b10a781917bfb88ddf49e06fc6000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000067decbc000000000000000000000000000000000000000000000000000000000000000156465706c6f7928627974657333322c62797465732900000000000000000000000000000000000000000000000000000000000000000000000000000000001fc0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000001f5c6101406040526000805460ff191660011790553480156200001f57600080fd5b5060405162001ebc38038062001ebc83398101604081905262000042916200021f565b84806200004f81620001c4565b604051632bdad0e360e11b81527121a7a72a2920a1aa29afa922a3a4a9aa22a960711b6004820152600060248201526001600160a01b038316906357b5a1c690604401602060405180830381865afa158015620000b0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000d691906200028f565b6001600160a01b03908116608052604051632bdad0e360e11b815267545245415355525960c01b60048201526000602482015290881692506357b5a1c69150604401602060405180830381865afa15801562000136573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200015c91906200028f565b6001600160a01b031660a05261271061ffff841610806200018457508361ffff168361ffff16105b15620001a3576040516347fbaa9760e01b815260040160405180910390fd5b61ffff93841660c05291831660e052821661010052166101205250620002b4565b6001600160a01b038116620001ec57604051635919af9760e11b815260040160405180910390fd5b50565b80516001600160a01b03811681146200020757600080fd5b919050565b805161ffff811681146200020757600080fd5b600080600080600060a086880312156200023857600080fd5b6200024386620001ef565b945062000253602087016200020c565b935062000263604087016200020c565b925062000273606087016200020c565b915062000283608087016200020c565b90509295509295909350565b600060208284031215620002a257600080fd5b620002ad82620001ef565b9392505050565b60805160a05160c05160e0516101005161012051611b6c62000350600039600081816101a301526107e0015260008181610142015261078901526000818161017c01528181610df201528181610ec60152610ef90152600081816101dd01528181610a4201528181610dc101528181610e350152610e6601526000818160dc0152610bf701526000818161011b01526111ac0152611b6c6000f3fe608060405234801561001057600080fd5b50600436106100a35760003560e01c80637d196f7211610076578063a88e8f6d1161005b578063a88e8f6d1461019e578063bf7520ba146101c5578063e1b4264c146101d857600080fd5b80637d196f721461013d578063803a09501461017757600080fd5b806354fd4d50146100a85780635b0c6e08146100c457806361d027b3146100d75780637a0c7b2114610116575b600080fd5b6100b161012c81565b6040519081526020015b60405180910390f35b6100b16100d23660046114bd565b6101ff565b6100fe7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016100bb565b6100fe7f000000000000000000000000000000000000000000000000000000000000000081565b6101647f000000000000000000000000000000000000000000000000000000000000000081565b60405161ffff90911681526020016100bb565b6101647f000000000000000000000000000000000000000000000000000000000000000081565b6101647f000000000000000000000000000000000000000000000000000000000000000081565b6100b16101d33660046114bd565b610345565b6101647f000000000000000000000000000000000000000000000000000000000000000081565b6000610209610469565b6000805460ff1916600217815561021f896104c6565b905061022c818585610820565b610237818a8a6109d5565b60a08101516040808301516060840151915163b66102df60e01b8152600481018b90526001600160a01b0392831660248201528b83166044820152612710929091169063b66102df90606401602060405180830381865afa1580156102a0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102c4919061157e565b6102ce91906115ad565b6102d891906115c4565b915085821015610314576040517f0579074c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610322818a8a8a868a610aa1565b61032c818a610dbc565b506000805460ff19166001179055979650505050505050565b600061034f610469565b6000805460ff19166002178155610365896104c6565b9050610372818585610820565b61037d818a8a6109d5565b60a08101516040808301516060840151915163b66102df60e01b8152600481018b90526001600160a01b038c81166024830152928316604482015261271093929091169063b66102df90606401602060405180830381865afa1580156103e7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061040b919061157e565b61041591906115ad565b61041f91906115c4565b91508582111561045b576040517f6dd4012100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610322818a8a858b8a610aa1565b60005460ff16600119016104c45760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064015b60405180910390fd5b565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a0810191909152816001600160a01b031663c12c21c06040518163ffffffff1660e01b8152600401602060405180830381865afa158015610536573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061055a91906115f6565b6001600160a01b0316808252604080517f2f7a18810000000000000000000000000000000000000000000000000000000081529051632f7a1881916004808201926020929091908290030181865afa1580156105ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105de91906115f6565b81602001906001600160a01b031690816001600160a01b03168152505080600001516001600160a01b0316632630c12f6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561063d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061066191906115f6565b81604001906001600160a01b031690816001600160a01b03168152505080600001516001600160a01b0316636f307dc36040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106e491906115f6565b6001600160a01b0390811660608301528151604080517f9af1d35a000000000000000000000000000000000000000000000000000000008152905160009384931691639af1d35a9160048083019260a09291908290030181865afa158015610750573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610774919061162c565b505061ffff91821694508116925061271091507f0000000000000000000000000000000000000000000000000000000000000000166107b38383611691565b6107bd91906115ad565b6107c791906115c4565b6107d390612710611691565b60a08401526127106108097f000000000000000000000000000000000000000000000000000000000000000061ffff16846115ad565b61081391906115c4565b6080840152509092915050565b8060005b818110156109ce573684848381811061083f5761083f6116a4565b905060200281019061085191906116ba565b60408701519091506000906001600160a01b031663ff29984561087760208501856116da565b6108876040860160208701611705565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b1681526001600160a01b03909216600483015215156024820152604401602060405180830381865afa1580156108ea573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061090e91906115f6565b90506001600160a01b038116610950576040517f68d8c6d800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b038116638736ec4761096c6040850185611722565b6040518363ffffffff1660e01b8152600401610989929190611770565b600060405180830381600087803b1580156109a357600080fd5b505af11580156109b7573d6000803e3d6000fd5b505050505050806109c79061179f565b9050610824565b5050505050565b82516109e090610f5d565b82606001516001600160a01b0316816001600160a01b031603610a2f576040517ff0851a1200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610a66610a40846000015184610f9f565b7f00000000000000000000000000000000000000000000000000000000000000006110c2565b610a9c576040517f234b893b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b505050565b6060860151610abb906001600160a01b03163387866110f8565b608086015160009061271090610ad190866115ad565b610adb91906115c4565b9050610ae78185611691565b6040805160038082526080820190925291955060009190816020015b604080518082019091526000815260606020820152815260200190600190039081610b03579050509050604051806040016040528089602001516001600160a01b0316815260200186604051602401610b5e91815260200190565b60408051601f198184030181529190526020810180516001600160e01b03167f2a7ba1f700000000000000000000000000000000000000000000000000000000179052905281518290600090610bb657610bb66116a4565b6020908102919091018101919091526040805180820182528a8301516001600160a01b03908116825260608c015192519281166024840152604483018690527f00000000000000000000000000000000000000000000000000000000000000001660648301529182019060840160408051601f198184030181529190526020810180516001600160e01b031662f8844560e51b1790529052815182906001908110610c6357610c636116a4565b6020908102919091018101919091526040805180820182528a8301516001600160a01b039081168252915189831660248201526044810188905291861660648301529182019060840160408051601f198184030181529190526020810180516001600160e01b031662f8844560e51b1790529052815182906002908110610cec57610cec6116a4565b602002602001018190525087602001516001600160a01b0316637e2ca9db88836040518363ffffffff1660e01b8152600401610d2992919061181e565b600060405180830381600087803b158015610d4357600080fd5b505af1158015610d57573d6000803e3d6000fd5b5050895160408051898152602081018990529081018690526001600160a01b038a811694508b81169350909116907f40350e8625a7c7ce13ace10daee23cc0d714408aab88d4798b867520aa0a112a9060600160405180910390a45050505050505050565b6127107f000000000000000000000000000000000000000000000000000000000000000061ffff1611801590610e15575061ffff7f00000000000000000000000000000000000000000000000000000000000000008116145b15610e1e575050565b6000610e2e836000015183610f9f565b90506127107f000000000000000000000000000000000000000000000000000000000000000061ffff16118015610e8a5750610e8a817f00000000000000000000000000000000000000000000000000000000000000006110c2565b15610ec1576040517fc346a66000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61ffff7f0000000000000000000000000000000000000000000000000000000000000000811614801590610f265750610f2481610f1f7f000000000000000000000000000000000000000000000000000000000000000060016118a7565b6110c2565b155b15610a9c576040517fd4e96b1900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610f6681611171565b610f9c576040517fbc6a488a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50565b61102c604051806101c0016040528060008152602001600081526020016000815260200160006fffffffffffffffffffffffffffffffff16815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016060815260200160006001600160a01b031681525090565b6040517f0d334ca60000000000000000000000000000000000000000000000000000000081526001600160a01b03841690630d334ca6906110749085906003906004016118c9565b600060405180830381865afa158015611091573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526110b991908101906119e7565b90505b92915050565b600061271061ffff168261ffff168460c001516110df91906115ad565b6110e991906115c4565b83610120015110905092915050565b604080516001600160a01b0385811660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03167f23b872dd0000000000000000000000000000000000000000000000000000000017905261116b908590611219565b50505050565b6040517f6fbc6f6b0000000000000000000000000000000000000000000000000000000081526001600160a01b0382811660048301526000917f000000000000000000000000000000000000000000000000000000000000000090911690636fbc6f6b90602401602060405180830381865afa1580156111f5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110bc9190611af4565b600061126e826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166113019092919063ffffffff16565b905080516000148061128f57508080602001905181019061128f9190611af4565b610a9c5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e60448201527f6f7420737563636565640000000000000000000000000000000000000000000060648201526084016104bb565b60606113108484600085611318565b949350505050565b6060824710156113905760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f60448201527f722063616c6c000000000000000000000000000000000000000000000000000060648201526084016104bb565b600080866001600160a01b031685876040516113ac9190611b11565b60006040518083038185875af1925050503d80600081146113e9576040519150601f19603f3d011682016040523d82523d6000602084013e6113ee565b606091505b50915091506113ff8783838761140a565b979650505050505050565b60608315611479578251600003611472576001600160a01b0385163b6114725760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016104bb565b5081611310565b611310838381511561148e5781518083602001fd5b8060405162461bcd60e51b81526004016104bb9190611b23565b6001600160a01b0381168114610f9c57600080fd5b600080600080600080600060c0888a0312156114d857600080fd5b87356114e3816114a8565b965060208801356114f3816114a8565b955060408801359450606088013593506080880135611511816114a8565b925060a088013567ffffffffffffffff8082111561152e57600080fd5b818a0191508a601f83011261154257600080fd5b81358181111561155157600080fd5b8b60208260051b850101111561156657600080fd5b60208301945080935050505092959891949750929550565b60006020828403121561159057600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b80820281158282048414176110bc576110bc611597565b6000826115e157634e487b7160e01b600052601260045260246000fd5b500490565b80516115f1816114a8565b919050565b60006020828403121561160857600080fd5b8151611613816114a8565b9392505050565b805161ffff811681146115f157600080fd5b600080600080600060a0868803121561164457600080fd5b61164d8661161a565b945061165b6020870161161a565b93506116696040870161161a565b92506116776060870161161a565b91506116856080870161161a565b90509295509295909350565b818103818111156110bc576110bc611597565b634e487b7160e01b600052603260045260246000fd5b60008235605e198336030181126116d057600080fd5b9190910192915050565b6000602082840312156116ec57600080fd5b8135611613816114a8565b8015158114610f9c57600080fd5b60006020828403121561171757600080fd5b8135611613816116f7565b6000808335601e1984360301811261173957600080fd5b83018035915067ffffffffffffffff82111561175457600080fd5b60200191503681900382131561176957600080fd5b9250929050565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b6000600182016117b1576117b1611597565b5060010190565b634e487b7160e01b600052604160045260246000fd5b60005b838110156117e95781810151838201526020016117d1565b50506000910152565b6000815180845261180a8160208601602086016117ce565b601f01601f19169290920160200192915050565b600060408083016001600160a01b0380871685526020838187015282875180855260608801915060608160051b890101945082890160005b8281101561189757898703605f190184528151805187168852850151858801899052611884898901826117f2565b9750509284019290840190600101611856565b50949a9950505050505050505050565b61ffff8181168382160190808211156118c2576118c2611597565b5092915050565b6001600160a01b038316815260408101600583106118f757634e487b7160e01b600052602160045260246000fd5b8260208301529392505050565b6040516101c0810167ffffffffffffffff81118282101715611928576119286117b8565b60405290565b80516fffffffffffffffffffffffffffffffff811681146115f157600080fd5b600082601f83011261195f57600080fd5b8151602067ffffffffffffffff8083111561197c5761197c6117b8565b8260051b604051601f19603f830116810181811084821117156119a1576119a16117b8565b6040529384528581018301938381019250878511156119bf57600080fd5b83870191505b848210156113ff5781516119d8816114a8565b835291830191908301906119c5565b6000602082840312156119f957600080fd5b815167ffffffffffffffff80821115611a1157600080fd5b908301906101c08286031215611a2657600080fd5b611a2e611904565b825181526020830151602082015260408301516040820152611a526060840161192e565b60608201526080830151608082015260a083015160a082015260c083015160c082015260e083015160e08201526101008084015181830152506101208084015181830152506101408084015181830152506101608084015181830152506101808084015183811115611ac357600080fd5b611acf8882870161194e565b8284015250506101a09150611ae58284016115e6565b91810191909152949350505050565b600060208284031215611b0657600080fd5b8151611613816116f7565b600082516116d08184602087016117ce565b6020815260006110b960208301846117f256fea26469706673582212209cfc0b1b3e31b58a0dc54bddf26d6a4181f69b157d0447d4035c09937e6a1bd564736f6c634300081100330000000000000000000000002eb0be5585e49190414307597912bd039a029eda00000000000000000000000000000000000000000000000000000000000028a0000000000000000000000000000000000000000000000000000000000000296800000000000000000000000000000000000000000000000000000000000013880000000000000000000000000000000000000000000000000000000000001388000000000042cf536467f4fa474010a16f66a3fa7576f987d6000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000020c43a66f90100000000000000000000000048d945acc64043b10a781917bfb88ddf49e06fc6000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000067decbc000000000000000000000000000000000000000000000000000000000000000156465706c6f7928627974657333322c62797465732900000000000000000000000000000000000000000000000000000000000000000000000000000000001fc0000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000001f5c6101406040526000805460ff191660011790553480156200001f57600080fd5b5060405162001ebc38038062001ebc83398101604081905262000042916200021f565b84806200004f81620001c4565b604051632bdad0e360e11b81527121a7a72a2920a1aa29afa922a3a4a9aa22a960711b6004820152600060248201526001600160a01b038316906357b5a1c690604401602060405180830381865afa158015620000b0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620000d691906200028f565b6001600160a01b03908116608052604051632bdad0e360e11b815267545245415355525960c01b60048201526000602482015290881692506357b5a1c69150604401602060405180830381865afa15801562000136573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200015c91906200028f565b6001600160a01b031660a05261271061ffff841610806200018457508361ffff168361ffff16105b15620001a3576040516347fbaa9760e01b815260040160405180910390fd5b61ffff93841660c05291831660e052821661010052166101205250620002b4565b6001600160a01b038116620001ec57604051635919af9760e11b815260040160405180910390fd5b50565b80516001600160a01b03811681146200020757600080fd5b919050565b805161ffff811681146200020757600080fd5b600080600080600060a086880312156200023857600080fd5b6200024386620001ef565b945062000253602087016200020c565b935062000263604087016200020c565b925062000273606087016200020c565b915062000283608087016200020c565b90509295509295909350565b600060208284031215620002a257600080fd5b620002ad82620001ef565b9392505050565b60805160a05160c05160e0516101005161012051611b6c62000350600039600081816101a301526107e0015260008181610142015261078901526000818161017c01528181610df201528181610ec60152610ef90152600081816101dd01528181610a4201528181610dc101528181610e350152610e6601526000818160dc0152610bf701526000818161011b01526111ac0152611b6c6000f3fe608060405234801561001057600080fd5b50600436106100a35760003560e01c80637d196f7211610076578063a88e8f6d1161005b578063a88e8f6d1461019e578063bf7520ba146101c5578063e1b4264c146101d857600080fd5b80637d196f721461013d578063803a09501461017757600080fd5b806354fd4d50146100a85780635b0c6e08146100c457806361d027b3146100d75780637a0c7b2114610116575b600080fd5b6100b161012c81565b6040519081526020015b60405180910390f35b6100b16100d23660046114bd565b6101ff565b6100fe7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016100bb565b6100fe7f000000000000000000000000000000000000000000000000000000000000000081565b6101647f000000000000000000000000000000000000000000000000000000000000000081565b60405161ffff90911681526020016100bb565b6101647f000000000000000000000000000000000000000000000000000000000000000081565b6101647f000000000000000000000000000000000000000000000000000000000000000081565b6100b16101d33660046114bd565b610345565b6101647f000000000000000000000000000000000000000000000000000000000000000081565b6000610209610469565b6000805460ff1916600217815561021f896104c6565b905061022c818585610820565b610237818a8a6109d5565b60a08101516040808301516060840151915163b66102df60e01b8152600481018b90526001600160a01b0392831660248201528b83166044820152612710929091169063b66102df90606401602060405180830381865afa1580156102a0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102c4919061157e565b6102ce91906115ad565b6102d891906115c4565b915085821015610314576040517f0579074c00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610322818a8a8a868a610aa1565b61032c818a610dbc565b506000805460ff19166001179055979650505050505050565b600061034f610469565b6000805460ff19166002178155610365896104c6565b9050610372818585610820565b61037d818a8a6109d5565b60a08101516040808301516060840151915163b66102df60e01b8152600481018b90526001600160a01b038c81166024830152928316604482015261271093929091169063b66102df90606401602060405180830381865afa1580156103e7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061040b919061157e565b61041591906115ad565b61041f91906115c4565b91508582111561045b576040517f6dd4012100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610322818a8a858b8a610aa1565b60005460ff16600119016104c45760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064015b60405180910390fd5b565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a0810191909152816001600160a01b031663c12c21c06040518163ffffffff1660e01b8152600401602060405180830381865afa158015610536573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061055a91906115f6565b6001600160a01b0316808252604080517f2f7a18810000000000000000000000000000000000000000000000000000000081529051632f7a1881916004808201926020929091908290030181865afa1580156105ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105de91906115f6565b81602001906001600160a01b031690816001600160a01b03168152505080600001516001600160a01b0316632630c12f6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561063d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061066191906115f6565b81604001906001600160a01b031690816001600160a01b03168152505080600001516001600160a01b0316636f307dc36040518163ffffffff1660e01b8152600401602060405180830381865afa1580156106c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106e491906115f6565b6001600160a01b0390811660608301528151604080517f9af1d35a000000000000000000000000000000000000000000000000000000008152905160009384931691639af1d35a9160048083019260a09291908290030181865afa158015610750573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610774919061162c565b505061ffff91821694508116925061271091507f0000000000000000000000000000000000000000000000000000000000000000166107b38383611691565b6107bd91906115ad565b6107c791906115c4565b6107d390612710611691565b60a08401526127106108097f000000000000000000000000000000000000000000000000000000000000000061ffff16846115ad565b61081391906115c4565b6080840152509092915050565b8060005b818110156109ce573684848381811061083f5761083f6116a4565b905060200281019061085191906116ba565b60408701519091506000906001600160a01b031663ff29984561087760208501856116da565b6108876040860160208701611705565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b1681526001600160a01b03909216600483015215156024820152604401602060405180830381865afa1580156108ea573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061090e91906115f6565b90506001600160a01b038116610950576040517f68d8c6d800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001600160a01b038116638736ec4761096c6040850185611722565b6040518363ffffffff1660e01b8152600401610989929190611770565b600060405180830381600087803b1580156109a357600080fd5b505af11580156109b7573d6000803e3d6000fd5b505050505050806109c79061179f565b9050610824565b5050505050565b82516109e090610f5d565b82606001516001600160a01b0316816001600160a01b031603610a2f576040517ff0851a1200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610a66610a40846000015184610f9f565b7f00000000000000000000000000000000000000000000000000000000000000006110c2565b610a9c576040517f234b893b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b505050565b6060860151610abb906001600160a01b03163387866110f8565b608086015160009061271090610ad190866115ad565b610adb91906115c4565b9050610ae78185611691565b6040805160038082526080820190925291955060009190816020015b604080518082019091526000815260606020820152815260200190600190039081610b03579050509050604051806040016040528089602001516001600160a01b0316815260200186604051602401610b5e91815260200190565b60408051601f198184030181529190526020810180516001600160e01b03167f2a7ba1f700000000000000000000000000000000000000000000000000000000179052905281518290600090610bb657610bb66116a4565b6020908102919091018101919091526040805180820182528a8301516001600160a01b03908116825260608c015192519281166024840152604483018690527f00000000000000000000000000000000000000000000000000000000000000001660648301529182019060840160408051601f198184030181529190526020810180516001600160e01b031662f8844560e51b1790529052815182906001908110610c6357610c636116a4565b6020908102919091018101919091526040805180820182528a8301516001600160a01b039081168252915189831660248201526044810188905291861660648301529182019060840160408051601f198184030181529190526020810180516001600160e01b031662f8844560e51b1790529052815182906002908110610cec57610cec6116a4565b602002602001018190525087602001516001600160a01b0316637e2ca9db88836040518363ffffffff1660e01b8152600401610d2992919061181e565b600060405180830381600087803b158015610d4357600080fd5b505af1158015610d57573d6000803e3d6000fd5b5050895160408051898152602081018990529081018690526001600160a01b038a811694508b81169350909116907f40350e8625a7c7ce13ace10daee23cc0d714408aab88d4798b867520aa0a112a9060600160405180910390a45050505050505050565b6127107f000000000000000000000000000000000000000000000000000000000000000061ffff1611801590610e15575061ffff7f00000000000000000000000000000000000000000000000000000000000000008116145b15610e1e575050565b6000610e2e836000015183610f9f565b90506127107f000000000000000000000000000000000000000000000000000000000000000061ffff16118015610e8a5750610e8a817f00000000000000000000000000000000000000000000000000000000000000006110c2565b15610ec1576040517fc346a66000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61ffff7f0000000000000000000000000000000000000000000000000000000000000000811614801590610f265750610f2481610f1f7f000000000000000000000000000000000000000000000000000000000000000060016118a7565b6110c2565b155b15610a9c576040517fd4e96b1900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610f6681611171565b610f9c576040517fbc6a488a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50565b61102c604051806101c0016040528060008152602001600081526020016000815260200160006fffffffffffffffffffffffffffffffff16815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016060815260200160006001600160a01b031681525090565b6040517f0d334ca60000000000000000000000000000000000000000000000000000000081526001600160a01b03841690630d334ca6906110749085906003906004016118c9565b600060405180830381865afa158015611091573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526110b991908101906119e7565b90505b92915050565b600061271061ffff168261ffff168460c001516110df91906115ad565b6110e991906115c4565b83610120015110905092915050565b604080516001600160a01b0385811660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03167f23b872dd0000000000000000000000000000000000000000000000000000000017905261116b908590611219565b50505050565b6040517f6fbc6f6b0000000000000000000000000000000000000000000000000000000081526001600160a01b0382811660048301526000917f000000000000000000000000000000000000000000000000000000000000000090911690636fbc6f6b90602401602060405180830381865afa1580156111f5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110bc9190611af4565b600061126e826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b03166113019092919063ffffffff16565b905080516000148061128f57508080602001905181019061128f9190611af4565b610a9c5760405162461bcd60e51b815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e60448201527f6f7420737563636565640000000000000000000000000000000000000000000060648201526084016104bb565b60606113108484600085611318565b949350505050565b6060824710156113905760405162461bcd60e51b815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f60448201527f722063616c6c000000000000000000000000000000000000000000000000000060648201526084016104bb565b600080866001600160a01b031685876040516113ac9190611b11565b60006040518083038185875af1925050503d80600081146113e9576040519150601f19603f3d011682016040523d82523d6000602084013e6113ee565b606091505b50915091506113ff8783838761140a565b979650505050505050565b60608315611479578251600003611472576001600160a01b0385163b6114725760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000060448201526064016104bb565b5081611310565b611310838381511561148e5781518083602001fd5b8060405162461bcd60e51b81526004016104bb9190611b23565b6001600160a01b0381168114610f9c57600080fd5b600080600080600080600060c0888a0312156114d857600080fd5b87356114e3816114a8565b965060208801356114f3816114a8565b955060408801359450606088013593506080880135611511816114a8565b925060a088013567ffffffffffffffff8082111561152e57600080fd5b818a0191508a601f83011261154257600080fd5b81358181111561155157600080fd5b8b60208260051b850101111561156657600080fd5b60208301945080935050505092959891949750929550565b60006020828403121561159057600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b80820281158282048414176110bc576110bc611597565b6000826115e157634e487b7160e01b600052601260045260246000fd5b500490565b80516115f1816114a8565b919050565b60006020828403121561160857600080fd5b8151611613816114a8565b9392505050565b805161ffff811681146115f157600080fd5b600080600080600060a0868803121561164457600080fd5b61164d8661161a565b945061165b6020870161161a565b93506116696040870161161a565b92506116776060870161161a565b91506116856080870161161a565b90509295509295909350565b818103818111156110bc576110bc611597565b634e487b7160e01b600052603260045260246000fd5b60008235605e198336030181126116d057600080fd5b9190910192915050565b6000602082840312156116ec57600080fd5b8135611613816114a8565b8015158114610f9c57600080fd5b60006020828403121561171757600080fd5b8135611613816116f7565b6000808335601e1984360301811261173957600080fd5b83018035915067ffffffffffffffff82111561175457600080fd5b60200191503681900382131561176957600080fd5b9250929050565b60208152816020820152818360408301376000818301604090810191909152601f909201601f19160101919050565b6000600182016117b1576117b1611597565b5060010190565b634e487b7160e01b600052604160045260246000fd5b60005b838110156117e95781810151838201526020016117d1565b50506000910152565b6000815180845261180a8160208601602086016117ce565b601f01601f19169290920160200192915050565b600060408083016001600160a01b0380871685526020838187015282875180855260608801915060608160051b890101945082890160005b8281101561189757898703605f190184528151805187168852850151858801899052611884898901826117f2565b9750509284019290840190600101611856565b50949a9950505050505050505050565b61ffff8181168382160190808211156118c2576118c2611597565b5092915050565b6001600160a01b038316815260408101600583106118f757634e487b7160e01b600052602160045260246000fd5b8260208301529392505050565b6040516101c0810167ffffffffffffffff81118282101715611928576119286117b8565b60405290565b80516fffffffffffffffffffffffffffffffff811681146115f157600080fd5b600082601f83011261195f57600080fd5b8151602067ffffffffffffffff8083111561197c5761197c6117b8565b8260051b604051601f19603f830116810181811084821117156119a1576119a16117b8565b6040529384528581018301938381019250878511156119bf57600080fd5b83870191505b848210156113ff5781516119d8816114a8565b835291830191908301906119c5565b6000602082840312156119f957600080fd5b815167ffffffffffffffff80821115611a1157600080fd5b908301906101c08286031215611a2657600080fd5b611a2e611904565b825181526020830151602082015260408301516040820152611a526060840161192e565b60608201526080830151608082015260a083015160a082015260c083015160c082015260e083015160e08201526101008084015181830152506101208084015181830152506101408084015181830152506101608084015181830152506101808084015183811115611ac357600080fd5b611acf8882870161194e565b8284015250506101a09150611ae58284016115e6565b91810191909152949350505050565b600060208284031215611b0657600080fd5b8151611613816116f7565b600082516116d08184602087016117ce565b6020815260006110b960208301846117f256fea26469706673582212209cfc0b1b3e31b58a0dc54bddf26d6a4181f69b157d0447d4035c09937e6a1bd564736f6c634300081100330000000000000000000000002eb0be5585e49190414307597912bd039a029eda00000000000000000000000000000000000000000000000000000000000029680000000000000000000000000000000000000000000000000000000000002af8000000000000000000000000000000000000000000000000000000000000138800000000000000000000000000000000000000000000000000000000000013880000000000000000000000000000
Signatures
0x000000000000000000000000ef3cfa199137387047318a06efba931db07e7b4b000000000000000000000000000000000000000000000000000000000000000001