false
false

Contract Address Details

0xcf2846a3fad141aa0e4651cb332f96371c239dd4

Token
Valeria (VAL)
Creator
0x754a3c–ae6113 at 0x165057–201a1d
Balance
0 Xai ( )
Tokens
Fetching tokens...
Transactions
445 Transactions
Transfers
0 Transfers
Gas Used
19,989,654
Last Balance Update
116736135

Contract Creation Code

Verify & Publish
0x6101606040523480156200001257600080fd5b5060405162003f5738038062003f578339810160408190526200003591620001f0565b6040518060400160405280600781526020016656616c6572696160c81b81525080604051806040016040528060018152602001603160f81b8152506040518060400160405280600781526020016656616c6572696160c81b8152506040518060400160405280600381526020016215905360ea1b815250858282828080620000cc620000c66200019c60201b60201c565b620001a0565b6001600160a01b031660805250600a9050620000e98382620002c7565b50600b620000f88282620002c7565b505085516020968701208551958701959095206101008690526101208190524660c0818152604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f818c018190528183019a909a52606081019490945260808401929092523060a0808501829052835180860382018152949092019092528251929098019190912090965250505060e092909252610140525062000393915050565b3390565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000602082840312156200020357600080fd5b81516001600160a01b03811681146200021b57600080fd5b9392505050565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200024d57607f821691505b6020821081036200026e57634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620002c257600081815260208120601f850160051c810160208610156200029d5750805b601f850160051c820191505b81811015620002be57828155600101620002a9565b5050505b505050565b81516001600160401b03811115620002e357620002e362000222565b620002fb81620002f4845462000238565b8462000274565b602080601f8311600181146200033357600084156200031a5750858301515b600019600386901b1c1916600185901b178555620002be565b600085815260208120601f198616915b82811015620003645788860151825594840194600190910190840162000343565b5085821015620003835787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b60805160a05160c05160e051610100516101205161014051613b31620004266000396000611fd20152600061202101526000611ffc01526000611f5501526000611f7f01526000611fa9015260008181610752015281816108ed01528181610c0c01528181610ccc01528181610d6a01528181610f160152818161146801528181611a77015261267b0152613b316000f3fe6080604052600436106102925760003560e01c80637ecebe001161015a578063c4461834116100c1578063eab45d9c1161007a578063eab45d9c1461083d578063eb8d72b71461085d578063ed629c5c1461087d578063f2fde38b14610897578063f5ecbdbc146108b7578063fc0c546a146108d757600080fd5b8063c446183414610794578063cbed8b9c146107aa578063d1deba1f146107ca578063d505accf146107dd578063dd62ed3e146107fd578063df2a5b3b1461081d57600080fd5b80639f38369a116101135780639f38369a146106c0578063a457c2d7146106e0578063a6c3d16514610700578063a9059cbb14610720578063b353aaa714610740578063baf3292d1461077457600080fd5b80637ecebe00146105ec5780638cfd8f5c1461060c5780638da5cb5b146106445780639358928b14610676578063950c8a741461068b57806395d89b41146106ab57600080fd5b806339509351116101fe57806351905636116101b757806351905636146104ff5780635b8c41e61461051257806366ad5c8a1461056157806370a0823114610581578063715018a6146105b75780637533d788146105cc57600080fd5b806339509351146104355780633d8b38f6146104555780633f1f4fa41461047557806342d65a8d146104a257806344770515146104c25780634c42899a146104d757600080fd5b806310ddb1371161025057806310ddb1371461037057806318160ddd1461039057806323b872dd146103af5780632a205e3d146103cf578063313ce567146104045780633644e5151461042057600080fd5b80621d35671461029757806301ffc9a7146102b957806306fdde03146102ee57806307e0db1714610310578063095ea7b3146103305780630df3748314610350575b600080fd5b3480156102a357600080fd5b506102b76102b2366004612e19565b6108ea565b005b3480156102c557600080fd5b506102d96102d4366004612eae565b610b1b565b60405190151581526020015b60405180910390f35b3480156102fa57600080fd5b50610303610b59565b6040516102e59190612f28565b34801561031c57600080fd5b506102b761032b366004612f3b565b610beb565b34801561033c57600080fd5b506102d961034b366004612f6d565b610c74565b34801561035c57600080fd5b506102b761036b366004612f99565b610c8c565b34801561037c57600080fd5b506102b761038b366004612f3b565b610cab565b34801561039c57600080fd5b506009545b6040519081526020016102e5565b3480156103bb57600080fd5b506102d96103ca366004612fb7565b610d03565b3480156103db57600080fd5b506103ef6103ea366004613008565b610d27565b604080519283526020830191909152016102e5565b34801561041057600080fd5b50604051601281526020016102e5565b34801561042c57600080fd5b506103a1610dfa565b34801561044157600080fd5b506102d9610450366004612f6d565b610e09565b34801561046157600080fd5b506102d96104703660046130a7565b610e2b565b34801561048157600080fd5b506103a1610490366004612f3b565b60036020526000908152604090205481565b3480156104ae57600080fd5b506102b76104bd3660046130a7565b610ef7565b3480156104ce57600080fd5b506103a1600081565b3480156104e357600080fd5b506104ec600081565b60405161ffff90911681526020016102e5565b6102b761050d3660046130fb565b610f7d565b34801561051e57600080fd5b506103a161052d366004613231565b6005602090815260009384526040808520845180860184018051928152908401958401959095209452929052825290205481565b34801561056d57600080fd5b506102b761057c366004612e19565b611002565b34801561058d57600080fd5b506103a161059c3660046132d3565b6001600160a01b031660009081526007602052604090205490565b3480156105c357600080fd5b506102b76110de565b3480156105d857600080fd5b506103036105e7366004612f3b565b6110f2565b3480156105f857600080fd5b506103a16106073660046132d3565b61118c565b34801561061857600080fd5b506103a16106273660046132f0565b600260209081526000928352604080842090915290825290205481565b34801561065057600080fd5b506000546001600160a01b03165b6040516001600160a01b0390911681526020016102e5565b34801561068257600080fd5b506103a16111aa565b34801561069757600080fd5b5060045461065e906001600160a01b031681565b3480156106b757600080fd5b506103036111b5565b3480156106cc57600080fd5b506103036106db366004612f3b565b6111c4565b3480156106ec57600080fd5b506102d96106fb366004612f6d565b6112da565b34801561070c57600080fd5b506102b761071b3660046130a7565b611355565b34801561072c57600080fd5b506102d961073b366004612f6d565b6113de565b34801561074c57600080fd5b5061065e7f000000000000000000000000000000000000000000000000000000000000000081565b34801561078057600080fd5b506102b761078f3660046132d3565b6113ec565b3480156107a057600080fd5b506103a161271081565b3480156107b657600080fd5b506102b76107c5366004613329565b611449565b6102b76107d8366004612e19565b6114d3565b3480156107e957600080fd5b506102b76107f836600461339b565b6116e9565b34801561080957600080fd5b506103a1610818366004613412565b61184d565b34801561082957600080fd5b506102b7610838366004613440565b611878565b34801561084957600080fd5b506102b7610858366004613470565b61192a565b34801561086957600080fd5b506102b76108783660046130a7565b611973565b34801561088957600080fd5b506006546102d99060ff1681565b3480156108a357600080fd5b506102b76108b23660046132d3565b6119cd565b3480156108c357600080fd5b506103036108d236600461348b565b611a46565b3480156108e357600080fd5b503061065e565b337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316146109675760405162461bcd60e51b815260206004820152601e60248201527f4c7a4170703a20696e76616c696420656e64706f696e742063616c6c6572000060448201526064015b60405180910390fd5b61ffff861660009081526001602052604081208054610985906134dc565b80601f01602080910402602001604051908101604052809291908181526020018280546109b1906134dc565b80156109fe5780601f106109d3576101008083540402835291602001916109fe565b820191906000526020600020905b8154815290600101906020018083116109e157829003601f168201915b50505050509050805186869050148015610a19575060008151115b8015610a41575080516020820120604051610a379088908890613510565b6040518091039020145b610a9c5760405162461bcd60e51b815260206004820152602660248201527f4c7a4170703a20696e76616c696420736f757263652073656e64696e6720636f6044820152651b9d1c9858dd60d21b606482015260840161095e565b610b128787878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8a018190048102820181019092528881528a935091508890889081908401838280828437600092019190915250611af792505050565b50505050505050565b60006001600160e01b031982161580610b4457506001600160e01b031982166336372b0760e01b145b80610b535750610b5382611b70565b92915050565b6060600a8054610b68906134dc565b80601f0160208091040260200160405190810160405280929190818152602001828054610b94906134dc565b8015610be15780601f10610bb657610100808354040283529160200191610be1565b820191906000526020600020905b815481529060010190602001808311610bc457829003601f168201915b5050505050905090565b610bf3611ba5565b6040516307e0db1760e01b815261ffff821660048201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906307e0db17906024015b600060405180830381600087803b158015610c5957600080fd5b505af1158015610c6d573d6000803e3d6000fd5b5050505050565b600033610c82818585611bff565b5060019392505050565b610c94611ba5565b61ffff909116600090815260036020526040902055565b610cb3611ba5565b6040516310ddb13760e01b815261ffff821660048201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906310ddb13790602401610c3f565b600033610d11858285611d23565b610d1c858585611d9d565b506001949350505050565b600080600080898989604051602001610d439493929190613549565b60408051601f198184030181529082905263040a7bb160e41b825291506001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906340a7bb1090610da9908d90309086908c908c908c90600401613578565b6040805180830381865afa158015610dc5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610de991906135ce565b925092505097509795505050505050565b6000610e04611f48565b905090565b600033610c82818585610e1c838361184d565b610e269190613608565b611bff565b61ffff831660009081526001602052604081208054829190610e4c906134dc565b80601f0160208091040260200160405190810160405280929190818152602001828054610e78906134dc565b8015610ec55780601f10610e9a57610100808354040283529160200191610ec5565b820191906000526020600020905b815481529060010190602001808311610ea857829003601f168201915b505050505090508383604051610edc929190613510565b60405180910390208180519060200120149150509392505050565b610eff611ba5565b6040516342d65a8d60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906342d65a8d90610f4f9086908690869060040161361b565b600060405180830381600087803b158015610f6957600080fd5b505af1158015610b12573d6000803e3d6000fd5b610ff7898989898080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8a018190048102820181019092528881528c93508b92508a918a908a908190840183828082843760009201919091525061206f92505050565b505050505050505050565b3330146110605760405162461bcd60e51b815260206004820152602660248201527f4e6f6e626c6f636b696e674c7a4170703a2063616c6c6572206d7573742062656044820152650204c7a4170760d41b606482015260840161095e565b6110d68686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f89018190048102820181019092528781528993509150879087908190840183828082843760009201919091525061211692505050565b505050505050565b6110e6611ba5565b6110f0600061217d565b565b6001602052600090815260409020805461110b906134dc565b80601f0160208091040260200160405190810160405280929190818152602001828054611137906134dc565b80156111845780601f1061115957610100808354040283529160200191611184565b820191906000526020600020905b81548152906001019060200180831161116757829003601f168201915b505050505081565b6001600160a01b0381166000908152600c6020526040812054610b53565b6000610e0460095490565b6060600b8054610b68906134dc565b61ffff81166000908152600160205260408120805460609291906111e7906134dc565b80601f0160208091040260200160405190810160405280929190818152602001828054611213906134dc565b80156112605780601f1061123557610100808354040283529160200191611260565b820191906000526020600020905b81548152906001019060200180831161124357829003601f168201915b5050505050905080516000036112b85760405162461bcd60e51b815260206004820152601d60248201527f4c7a4170703a206e6f20747275737465642070617468207265636f7264000000604482015260640161095e565b6112d36000601483516112cb9190613639565b8391906121cd565b9392505050565b600033816112e8828661184d565b9050838110156113485760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b606482015260840161095e565b610d1c8286868403611bff565b61135d611ba5565b8181306040516020016113729392919061364c565b60408051601f1981840301815291815261ffff851660009081526001602052209061139d90826136b8565b507f8c0400cfe2d1199b1a725c78960bcc2a344d869b80590d0f2bd005db15a572ce8383836040516113d19392919061361b565b60405180910390a1505050565b600033610c82818585611d9d565b6113f4611ba5565b600480546001600160a01b0319166001600160a01b0383169081179091556040519081527f5db758e995a17ec1ad84bdef7e8c3293a0bd6179bcce400dff5d4c3d87db726b906020015b60405180910390a150565b611451611ba5565b6040516332fb62e760e21b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063cbed8b9c906114a59088908890889088908890600401613777565b600060405180830381600087803b1580156114bf57600080fd5b505af1158015610ff7573d6000803e3d6000fd5b61ffff861660009081526005602052604080822090516114f69088908890613510565b90815260408051602092819003830190206001600160401b038716600090815292529020549050806115765760405162461bcd60e51b815260206004820152602360248201527f4e6f6e626c6f636b696e674c7a4170703a206e6f2073746f726564206d65737360448201526261676560e81b606482015260840161095e565b808383604051611587929190613510565b6040518091039020146115e65760405162461bcd60e51b815260206004820152602160248201527f4e6f6e626c6f636b696e674c7a4170703a20696e76616c6964207061796c6f616044820152601960fa1b606482015260840161095e565b61ffff871660009081526005602052604080822090516116099089908990613510565b90815260408051602092819003830181206001600160401b038916600090815290845282902093909355601f880182900482028301820190528682526116a1918991899089908190840183828082843760009201919091525050604080516020601f8a018190048102820181019092528881528a93509150889088908190840183828082843760009201919091525061211692505050565b7fc264d91f3adc5588250e1551f547752ca0cfa8f6b530d243b9f9f4cab10ea8e587878787856040516116d89594939291906137b0565b60405180910390a150505050505050565b834211156117395760405162461bcd60e51b815260206004820152601d60248201527f45524332305065726d69743a206578706972656420646561646c696e65000000604482015260640161095e565b60007f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98888886117688c6122da565b6040805160208101969096526001600160a01b0394851690860152929091166060840152608083015260a082015260c0810186905260e00160405160208183030381529060405280519060200120905060006117c382612302565b905060006117d382878787612350565b9050896001600160a01b0316816001600160a01b0316146118365760405162461bcd60e51b815260206004820152601e60248201527f45524332305065726d69743a20696e76616c6964207369676e61747572650000604482015260640161095e565b6118418a8a8a611bff565b50505050505050505050565b6001600160a01b03918216600090815260086020908152604080832093909416825291909152205490565b611880611ba5565b600081116118c85760405162461bcd60e51b81526020600482015260156024820152744c7a4170703a20696e76616c6964206d696e47617360581b604482015260640161095e565b61ffff83811660008181526002602090815260408083209487168084529482529182902085905581519283528201929092529081018290527f9d5c7c0b934da8fefa9c7760c98383778a12dfbfc0c3b3106518f43fb9508ac0906060016113d1565b611932611ba5565b6006805460ff19168215159081179091556040519081527f1584ad594a70cbe1e6515592e1272a987d922b097ead875069cebe8b40c004a49060200161143e565b61197b611ba5565b61ffff831660009081526001602052604090206119998284836137eb565b507ffa41487ad5d6728f0b19276fa1eddc16558578f5109fc39d2dc33c3230470dab8383836040516113d19392919061361b565b6119d5611ba5565b6001600160a01b038116611a3a5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161095e565b611a438161217d565b50565b604051633d7b2f6f60e21b815261ffff808616600483015284166024820152306044820152606481018290526060907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063f5ecbdbc90608401600060405180830381865afa158015611ac6573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611aee91908101906138f7565b95945050505050565b600080611b5a5a60966366ad5c8a60e01b89898989604051602401611b1f949392919061392b565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915230929190612378565b91509150816110d6576110d68686868685612404565b60006001600160e01b03198216630a72677560e11b1480610b5357506301ffc9a760e01b6001600160e01b0319831614610b53565b6000546001600160a01b031633146110f05760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161095e565b6001600160a01b038316611c615760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161095e565b6001600160a01b038216611cc25760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161095e565b6001600160a01b0383811660008181526008602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6000611d2f848461184d565b90506000198114611d975781811015611d8a5760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161095e565b611d978484848403611bff565b50505050565b6001600160a01b038316611e015760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161095e565b6001600160a01b038216611e635760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161095e565b6001600160a01b03831660009081526007602052604090205481811015611edb5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161095e565b6001600160a01b0380851660008181526007602052604080822086860390559286168082529083902080548601905591517fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90611f3b9086815260200190565b60405180910390a3611d97565b6000306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016148015611fa157507f000000000000000000000000000000000000000000000000000000000000000046145b15611fcb57507f000000000000000000000000000000000000000000000000000000000000000090565b50604080517f00000000000000000000000000000000000000000000000000000000000000006020808301919091527f0000000000000000000000000000000000000000000000000000000000000000828401527f000000000000000000000000000000000000000000000000000000000000000060608301524660808301523060a0808401919091528351808403909101815260c0909201909252805191012090565b61207d8660008360006124a6565b600061208b88888888612520565b905060008087836040516020016120a493929190613969565b60405160208183030381529060405290506120c3888287878734612552565b886001600160a01b03168861ffff167f39a4c66499bcf4b56d79f0dde8ed7a9d4925a0df55825206b2b8531e202be0d08985604051612103929190613996565b60405180910390a3505050505050505050565b602081015161ffff811661213557612130858585856126f7565b610c6d565b60405162461bcd60e51b815260206004820152601c60248201527f4f4654436f72653a20756e6b6e6f776e207061636b6574207479706500000000604482015260640161095e565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6060816121db81601f613608565b101561221a5760405162461bcd60e51b815260206004820152600e60248201526d736c6963655f6f766572666c6f7760901b604482015260640161095e565b6122248284613608565b845110156122685760405162461bcd60e51b8152602060048201526011602482015270736c6963655f6f75744f66426f756e647360781b604482015260640161095e565b60608215801561228757604051915060008252602082016040526122d1565b6040519150601f8416801560200281840101858101878315602002848b0101015b818310156122c05780518352602092830192016122a8565b5050858452601f01601f1916604052505b50949350505050565b6001600160a01b0381166000908152600c602052604090208054600181018255905b50919050565b6000610b5361230f611f48565b8360405161190160f01b6020820152602281018390526042810182905260009060620160405160208183030381529060405280519060200120905092915050565b600080600061236187878787612781565b9150915061236e81612842565b5095945050505050565b6000606060008060008661ffff166001600160401b0381111561239d5761239d6131c4565b6040519080825280601f01601f1916602001820160405280156123c7576020820181803683370190505b50905060008087516020890160008d8df191503d9250868311156123e9578692505b828152826000602083013e9093509150505b94509492505050565b8180519060200120600560008761ffff1661ffff1681526020019081526020016000208560405161243591906139b8565b9081526040805191829003602090810183206001600160401b0388166000908152915220919091557fe183f33de2837795525b4792ca4cd60535bd77c53b7e7030060bfcf5734d6b0c9061249290879087908790879087906139d4565b60405180910390a15050505050565b505050565b60065460ff16156124c2576124bd8484848461298c565b611d97565b815115611d975760405162461bcd60e51b815260206004820152602660248201527f4f4654436f72653a205f61646170746572506172616d73206d7573742062652060448201526532b6b83a3c9760d11b606482015260840161095e565b6000336001600160a01b038616811461253e5761253e868285611d23565b6125488684612a6b565b5090949350505050565b61ffff861660009081526001602052604081208054612570906134dc565b80601f016020809104026020016040519081016040528092919081815260200182805461259c906134dc565b80156125e95780601f106125be576101008083540402835291602001916125e9565b820191906000526020600020905b8154815290600101906020018083116125cc57829003601f168201915b50505050509050805160000361265a5760405162461bcd60e51b815260206004820152603060248201527f4c7a4170703a2064657374696e6174696f6e20636861696e206973206e6f742060448201526f61207472757374656420736f7572636560801b606482015260840161095e565b612665878751612b9f565b60405162c5803160e81b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063c58031009084906126bc908b9086908c908c908c908c90600401613a32565b6000604051808303818588803b1580156126d557600080fd5b505af11580156126e9573d6000803e3d6000fd5b505050505050505050505050565b6000808280602001905181019061270e9190613a8c565b9093509150600090506127218382612c10565b905061272e878284612c75565b9150806001600160a01b03168761ffff167fbf551ec93859b170f9b2141bd9298bf3f64322c6f7beb2543a0cb669834118bf8460405161277091815260200190565b60405180910390a350505050505050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08311156127b857506000905060036123fb565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa15801561280c573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116612835576000600192509250506123fb565b9660009650945050505050565b600081600481111561285657612856613ae5565b0361285e5750565b600181600481111561287257612872613ae5565b036128bf5760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e61747572650000000000000000604482015260640161095e565b60028160048111156128d3576128d3613ae5565b036129205760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e67746800604482015260640161095e565b600381600481111561293457612934613ae5565b03611a435760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b606482015260840161095e565b600061299783612c88565b61ffff8087166000908152600260209081526040808320938916835292905290812054919250906129c9908490613608565b905060008111612a1b5760405162461bcd60e51b815260206004820152601a60248201527f4c7a4170703a206d696e4761734c696d6974206e6f7420736574000000000000604482015260640161095e565b808210156110d65760405162461bcd60e51b815260206004820152601b60248201527f4c7a4170703a20676173206c696d697420697320746f6f206c6f770000000000604482015260640161095e565b6001600160a01b038216612acb5760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b606482015260840161095e565b6001600160a01b03821660009081526007602052604090205481811015612b3f5760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b606482015260840161095e565b6001600160a01b03831660008181526007602090815260408083208686039055600980548790039055518581529192917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3505050565b61ffff821660009081526003602052604081205490819003612bc057506127105b808211156124a15760405162461bcd60e51b815260206004820181905260248201527f4c7a4170703a207061796c6f61642073697a6520697320746f6f206c61726765604482015260640161095e565b6000612c1d826014613608565b83511015612c655760405162461bcd60e51b8152602060048201526015602482015274746f416464726573735f6f75744f66426f756e647360581b604482015260640161095e565b500160200151600160601b900490565b6000612c818383612ce4565b5092915050565b6000602282511015612cdc5760405162461bcd60e51b815260206004820152601c60248201527f4c7a4170703a20696e76616c69642061646170746572506172616d7300000000604482015260640161095e565b506022015190565b6001600160a01b038216612d3a5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161095e565b8060096000828254612d4c9190613608565b90915550506001600160a01b0382166000818152600760209081526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b61ffff81168114611a4357600080fd5b60008083601f840112612dc757600080fd5b5081356001600160401b03811115612dde57600080fd5b602083019150836020828501011115612df657600080fd5b9250929050565b80356001600160401b0381168114612e1457600080fd5b919050565b60008060008060008060808789031215612e3257600080fd5b8635612e3d81612da5565b955060208701356001600160401b0380821115612e5957600080fd5b612e658a838b01612db5565b9097509550859150612e7960408a01612dfd565b94506060890135915080821115612e8f57600080fd5b50612e9c89828a01612db5565b979a9699509497509295939492505050565b600060208284031215612ec057600080fd5b81356001600160e01b0319811681146112d357600080fd5b60005b83811015612ef3578181015183820152602001612edb565b50506000910152565b60008151808452612f14816020860160208601612ed8565b601f01601f19169290920160200192915050565b6020815260006112d36020830184612efc565b600060208284031215612f4d57600080fd5b81356112d381612da5565b6001600160a01b0381168114611a4357600080fd5b60008060408385031215612f8057600080fd5b8235612f8b81612f58565b946020939093013593505050565b60008060408385031215612fac57600080fd5b8235612f8b81612da5565b600080600060608486031215612fcc57600080fd5b8335612fd781612f58565b92506020840135612fe781612f58565b929592945050506040919091013590565b80358015158114612e1457600080fd5b600080600080600080600060a0888a03121561302357600080fd5b873561302e81612da5565b965060208801356001600160401b038082111561304a57600080fd5b6130568b838c01612db5565b909850965060408a0135955086915061307160608b01612ff8565b945060808a013591508082111561308757600080fd5b506130948a828b01612db5565b989b979a50959850939692959293505050565b6000806000604084860312156130bc57600080fd5b83356130c781612da5565b925060208401356001600160401b038111156130e257600080fd5b6130ee86828701612db5565b9497909650939450505050565b600080600080600080600080600060e08a8c03121561311957600080fd5b893561312481612f58565b985060208a013561313481612da5565b975060408a01356001600160401b038082111561315057600080fd5b61315c8d838e01612db5565b909950975060608c0135965060808c0135915061317882612f58565b90945060a08b01359061318a82612f58565b90935060c08b013590808211156131a057600080fd5b506131ad8c828d01612db5565b915080935050809150509295985092959850929598565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715613202576132026131c4565b604052919050565b60006001600160401b03821115613223576132236131c4565b50601f01601f191660200190565b60008060006060848603121561324657600080fd5b833561325181612da5565b925060208401356001600160401b0381111561326c57600080fd5b8401601f8101861361327d57600080fd5b803561329061328b8261320a565b6131da565b8181528760208385010111156132a557600080fd5b816020840160208301376000602083830101528094505050506132ca60408501612dfd565b90509250925092565b6000602082840312156132e557600080fd5b81356112d381612f58565b6000806040838503121561330357600080fd5b823561330e81612da5565b9150602083013561331e81612da5565b809150509250929050565b60008060008060006080868803121561334157600080fd5b853561334c81612da5565b9450602086013561335c81612da5565b93506040860135925060608601356001600160401b0381111561337e57600080fd5b61338a88828901612db5565b969995985093965092949392505050565b600080600080600080600060e0888a0312156133b657600080fd5b87356133c181612f58565b965060208801356133d181612f58565b95506040880135945060608801359350608088013560ff811681146133f557600080fd5b9699959850939692959460a0840135945060c09093013592915050565b6000806040838503121561342557600080fd5b823561343081612f58565b9150602083013561331e81612f58565b60008060006060848603121561345557600080fd5b833561346081612da5565b92506020840135612fe781612da5565b60006020828403121561348257600080fd5b6112d382612ff8565b600080600080608085870312156134a157600080fd5b84356134ac81612da5565b935060208501356134bc81612da5565b925060408501356134cc81612f58565b9396929550929360600135925050565b600181811c908216806134f057607f821691505b6020821081036122fc57634e487b7160e01b600052602260045260246000fd5b8183823760009101908152919050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b61ffff85168152606060208201526000613567606083018587613520565b905082604083015295945050505050565b61ffff871681526001600160a01b038616602082015260a0604082018190526000906135a690830187612efc565b851515606084015282810360808401526135c1818587613520565b9998505050505050505050565b600080604083850312156135e157600080fd5b505080516020909101519092909150565b634e487b7160e01b600052601160045260246000fd5b80820180821115610b5357610b536135f2565b61ffff84168152604060208201526000611aee604083018486613520565b81810381811115610b5357610b536135f2565b8284823760609190911b6bffffffffffffffffffffffff19169101908152601401919050565b601f8211156124a157600081815260208120601f850160051c810160208610156136995750805b601f850160051c820191505b818110156110d6578281556001016136a5565b81516001600160401b038111156136d1576136d16131c4565b6136e5816136df84546134dc565b84613672565b602080601f83116001811461371a57600084156137025750858301515b600019600386901b1c1916600185901b1785556110d6565b600085815260208120601f198616915b828110156137495788860151825594840194600190910190840161372a565b50858210156137675787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600061ffff8088168352808716602084015250846040830152608060608301526137a5608083018486613520565b979650505050505050565b61ffff861681526080602082015260006137ce608083018688613520565b6001600160401b0394909416604083015250606001529392505050565b6001600160401b03831115613802576138026131c4565b6138168361381083546134dc565b83613672565b6000601f84116001811461384a57600085156138325750838201355b600019600387901b1c1916600186901b178355610c6d565b600083815260209020601f19861690835b8281101561387b578685013582556020948501946001909201910161385b565b50868210156138985760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b600082601f8301126138bb57600080fd5b81516138c961328b8261320a565b8181528460208386010111156138de57600080fd5b6138ef826020830160208701612ed8565b949350505050565b60006020828403121561390957600080fd5b81516001600160401b0381111561391f57600080fd5b6138ef848285016138aa565b61ffff851681526080602082015260006139486080830186612efc565b6001600160401b038516604084015282810360608401526137a58185612efc565b61ffff841681526060602082015260006139866060830185612efc565b9050826040830152949350505050565b6040815260006139a96040830185612efc565b90508260208301529392505050565b600082516139ca818460208701612ed8565b9190910192915050565b61ffff8616815260a0602082015260006139f160a0830187612efc565b6001600160401b03861660408401528281036060840152613a128186612efc565b90508281036080840152613a268185612efc565b98975050505050505050565b61ffff8716815260c060208201526000613a4f60c0830188612efc565b8281036040840152613a618188612efc565b6001600160a01b0387811660608601528616608085015283810360a085015290506135c18185612efc565b600080600060608486031215613aa157600080fd5b8351613aac81612da5565b60208501519093506001600160401b03811115613ac857600080fd5b613ad4868287016138aa565b925050604084015190509250925092565b634e487b7160e01b600052602160045260246000fdfea264697066735822122022a02cb583b408b9b38a544e085331bbf4a741ca2aee5d24391a5c881556fde164736f6c63430008130033000000000000000000000000b6319cc6c8c27a8f5daf0dd3df91ea35c4720dd7

