60806040523480156200001157600080fd5b50604051620011873803806200118783398101604081905262000034916200023d565b604080518082018252601881527f46757475726520542e492e4d2e452e204469766964656e64000000000000000060208083019182528351808501909452600684526546555455524560d01b908401528151849391839183916200009c916003919062000197565b508051620000b290600490602084019062000197565b505050620000c73384620000d160201b60201c565b50505050620002bb565b6001600160a01b0382166200012c5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b806002600082825462000140919062000257565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b828054620001a5906200027e565b90600052602060002090601f016020900481019282620001c9576000855562000214565b82601f10620001e457805160ff191683800117855562000214565b8280016001018555821562000214579182015b8281111562000214578251825591602001919060010190620001f7565b506200022292915062000226565b5090565b5b8082111562000222576000815560010162000227565b6000602082840312156200025057600080fd5b5051919050565b600082198211156200027957634e487b7160e01b600052601160045260246000fd5b500190565b600181811c908216806200029357607f821691505b60208210811415620002b557634e487b7160e01b600052602260045260246000fd5b50919050565b610ebc80620002cb6000396000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c806370a082311161008c578063a457c2d711610066578063a457c2d7146101d0578063a9059cbb146101e3578063ac9650d8146101f6578063dd62ed3e1461021657600080fd5b806370a082311461018c57806379cc6790146101b557806395d89b41146101c857600080fd5b806323b872dd116100c857806323b872dd14610142578063313ce56714610155578063395093511461016457806342966c681461017757600080fd5b806306fdde03146100ef578063095ea7b31461010d57806318160ddd14610130575b600080fd5b6100f761024f565b6040516101049190610b9b565b60405180910390f35b61012061011b366004610bca565b6102e1565b6040519015158152602001610104565b6002545b604051908152602001610104565b610120610150366004610bf4565b6102f9565b60405160128152602001610104565b610120610172366004610bca565b61031d565b61018a610185366004610c30565b61035c565b005b61013461019a366004610c49565b6001600160a01b031660009081526020819052604090205490565b61018a6101c3366004610bca565b610369565b6100f7610382565b6101206101de366004610bca565b610391565b6101206101f1366004610bca565b610440565b610209610204366004610c64565b61044e565b6040516101049190610cd9565b610134610224366004610d3b565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b60606003805461025e90610d6e565b80601f016020809104026020016040519081016040528092919081815260200182805461028a90610d6e565b80156102d75780601f106102ac576101008083540402835291602001916102d7565b820191906000526020600020905b8154815290600101906020018083116102ba57829003601f168201915b5050505050905090565b6000336102ef818585610543565b5060019392505050565b600033610307858285610668565b6103128585856106fa565b506001949350505050565b3360008181526001602090815260408083206001600160a01b03871684529091528120549091906102ef9082908690610357908790610dbf565b610543565b61036633826108cd565b50565b610374823383610668565b61037e82826108cd565b5050565b60606004805461025e90610d6e565b3360008181526001602090815260408083206001600160a01b0387168452909152812054909190838110156104335760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760448201527f207a65726f00000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b6103128286868403610543565b6000336102ef8185856106fa565b60608167ffffffffffffffff81111561046957610469610dd7565b60405190808252806020026020018201604052801561049c57816020015b60608152602001906001900390816104875790505b50905060005b8281101561053c5761050c308585848181106104c0576104c0610ded565b90506020028101906104d29190610e03565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152506109f792505050565b82828151811061051e5761051e610ded565b6020026020010181905250808061053490610e51565b9150506104a2565b5092915050565b6001600160a01b0383166105a55760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161042a565b6001600160a01b0382166106065760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161042a565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b0383811660009081526001602090815260408083209386168352929052205460001981146106f457818110156106e75760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161042a565b6106f48484848403610543565b50505050565b6001600160a01b0383166107765760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f20616460448201527f6472657373000000000000000000000000000000000000000000000000000000606482015260840161042a565b6001600160a01b0382166107d85760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161042a565b6001600160a01b038316600090815260208190526040902054818110156108675760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e742065786365656473206260448201527f616c616e63650000000000000000000000000000000000000000000000000000606482015260840161042a565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a36106f4565b6001600160a01b03821661092d5760405162461bcd60e51b815260206004820152602160248201527f45524332303a206275726e2066726f6d20746865207a65726f206164647265736044820152607360f81b606482015260840161042a565b6001600160a01b038216600090815260208190526040902054818110156109a15760405162461bcd60e51b815260206004820152602260248201527f45524332303a206275726e20616d6f756e7420657863656564732062616c616e604482015261636560f01b606482015260840161042a565b6001600160a01b0383166000818152602081815260408083208686039055600280548790039055518581529192917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910161065b565b6060610a1c8383604051806060016040528060278152602001610e8960279139610a23565b9392505050565b6060600080856001600160a01b031685604051610a409190610e6c565b600060405180830381855af49150503d8060008114610a7b576040519150601f19603f3d011682016040523d82523d6000602084013e610a80565b606091505b5091509150610a9186838387610a9b565b9695505050505050565b60608315610b07578251610b00576001600160a01b0385163b610b005760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015260640161042a565b5081610b11565b610b118383610b19565b949350505050565b815115610b295781518083602001fd5b8060405162461bcd60e51b815260040161042a9190610b9b565b60005b83811015610b5e578181015183820152602001610b46565b838111156106f45750506000910152565b60008151808452610b87816020860160208601610b43565b601f01601f19169290920160200192915050565b602081526000610a1c6020830184610b6f565b80356001600160a01b0381168114610bc557600080fd5b919050565b60008060408385031215610bdd57600080fd5b610be683610bae565b946020939093013593505050565b600080600060608486031215610c0957600080fd5b610c1284610bae565b9250610c2060208501610bae565b9150604084013590509250925092565b600060208284031215610c4257600080fd5b5035919050565b600060208284031215610c5b57600080fd5b610a1c82610bae565b60008060208385031215610c7757600080fd5b823567ffffffffffffffff80821115610c8f57600080fd5b818501915085601f830112610ca357600080fd5b813581811115610cb257600080fd5b8660208260051b8501011115610cc757600080fd5b60209290920196919550909350505050565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b82811015610d2e57603f19888603018452610d1c858351610b6f565b94509285019290850190600101610d00565b5092979650505050505050565b60008060408385031215610d4e57600080fd5b610d5783610bae565b9150610d6560208401610bae565b90509250929050565b600181811c90821680610d8257607f821691505b60208210811415610da357634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b60008219821115610dd257610dd2610da9565b500190565b634e487b7160e01b600052604160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6000808335601e19843603018112610e1a57600080fd5b83018035915067ffffffffffffffff821115610e3557600080fd5b602001915036819003821315610e4a57600080fd5b9250929050565b6000600019821415610e6557610e65610da9565b5060010190565b60008251610e7e818460208701610b43565b919091019291505056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a164736f6c6343000809000a000000000000000000000000000000000000000006765c793fa10079d0000000