Deployed ByteCode

0x6080604052600436106102925760003560e01c80637ecebe001161015a578063c4461834116100c1578063eab45d9c1161007a578063eab45d9c1461083d578063eb8d72b71461085d578063ed629c5c1461087d578063f2fde38b14610897578063f5ecbdbc146108b7578063fc0c546a146108d757600080fd5b8063c446183414610794578063cbed8b9c146107aa578063d1deba1f146107ca578063d505accf146107dd578063dd62ed3e146107fd578063df2a5b3b1461081d57600080fd5b80639f38369a116101135780639f38369a146106c0578063a457c2d7146106e0578063a6c3d16514610700578063a9059cbb14610720578063b353aaa714610740578063baf3292d1461077457600080fd5b80637ecebe00146105ec5780638cfd8f5c1461060c5780638da5cb5b146106445780639358928b14610676578063950c8a741461068b57806395d89b41146106ab57600080fd5b806339509351116101fe57806351905636116101b757806351905636146104ff5780635b8c41e61461051257806366ad5c8a1461056157806370a0823114610581578063715018a6146105b75780637533d788146105cc57600080fd5b806339509351146104355780633d8b38f6146104555780633f1f4fa41461047557806342d65a8d146104a257806344770515146104c25780634c42899a146104d757600080fd5b806310ddb1371161025057806310ddb1371461037057806318160ddd1461039057806323b872dd146103af5780632a205e3d146103cf578063313ce567146104045780633644e5151461042057600080fd5b80621d35671461029757806301ffc9a7146102b957806306fdde03146102ee57806307e0db1714610310578063095ea7b3146103305780630df3748314610350575b600080fd5b3480156102a357600080fd5b506102b76102b2366004612e19565b6108ea565b005b3480156102c557600080fd5b506102d96102d4366004612eae565b610b1b565b60405190151581526020015b60405180910390f35b3480156102fa57600080fd5b50610303610b59565b6040516102e59190612f28565b34801561031c57600080fd5b506102b761032b366004612f3b565b610beb565b34801561033c57600080fd5b506102d961034b366004612f6d565b610c74565b34801561035c57600080fd5b506102b761036b366004612f99565b610c8c565b34801561037c57600080fd5b506102b761038b366004612f3b565b610cab565b34801561039c57600080fd5b506009545b6040519081526020016102e5565b3480156103bb57600080fd5b506102d96103ca366004612fb7565b610d03565b3480156103db57600080fd5b506103ef6103ea366004613008565b610d27565b604080519283526020830191909152016102e5565b34801561041057600080fd5b50604051601281526020016102e5565b34801561042c57600080fd5b506103a1610dfa565b34801561044157600080fd5b506102d9610450366004612f6d565b610e09565b34801561046157600080fd5b506102d96104703660046130a7565b610e2b565b34801561048157600080fd5b506103a1610490366004612f3b565b60036020526000908152604090205481565b3480156104ae57600080fd5b506102b76104bd3660046130a7565b610ef7565b3480156104ce57600080fd5b506103a1600081565b3480156104e357600080fd5b506104ec600081565b60405161ffff90911681526020016102e5565b6102b761050d3660046130fb565b610f7d565b34801561051e57600080fd5b506103a161052d366004613231565b6005602090815260009384526040808520845180860184018051928152908401958401959095209452929052825290205481565b34801561056d57600080fd5b506102b761057c366004612e19565b611002565b34801561058d57600080fd5b506103a161059c3660046132d3565b6001600160a01b031660009081526007602052604090205490565b3480156105c357600080fd5b506102b76110de565b3480156105d857600080fd5b506103036105e7366004612f3b565b6110f2565b3480156105f857600080fd5b506103a16106073660046132d3565b61118c565b34801561061857600080fd5b506103a16106273660046132f0565b600260209081526000928352604080842090915290825290205481565b34801561065057600080fd5b506000546001600160a01b03165b6040516001600160a01b0390911681526020016102e5565b34801561068257600080fd5b506103a16111aa565b34801561069757600080fd5b5060045461065e906001600160a01b031681565b3480156106b757600080fd5b506103036111b5565b3480156106cc57600080fd5b506103036106db366004612f3b565b6111c4565b3480156106ec57600080fd5b506102d96106fb366004612f6d565b6112da565b34801561070c57600080fd5b506102b761071b3660046130a7565b611355565b34801561072c57600080fd5b506102d961073b366004612f6d565b6113de565b34801561074c57600080fd5b5061065e7f000000000000000000000000b6319cc6c8c27a8f5daf0dd3df91ea35c4720dd781565b34801561078057600080fd5b506102b761078f3660046132d3565b6113ec565b3480156107a057600080fd5b506103a161271081565b3480156107b657600080fd5b506102b76107c5366004613329565b611449565b6102b76107d8366004612e19565b6114d3565b3480156107e957600080fd5b506102b76107f836600461339b565b6116e9565b34801561080957600080fd5b506103a1610818366004613412565b61184d565b34801561082957600080fd5b506102b7610838366004613440565b611878565b34801561084957600080fd5b506102b7610858366004613470565b61192a565b34801561086957600080fd5b506102b76108783660046130a7565b611973565b34801561088957600080fd5b506006546102d99060ff1681565b3480156108a357600080fd5b506102b76108b23660046132d3565b6119cd565b3480156108c357600080fd5b506103036108d236600461348b565b611a46565b3480156108e357600080fd5b503061065e565b337f000000000000000000000000b6319cc6c8c27a8f5daf0dd3df91ea35c4720dd76001600160a01b0316146109675760405162461bcd60e51b815260206004820152601e60248201527f4c7a4170703a20696e76616c696420656e64706f696e742063616c6c6572000060448201526064015b60405180910390fd5b61ffff861660009081526001602052604081208054610985906134dc565b80601f01602080910402602001604051908101604052809291908181526020018280546109b1906134dc565b80156109fe5780601f106109d3576101008083540402835291602001916109fe565b820191906000526020600020905b8154815290600101906020018083116109e157829003601f168201915b50505050509050805186869050148015610a19575060008151115b8015610a41575080516020820120604051610a379088908890613510565b6040518091039020145b610a9c5760405162461bcd60e51b815260206004820152602660248201527f4c7a4170703a20696e76616c696420736f757263652073656e64696e6720636f6044820152651b9d1c9858dd60d21b606482015260840161095e565b610b128787878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8a018190048102820181019092528881528a935091508890889081908401838280828437600092019190915250611af792505050565b50505050505050565b60006001600160e01b031982161580610b4457506001600160e01b031982166336372b0760e01b145b80610b535750610b5382611b70565b92915050565b6060600a8054610b68906134dc565b80601f0160208091040260200160405190810160405280929190818152602001828054610b94906134dc565b8015610be15780601f10610bb657610100808354040283529160200191610be1565b820191906000526020600020905b815481529060010190602001808311610bc457829003601f168201915b5050505050905090565b610bf3611ba5565b6040516307e0db1760e01b815261ffff821660048201527f000000000000000000000000b6319cc6c8c27a8f5daf0dd3df91ea35c4720dd76001600160a01b0316906307e0db17906024015b600060405180830381600087803b158015610c5957600080fd5b505af1158015610c6d573d6000803e3d6000fd5b5050505050565b600033610c82818585611bff565b5060019392505050565b610c94611ba5565b61ffff909116600090815260036020526040902055565b610cb3611ba5565b6040516310ddb13760e01b815261ffff821660048201527f000000000000000000000000b6319cc6c8c27a8f5daf0dd3df91ea35c4720dd76001600160a01b0316906310ddb13790602401610c3f565b600033610d11858285611d23565b610d1c858585611d9d565b506001949350505050565b600080600080898989604051602001610d439493929190613549565b60408051601f198184030181529082905263040a7bb160e41b825291506001600160a01b037f000000000000000000000000b6319cc6c8c27a8f5daf0dd3df91ea35c4720dd716906340a7bb1090610da9908d90309086908c908c908c90600401613578565b6040805180830381865afa158015610dc5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610de991906135ce565b925092505097509795505050505050565b6000610e04611f48565b905090565b600033610c82818585610e1c838361184d565b610e269190613608565b611bff565b61ffff831660009081526001602052604081208054829190610e4c906134dc565b80601f0160208091040260200160405190810160405280929190818152602001828054610e78906134dc565b8015610ec55780601f10610e9a57610100808354040283529160200191610ec5565b820191906000526020600020905b815481529060010190602001808311610ea857829003601f168201915b505050505090508383604051610edc929190613510565b60405180910390208180519060200120149150509392505050565b610eff611ba5565b6040516342d65a8d60e01b81526001600160a01b037f000000000000000000000000b6319cc6c8c27a8f5daf0dd3df91ea35c4720dd716906342d65a8d90610f4f9086908690869060040161361b565b600060405180830381600087803b158015610f6957600080fd5b505af1158015610b12573d6000803e3d6000fd5b610ff7898989898080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f8a018190048102820181019092528881528c93508b92508a918a908a908190840183828082843760009201919091525061206f92505050565b505050505050505050565b3330146110605760405162461bcd60e51b815260206004820152602660248201527f4e6f6e626c6f636b696e674c7a4170703a2063616c6c6572206d7573742062656044820152650204c7a4170760d41b606482015260840161095e565b6110d68686868080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050604080516020601f89018190048102820181019092528781528993509150879087908190840183828082843760009201919091525061211692505050565b505050505050565b6110e6611ba5565b6110f0600061217d565b565b6001602052600090815260409020805461110b906134dc565b80601f0160208091040260200160405190810160405280929190818152602001828054611137906134dc565b80156111845780601f1061115957610100808354040283529160200191611184565b820191906000526020600020905b81548152906001019060200180831161116757829003601f168201915b505050505081565b6001600160a01b0381166000908152600c6020526040812054610b53565b6000610e0460095490565b6060600b8054610b68906134dc565b61ffff81166000908152600160205260408120805460609291906111e7906134dc565b80601f0160208091040260200160405190810160405280929190818152602001828054611213906134dc565b80156112605780601f1061123557610100808354040283529160200191611260565b820191906000526020600020905b81548152906001019060200180831161124357829003601f168201915b5050505050905080516000036112b85760405162461bcd60e51b815260206004820152601d60248201527f4c7a4170703a206e6f20747275737465642070617468207265636f7264000000604482015260640161095e565b6112d36000601483516112cb9190613639565b8391906121cd565b9392505050565b600033816112e8828661184d565b9050838110156113485760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b606482015260840161095e565b610d1c8286868403611bff565b61135d611ba5565b8181306040516020016113729392919061364c565b60408051601f1981840301815291815261ffff851660009081526001602052209061139d90826136b8565b507f8c0400cfe2d1199b1a725c78960bcc2a344d869b80590d0f2bd005db15a572ce8383836040516113d19392919061361b565b60405180910390a1505050565b600033610c82818585611d9d565b6113f4611ba5565b600480546001600160a01b0319166001600160a01b0383169081179091556040519081527f5db758e995a17ec1ad84bdef7e8c3293a0bd6179bcce400dff5d4c3d87db726b906020015b60405180910390a150565b611451611ba5565b6040516332fb62e760e21b81526001600160a01b037f000000000000000000000000b6319cc6c8c27a8f5daf0dd3df91ea35c4720dd7169063cbed8b9c906114a59088908890889088908890600401613777565b600060405180830381600087803b1580156114bf57600080fd5b505af1158015610ff7573d6000803e3d6000fd5b61ffff861660009081526005602052604080822090516114f69088908890613510565b90815260408051602092819003830190206001600160401b038716600090815292529020549050806115765760405162461bcd60e51b815260206004820152602360248201527f4e6f6e626c6f636b696e674c7a4170703a206e6f2073746f726564206d65737360448201526261676560e81b606482015260840161095e565b808383604051611587929190613510565b6040518091039020146115e65760405162461bcd60e51b815260206004820152602160248201527f4e6f6e626c6f636b696e674c7a4170703a20696e76616c6964207061796c6f616044820152601960fa1b606482015260840161095e565b61ffff871660009081526005602052604080822090516116099089908990613510565b90815260408051602092819003830181206001600160401b038916600090815290845282902093909355601f880182900482028301820190528682526116a1918991899089908190840183828082843760009201919091525050604080516020601f8a018190048102820181019092528881528a93509150889088908190840183828082843760009201919091525061211692505050565b7fc264d91f3adc5588250e1551f547752ca0cfa8f6b530d243b9f9f4cab10ea8e587878787856040516116d89594939291906137b0565b60405180910390a150505050505050565b834211156117395760405162461bcd60e51b815260206004820152601d60248201527f45524332305065726d69743a206578706972656420646561646c696e65000000604482015260640161095e565b60007f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98888886117688c6122da565b6040805160208101969096526001600160a01b0394851690860152929091166060840152608083015260a082015260c0810186905260e00160405160208183030381529060405280519060200120905060006117c382612302565b905060006117d382878787612350565b9050896001600160a01b0316816001600160a01b0316146118365760405162461bcd60e51b815260206004820152601e60248201527f45524332305065726d69743a20696e76616c6964207369676e61747572650000604482015260640161095e565b6118418a8a8a611bff565b50505050505050505050565b6001600160a01b03918216600090815260086020908152604080832093909416825291909152205490565b611880611ba5565b600081116118c85760405162461bcd60e51b81526020600482015260156024820152744c7a4170703a20696e76616c6964206d696e47617360581b604482015260640161095e565b61ffff83811660008181526002602090815260408083209487168084529482529182902085905581519283528201929092529081018290527f9d5c7c0b934da8fefa9c7760c98383778a12dfbfc0c3b3106518f43fb9508ac0906060016113d1565b611932611ba5565b6006805460ff19168215159081179091556040519081527f1584ad594a70cbe1e6515592e1272a987d922b097ead875069cebe8b40c004a49060200161143e565b61197b611ba5565b61ffff831660009081526001602052604090206119998284836137eb565b507ffa41487ad5d6728f0b19276fa1eddc16558578f5109fc39d2dc33c3230470dab8383836040516113d19392919061361b565b6119d5611ba5565b6001600160a01b038116611a3a5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161095e565b611a438161217d565b50565b604051633d7b2f6f60e21b815261ffff808616600483015284166024820152306044820152606481018290526060907f000000000000000000000000b6319cc6c8c27a8f5daf0dd3df91ea35c4720dd76001600160a01b03169063f5ecbdbc90608401600060405180830381865afa158015611ac6573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611aee91908101906138f7565b95945050505050565b600080611b5a5a60966366ad5c8a60e01b89898989604051602401611b1f949392919061392b565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915230929190612378565b91509150816110d6576110d68686868685612404565b60006001600160e01b03198216630a72677560e11b1480610b5357506301ffc9a760e01b6001600160e01b0319831614610b53565b6000546001600160a01b031633146110f05760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161095e565b6001600160a01b038316611c615760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161095e565b6001600160a01b038216611cc25760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161095e565b6001600160a01b0383811660008181526008602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6000611d2f848461184d565b90506000198114611d975781811015611d8a5760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161095e565b611d978484848403611bff565b50505050565b6001600160a01b038316611e015760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161095e565b6001600160a01b038216611e635760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161095e565b6001600160a01b03831660009081526007602052604090205481811015611edb5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161095e565b6001600160a01b0380851660008181526007602052604080822086860390559286168082529083902080548601905591517fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90611f3b9086815260200190565b60405180910390a3611d97565b6000306001600160a01b037f000000000000000000000000cf2846a3fad141aa0e4651cb332f96371c239dd416148015611fa157507f00000000000000000000000000000000000000000000000000000000000a133746145b15611fcb57507f1857ed6f31a5f74d628d648961218cb5b694e97dd6c379255b69480efd189fad90565b50604080517f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f6020808301919091527f29775a18936be08485a754dbdbf2185b1e45d4553e60a6c7d6c37aec0aa2e57d828401527fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc660608301524660808301523060a0808401919091528351808403909101815260c0909201909252805191012090565b61207d8660008360006124a6565b600061208b88888888612520565b905060008087836040516020016120a493929190613969565b60405160208183030381529060405290506120c3888287878734612552565b886001600160a01b03168861ffff167f39a4c66499bcf4b56d79f0dde8ed7a9d4925a0df55825206b2b8531e202be0d08985604051612103929190613996565b60405180910390a3505050505050505050565b602081015161ffff811661213557612130858585856126f7565b610c6d565b60405162461bcd60e51b815260206004820152601c60248201527f4f4654436f72653a20756e6b6e6f776e207061636b6574207479706500000000604482015260640161095e565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6060816121db81601f613608565b101561221a5760405162461bcd60e51b815260206004820152600e60248201526d736c6963655f6f766572666c6f7760901b604482015260640161095e565b6122248284613608565b845110156122685760405162461bcd60e51b8152602060048201526011602482015270736c6963655f6f75744f66426f756e647360781b604482015260640161095e565b60608215801561228757604051915060008252602082016040526122d1565b6040519150601f8416801560200281840101858101878315602002848b0101015b818310156122c05780518352602092830192016122a8565b5050858452601f01601f1916604052505b50949350505050565b6001600160a01b0381166000908152600c602052604090208054600181018255905b50919050565b6000610b5361230f611f48565b8360405161190160f01b6020820152602281018390526042810182905260009060620160405160208183030381529060405280519060200120905092915050565b600080600061236187878787612781565b9150915061236e81612842565b5095945050505050565b6000606060008060008661ffff166001600160401b0381111561239d5761239d6131c4565b6040519080825280601f01601f1916602001820160405280156123c7576020820181803683370190505b50905060008087516020890160008d8df191503d9250868311156123e9578692505b828152826000602083013e9093509150505b94509492505050565b8180519060200120600560008761ffff1661ffff1681526020019081526020016000208560405161243591906139b8565b9081526040805191829003602090810183206001600160401b0388166000908152915220919091557fe183f33de2837795525b4792ca4cd60535bd77c53b7e7030060bfcf5734d6b0c9061249290879087908790879087906139d4565b60405180910390a15050505050565b505050565b60065460ff16156124c2576124bd8484848461298c565b611d97565b815115611d975760405162461bcd60e51b815260206004820152602660248201527f4f4654436f72653a205f61646170746572506172616d73206d7573742062652060448201526532b6b83a3c9760d11b606482015260840161095e565b6000336001600160a01b038616811461253e5761253e868285611d23565b6125488684612a6b565b5090949350505050565b61ffff861660009081526001602052604081208054612570906134dc565b80601f016020809104026020016040519081016040528092919081815260200182805461259c906134dc565b80156125e95780601f106125be576101008083540402835291602001916125e9565b820191906000526020600020905b8154815290600101906020018083116125cc57829003601f168201915b50505050509050805160000361265a5760405162461bcd60e51b815260206004820152603060248201527f4c7a4170703a2064657374696e6174696f6e20636861696e206973206e6f742060448201526f61207472757374656420736f7572636560801b606482015260840161095e565b612665878751612b9f565b60405162c5803160e81b81526001600160a01b037f000000000000000000000000b6319cc6c8c27a8f5daf0dd3df91ea35c4720dd7169063c58031009084906126bc908b9086908c908c908c908c90600401613a32565b6000604051808303818588803b1580156126d557600080fd5b505af11580156126e9573d6000803e3d6000fd5b505050505050505050505050565b6000808280602001905181019061270e9190613a8c565b9093509150600090506127218382612c10565b905061272e878284612c75565b9150806001600160a01b03168761ffff167fbf551ec93859b170f9b2141bd9298bf3f64322c6f7beb2543a0cb669834118bf8460405161277091815260200190565b60405180910390a350505050505050565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08311156127b857506000905060036123fb565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa15801561280c573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116612835576000600192509250506123fb565b9660009650945050505050565b600081600481111561285657612856613ae5565b0361285e5750565b600181600481111561287257612872613ae5565b036128bf5760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e61747572650000000000000000604482015260640161095e565b60028160048111156128d3576128d3613ae5565b036129205760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e67746800604482015260640161095e565b600381600481111561293457612934613ae5565b03611a435760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b606482015260840161095e565b600061299783612c88565b61ffff8087166000908152600260209081526040808320938916835292905290812054919250906129c9908490613608565b905060008111612a1b5760405162461bcd60e51b815260206004820152601a60248201527f4c7a4170703a206d696e4761734c696d6974206e6f7420736574000000000000604482015260640161095e565b808210156110d65760405162461bcd60e51b815260206004820152601b60248201527f4c7a4170703a20676173206c696d697420697320746f6f206c6f770000000000604482015260640161095e565b6001600160a01b038216612acb5760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b606482015260840161095e565b6001600160a01b03821660009081526007602052604090205481811015612b3f5760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b606482015260840161095e565b6001600160a01b03831660008181526007602090815260408083208686039055600980548790039055518581529192917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3505050565b61ffff821660009081526003602052604081205490819003612bc057506127105b808211156124a15760405162461bcd60e51b815260206004820181905260248201527f4c7a4170703a207061796c6f61642073697a6520697320746f6f206c61726765604482015260640161095e565b6000612c1d826014613608565b83511015612c655760405162461bcd60e51b8152602060048201526015602482015274746f416464726573735f6f75744f66426f756e647360581b604482015260640161095e565b500160200151600160601b900490565b6000612c818383612ce4565b5092915050565b6000602282511015612cdc5760405162461bcd60e51b815260206004820152601c60248201527f4c7a4170703a20696e76616c69642061646170746572506172616d7300000000604482015260640161095e565b506022015190565b6001600160a01b038216612d3a5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161095e565b8060096000828254612d4c9190613608565b90915550506001600160a01b0382166000818152600760209081526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b61ffff81168114611a4357600080fd5b60008083601f840112612dc757600080fd5b5081356001600160401b03811115612dde57600080fd5b602083019150836020828501011115612df657600080fd5b9250929050565b80356001600160401b0381168114612e1457600080fd5b919050565b60008060008060008060808789031215612e3257600080fd5b8635612e3d81612da5565b955060208701356001600160401b0380821115612e5957600080fd5b612e658a838b01612db5565b9097509550859150612e7960408a01612dfd565b94506060890135915080821115612e8f57600080fd5b50612e9c89828a01612db5565b979a9699509497509295939492505050565b600060208284031215612ec057600080fd5b81356001600160e01b0319811681146112d357600080fd5b60005b83811015612ef3578181015183820152602001612edb565b50506000910152565b60008151808452612f14816020860160208601612ed8565b601f01601f19169290920160200192915050565b6020815260006112d36020830184612efc565b600060208284031215612f4d57600080fd5b81356112d381612da5565b6001600160a01b0381168114611a4357600080fd5b60008060408385031215612f8057600080fd5b8235612f8b81612f58565b946020939093013593505050565b60008060408385031215612fac57600080fd5b8235612f8b81612da5565b600080600060608486031215612fcc57600080fd5b8335612fd781612f58565b92506020840135612fe781612f58565b929592945050506040919091013590565b80358015158114612e1457600080fd5b600080600080600080600060a0888a03121561302357600080fd5b873561302e81612da5565b965060208801356001600160401b038082111561304a57600080fd5b6130568b838c01612db5565b909850965060408a0135955086915061307160608b01612ff8565b945060808a013591508082111561308757600080fd5b506130948a828b01612db5565b989b979a50959850939692959293505050565b6000806000604084860312156130bc57600080fd5b83356130c781612da5565b925060208401356001600160401b038111156130e257600080fd5b6130ee86828701612db5565b9497909650939450505050565b600080600080600080600080600060e08a8c03121561311957600080fd5b893561312481612f58565b985060208a013561313481612da5565b975060408a01356001600160401b038082111561315057600080fd5b61315c8d838e01612db5565b909950975060608c0135965060808c0135915061317882612f58565b90945060a08b01359061318a82612f58565b90935060c08b013590808211156131a057600080fd5b506131ad8c828d01612db5565b915080935050809150509295985092959850929598565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715613202576132026131c4565b604052919050565b60006001600160401b03821115613223576132236131c4565b50601f01601f191660200190565b60008060006060848603121561324657600080fd5b833561325181612da5565b925060208401356001600160401b0381111561326c57600080fd5b8401601f8101861361327d57600080fd5b803561329061328b8261320a565b6131da565b8181528760208385010111156132a557600080fd5b816020840160208301376000602083830101528094505050506132ca60408501612dfd565b90509250925092565b6000602082840312156132e557600080fd5b81356112d381612f58565b6000806040838503121561330357600080fd5b823561330e81612da5565b9150602083013561331e81612da5565b809150509250929050565b60008060008060006080868803121561334157600080fd5b853561334c81612da5565b9450602086013561335c81612da5565b93506040860135925060608601356001600160401b0381111561337e57600080fd5b61338a88828901612db5565b969995985093965092949392505050565b600080600080600080600060e0888a0312156133b657600080fd5b87356133c181612f58565b965060208801356133d181612f58565b95506040880135945060608801359350608088013560ff811681146133f557600080fd5b9699959850939692959460a0840135945060c09093013592915050565b6000806040838503121561342557600080fd5b823561343081612f58565b9150602083013561331e81612f58565b60008060006060848603121561345557600080fd5b833561346081612da5565b92506020840135612fe781612da5565b60006020828403121561348257600080fd5b6112d382612ff8565b600080600080608085870312156134a157600080fd5b84356134ac81612da5565b935060208501356134bc81612da5565b925060408501356134cc81612f58565b9396929550929360600135925050565b600181811c908216806134f057607f821691505b6020821081036122fc57634e487b7160e01b600052602260045260246000fd5b8183823760009101908152919050565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b61ffff85168152606060208201526000613567606083018587613520565b905082604083015295945050505050565b61ffff871681526001600160a01b038616602082015260a0604082018190526000906135a690830187612efc565b851515606084015282810360808401526135c1818587613520565b9998505050505050505050565b600080604083850312156135e157600080fd5b505080516020909101519092909150565b634e487b7160e01b600052601160045260246000fd5b80820180821115610b5357610b536135f2565b61ffff84168152604060208201526000611aee604083018486613520565b81810381811115610b5357610b536135f2565b8284823760609190911b6bffffffffffffffffffffffff19169101908152601401919050565b601f8211156124a157600081815260208120601f850160051c810160208610156136995750805b601f850160051c820191505b818110156110d6578281556001016136a5565b81516001600160401b038111156136d1576136d16131c4565b6136e5816136df84546134dc565b84613672565b602080601f83116001811461371a57600084156137025750858301515b600019600386901b1c1916600185901b1785556110d6565b600085815260208120601f198616915b828110156137495788860151825594840194600190910190840161372a565b50858210156137675787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600061ffff8088168352808716602084015250846040830152608060608301526137a5608083018486613520565b979650505050505050565b61ffff861681526080602082015260006137ce608083018688613520565b6001600160401b0394909416604083015250606001529392505050565b6001600160401b03831115613802576138026131c4565b6138168361381083546134dc565b83613672565b6000601f84116001811461384a57600085156138325750838201355b600019600387901b1c1916600186901b178355610c6d565b600083815260209020601f19861690835b8281101561387b578685013582556020948501946001909201910161385b565b50868210156138985760001960f88860031b161c19848701351681555b505060018560011b0183555050505050565b600082601f8301126138bb57600080fd5b81516138c961328b8261320a565b8181528460208386010111156138de57600080fd5b6138ef826020830160208701612ed8565b949350505050565b60006020828403121561390957600080fd5b81516001600160401b0381111561391f57600080fd5b6138ef848285016138aa565b61ffff851681526080602082015260006139486080830186612efc565b6001600160401b038516604084015282810360608401526137a58185612efc565b61ffff841681526060602082015260006139866060830185612efc565b9050826040830152949350505050565b6040815260006139a96040830185612efc565b90508260208301529392505050565b600082516139ca818460208701612ed8565b9190910192915050565b61ffff8616815260a0602082015260006139f160a0830187612efc565b6001600160401b03861660408401528281036060840152613a128186612efc565b90508281036080840152613a268185612efc565b98975050505050505050565b61ffff8716815260c060208201526000613a4f60c0830188612efc565b8281036040840152613a618188612efc565b6001600160a01b0387811660608601528616608085015283810360a085015290506135c18185612efc565b600080600060608486031215613aa157600080fd5b8351613aac81612da5565b60208501519093506001600160401b03811115613ac857600080fd5b613ad4868287016138aa565b925050604084015190509250925092565b634e487b7160e01b600052602160045260246000fdfea264697066735822122022a02cb583b408b9b38a544e085331bbf4a741ca2aee5d24391a5c881556fde164736f6c63430008130033