0x608060405234801561001057600080fd5b50600436106101b95760003560e01c80637dc2268c116100f957806395d89b4111610097578063c0f75e3d11610071578063c0f75e3d146104c3578063dd62ed3e146104e9578063e4cc18be14610517578063f2fde38b1461051f576101b9565b806395d89b4114610472578063a0712d681461047a578063a9059cbb14610497576101b9565b80638ac41193116100d35780638ac41193146103f45780638d1fdf2f146104205780638da5cb5b146104465780638f32d59b1461046a576101b9565b80637dc2268c146103be57806383cfab42146103c65780638456cb59146103ec576101b9565b806323b872dd11610166578063313ce56711610140578063313ce5671461035557806342966c681461037357806370a0823114610390578063715018a6146103b6576101b9565b806323b872dd146102eb5780632a07a0bf14610321578063305208a414610329576101b9565b80630df19d35116101975780630df19d35146102855780631576c3d8146102bd57806318160ddd146102e3576101b9565b8063046f7da2146101be57806306fdde03146101c8578063095ea7b314610245575b600080fd5b6101c6610545565b005b6101d0610627565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561020a5781810151838201526020016101f2565b50505050905090810190601f1680156102375780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102716004803603604081101561025b57600080fd5b506001600160a01b038135169060200135610660565b604080519115158252519081900360200190f35b6102ab6004803603602081101561029b57600080fd5b50356001600160a01b031661077e565b60408051918252519081900360200190f35b610271600480360360208110156102d357600080fd5b50356001600160a01b0316610790565b6102ab6107a5565b6102716004803603606081101561030157600080fd5b506001600160a01b038135811691602081013590911690604001356107ab565b610271610b7a565b6102716004803603604081101561033f57600080fd5b506001600160a01b038135169060200135610b83565b61035d610cf4565b6040805160ff9092168252519081900360200190f35b6102716004803603602081101561038957600080fd5b5035610cf9565b6102ab600480360360208110156103a657600080fd5b50356001600160a01b0316610e3e565b6101c6610e59565b610271610ef7565b6101c6600480360360208110156103dc57600080fd5b50356001600160a01b0316610f00565b6101c6611012565b6102716004803603604081101561040a57600080fd5b506001600160a01b0381351690602001356110f3565b6101c66004803603602081101561043657600080fd5b50356001600160a01b03166113db565b61044e611547565b604080516001600160a01b039092168252519081900360200190f35b610271611556565b6101d0611567565b6102716004803603602081101561049057600080fd5b50356115a0565b610271600480360360408110156104ad57600080fd5b506001600160a01b038135169060200135611727565b610271600480360360208110156104d957600080fd5b50356001600160a01b0316611a20565b6102ab600480360360408110156104ff57600080fd5b506001600160a01b0381358116916020013516611b2e565b610271611b59565b6101c66004803603602081101561053557600080fd5b50356001600160a01b0316611c37565b61054d611556565b61058c576040805162461bcd60e51b81526020600482018190526024820152600080516020612021833981519152604482015290519081900360640190fd5b60025460ff1615156001146105e8576040805162461bcd60e51b815260206004820152601660248201527f50617573652f416c72656164792d526573756d696e6700000000000000000000604482015290519081900360640190fd5b6002805460ff191690556040805133815290517fdc5393690c6579b944c67b47465cff82c4f93733768919fe80c29ef5771777639181900360200190a1565b6040518060400160405280600481526020017f58616e6b0000000000000000000000000000000000000000000000000000000081525081565b60025460009060ff16156106bb576040805162461bcd60e51b815260206004820152601960248201527f50617573652f50617573652d46756e6374696f6e616c69747900000000000000604482015290519081900360640190fd5b6001600160a01b038316610716576040805162461bcd60e51b815260206004820152601b60248201527f58616e6b2f4e6f742d416c6c6f772d5a65726f2d416464726573730000000000604482015290519081900360640190fd5b3360008181526007602090815260408083206001600160a01b03881680855290835292819020869055805186815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060015b92915050565b60036020526000908152604090205481565b60016020526000908152604090205460ff1681565b60055481565b6001600160a01b038316600090815260016020526040812054849060ff161561081b576040805162461bcd60e51b815260206004820152601660248201527f467265657a652f46726f6e7a656e2d4163636f756e7400000000000000000000604482015290519081900360640190fd5b84836000306001600160a01b03166370a08231846040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b15801561087557600080fd5b505afa158015610889573d6000803e3d6000fd5b505050506040513d602081101561089f57600080fd5b50516001600160a01b038416600090815260036020908152604091829020548251808401909352601683527f4c6f636b65722f556e646572666c6f772d56616c75650000000000000000000091830191909152919250610908908390859063ffffffff611c8a16565b101561095b576040805162461bcd60e51b815260206004820152601d60248201527f4c6f636b65722f496d706f737369626c652d4f7665722d4c6f636b7570000000604482015290519081900360640190fd5b60025460ff16156109b3576040805162461bcd60e51b815260206004820152601960248201527f50617573652f50617573652d46756e6374696f6e616c69747900000000000000604482015290519081900360640190fd5b6001600160a01b038816610a0e576040805162461bcd60e51b815260206004820152601b60248201527f58616e6b2f4e6f742d416c6c6f772d5a65726f2d416464726573730000000000604482015290519081900360640190fd5b6001600160a01b038716610a69576040805162461bcd60e51b815260206004820152601b60248201527f58616e6b2f4e6f742d416c6c6f772d5a65726f2d416464726573730000000000604482015290519081900360640190fd5b6001600160a01b038816600090815260066020526040902054610a92908763ffffffff611d2116565b6001600160a01b03808a166000908152600660205260408082209390935590891681522054610ac7908763ffffffff611d6a16565b6001600160a01b03808916600090815260066020908152604080832094909455918b168152600782528281203382529091522054610b0b908763ffffffff611d2116565b6001600160a01b03808a1660008181526007602090815260408083203384528252918290209490945580518a81529051928b169391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929181900390910190a3506001979650505050505050565b60025460ff1681565b6000610b8d611556565b610bcc576040805162461bcd60e51b81526020600482018190526024820152600080516020612021833981519152604482015290519081900360640190fd5b6001600160a01b038316600090815260036020526040902054610c36576040805162461bcd60e51b815260206004820152601360248201527f4c6f636b65722f4e6f742d4c6f636b6564757000000000000000000000000000604482015290519081900360640190fd5b604080518082018252601b81527f4c6f636b65722f496d706f737369626c652d556e646572666c6f7700000000006020808301919091526001600160a01b038616600090815260039091529190912054610c9791849063ffffffff611c8a16565b6001600160a01b038416600081815260036020908152604091829020849055815192835282019290925281517fdf72d37adc3f256068f06daa37fec845a1b3b4dadc14a62dd3e89252387be0ef929181900390910190a192915050565b601081565b60025460009060ff1615610d54576040805162461bcd60e51b815260206004820152601960248201527f50617573652f50617573652d46756e6374696f6e616c69747900000000000000604482015290519081900360640190fd5b33600090815260066020526040902054821115610db8576040805162461bcd60e51b815260206004820152601c60248201527f58616e6b2f4e6f742d416c6c6f772d556e76616c7565642d4275726e00000000604482015290519081900360640190fd5b33600090815260066020526040902054610dd8908363ffffffff611d2116565b33600090815260066020526040902055600554610dfb908363ffffffff611d2116565b60055560408051838152905160009133917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a3506001919050565b6001600160a01b031660009081526006602052604090205490565b610e61611556565b610ea0576040805162461bcd60e51b81526020600482018190526024820152600080516020612021833981519152604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a36000805473ffffffffffffffffffffffffffffffffffffffff19169055565b60045460ff1681565b610f08611556565b610f47576040805162461bcd60e51b81526020600482018190526024820152600080516020612021833981519152604482015290519081900360640190fd5b6001600160a01b03811660009081526001602081905260409091205460ff16151514610fba576040805162461bcd60e51b815260206004820152601860248201527f467265657a652f416c72656164792d556e667265657a65640000000000000000604482015290519081900360640190fd5b6001600160a01b038116600081815260016020908152604091829020805460ff19169055815192835290517f4d1fe3cc0f516ce2cfc5e83d52ee28af7f55376b18f58e7081c5fd25d8eeb1df9281900390910190a150565b61101a611556565b611059576040805162461bcd60e51b81526020600482018190526024820152600080516020612021833981519152604482015290519081900360640190fd5b60025460ff16156110b1576040805162461bcd60e51b815260206004820152601560248201527f50617573652f416c72656164792d50617573696e670000000000000000000000604482015290519081900360640190fd5b6002805460ff191660011790556040805133815290517f5ee71a369c8672edded508e624ffc9257fa1ae6886ef32905c18e60196bca3999181900360200190a1565b60006110fd611556565b61113c576040805162461bcd60e51b81526020600482018190526024820152600080516020612021833981519152604482015290519081900360640190fd5b604080516370a0823160e01b815233600482018190529151849160009130916370a08231916024808301926020929190829003018186803b15801561118057600080fd5b505afa158015611194573d6000803e3d6000fd5b505050506040513d60208110156111aa57600080fd5b50516001600160a01b038416600090815260036020908152604091829020548251808401909352601683527f4c6f636b65722f556e646572666c6f772d56616c75650000000000000000000091830191909152919250611213908390859063ffffffff611c8a16565b1015611266576040805162461bcd60e51b815260206004820152601d60248201527f4c6f636b65722f496d706f737369626c652d4f7665722d4c6f636b7570000000604482015290519081900360640190fd5b60025460ff16156112be576040805162461bcd60e51b815260206004820152601960248201527f50617573652f50617573652d46756e6374696f6e616c69747900000000000000604482015290519081900360640190fd5b6001600160a01b038616611319576040805162461bcd60e51b815260206004820152601b60248201527f58616e6b2f4e6f742d416c6c6f772d5a65726f2d416464726573730000000000604482015290519081900360640190fd5b33600090815260066020526040902054611339908663ffffffff611d2116565b33600090815260066020526040808220929092556001600160a01b0388168152205461136b908663ffffffff611d6a16565b6001600160a01b03871660009081526006602052604090205561138e8686611dc4565b506040805186815290516001600160a01b0388169133917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a350600195945050505050565b6113e3611556565b611422576040805162461bcd60e51b81526020600482018190526024820152600080516020612021833981519152604482015290519081900360640190fd5b6001600160a01b03811661147d576040805162461bcd60e51b815260206004820152601360248201527f467265657a652f5a65726f2d4164647265737300000000000000000000000000604482015290519081900360640190fd5b6001600160a01b03811660009081526001602052604090205460ff16156114eb576040805162461bcd60e51b815260206004820152601660248201527f467265657a652f416c72656164792d467265657a656400000000000000000000604482015290519081900360640190fd5b6001600160a01b038116600081815260016020818152604092839020805460ff1916909217909155815192835290517f0de8364a528e5ca2869160b20c375fe85b4e98d24a9cb48b4dc49c5f76d05b249281900390910190a150565b6000546001600160a01b031690565b6000546001600160a01b0316331490565b6040518060400160405280600481526020017f58414e4b0000000000000000000000000000000000000000000000000000000081525081565b60045460009060ff1615156001146115ff576040805162461bcd60e51b815260206004820152601560248201527f4d696e7465722f46696e6973682d4d696e74696e670000000000000000000000604482015290519081900360640190fd5b611607611556565b611646576040805162461bcd60e51b81526020600482018190526024820152600080516020612021833981519152604482015290519081900360640190fd5b60025460ff161561169e576040805162461bcd60e51b815260206004820152601960248201527f50617573652f50617573652d46756e6374696f6e616c69747900000000000000604482015290519081900360640190fd5b6005546116b1908363ffffffff611d6a16565b600555336000908152600660205260409020546116d4908363ffffffff611d6a16565b3360008181526006602090815260408083209490945583518681529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a3506001919050565b3360008181526001602052604081205490919060ff161561178f576040805162461bcd60e51b815260206004820152601660248201527f467265657a652f46726f6e7a656e2d4163636f756e7400000000000000000000604482015290519081900360640190fd5b604080516370a0823160e01b815233600482018190529151859160009130916370a08231916024808301926020929190829003018186803b1580156117d357600080fd5b505afa1580156117e7573d6000803e3d6000fd5b505050506040513d60208110156117fd57600080fd5b50516001600160a01b038416600090815260036020908152604091829020548251808401909352601683527f4c6f636b65722f556e646572666c6f772d56616c75650000000000000000000091830191909152919250611866908390859063ffffffff611c8a16565b10156118b9576040805162461bcd60e51b815260206004820152601d60248201527f4c6f636b65722f496d706f737369626c652d4f7665722d4c6f636b7570000000604482015290519081900360640190fd5b60025460ff1615611911576040805162461bcd60e51b815260206004820152601960248201527f50617573652f50617573652d46756e6374696f6e616c69747900000000000000604482015290519081900360640190fd5b6001600160a01b03871661196c576040805162461bcd60e51b815260206004820152601b60248201527f58616e6b2f4e6f742d416c6c6f772d5a65726f2d416464726573730000000000604482015290519081900360640190fd5b3360009081526006602052604090205461198c908763ffffffff611d2116565b33600090815260066020526040808220929092556001600160a01b038916815220546119be908763ffffffff611d6a16565b6001600160a01b0388166000818152600660209081526040918290209390935580518981529051919233927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35060019695505050505050565b6000611a2a611556565b611a69576040805162461bcd60e51b81526020600482018190526024820152600080516020612021833981519152604482015290519081900360640190fd5b6001600160a01b038216600090815260036020526040902054611ad3576040805162461bcd60e51b815260206004820152601360248201527f4c6f636b65722f4e6f742d4c6f636b6564757000000000000000000000000000604482015290519081900360640190fd5b6001600160a01b038216600081815260036020908152604080832083905580519384529083019190915280517fdf72d37adc3f256068f06daa37fec845a1b3b4dadc14a62dd3e89252387be0ef9281900390910190a1919050565b6001600160a01b03918216600090815260076020908152604080832093909416825291909152205490565b6000611b63611556565b611ba2576040805162461bcd60e51b81526020600482018190526024820152600080516020612021833981519152604482015290519081900360640190fd5b60045460ff161515600114611bfe576040805162461bcd60e51b815260206004820152601560248201527f4d696e7465722f416c72656164792d46696e6973680000000000000000000000604482015290519081900360640190fd5b6004805460ff191690556040517f1578538d7847a99e818f068c208cae026fdafea1610a44858adeff8dc70aeb2b90600090a150600190565b611c3f611556565b611c7e576040805162461bcd60e51b81526020600482018190526024820152600080516020612021833981519152604482015290519081900360640190fd5b611c8781611ed3565b50565b60008184841115611d195760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611cde578181015183820152602001611cc6565b50505050905090810190601f168015611d0b5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b6000611d6383836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611c8a565b9392505050565b600082820183811015611d63576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000611dce611556565b611e0d576040805162461bcd60e51b81526020600482018190526024820152600080516020612021833981519152604482015290519081900360640190fd5b6001600160a01b03831660009081526003602052604090205415611e78576040805162461bcd60e51b815260206004820152601560248201527f4c6f636b65722f416c72656164792d4c6f636b75700000000000000000000000604482015290519081900360640190fd5b6001600160a01b0383166000818152600360209081526040918290208590558151928352820184905280517fdf72d37adc3f256068f06daa37fec845a1b3b4dadc14a62dd3e89252387be0ef9281900390910190a192915050565b6001600160a01b038116611f185760405162461bcd60e51b8152600401808060200182810382526026815260200180611fda6026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a36000805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055565b600082611f8f57506000610778565b82820282848281611f9c57fe5b0414611d635760405162461bcd60e51b81526004018080602001828103825260218152602001806120006021913960400191505060405180910390fdfe4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f774f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572a265627a7a72315820dc026d1131ca4f171c92561f1c3097c8ef87149a36c9d12b34d00e4194817b2b64736f6c634300050b0032
0x6080604052633b9aca006005553480156200001957600080fd5b50600080546001600160a01b03191633178082556040516001600160a01b039190911691907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a360048054600160ff199091161790556005546200009490662386f26fc10000620000af602090811b62001f8017901c565b60058190553360009081526006602052604090205562000130565b600082620000c0575060006200012a565b82820282848281620000ce57fe5b041462000127576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526021815260200180620021b56021913960400191505060405180910390fd5b90505b92915050565b61207580620001406000396000f3fe608060405234801561001057600080fd5b50600436106101b95760003560e01c80637dc2268c116100f957806395d89b4111610097578063c0f75e3d11610071578063c0f75e3d146104c3578063dd62ed3e146104e9578063e4cc18be14610517578063f2fde38b1461051f576101b9565b806395d89b4114610472578063a0712d681461047a578063a9059cbb14610497576101b9565b80638ac41193116100d35780638ac41193146103f45780638d1fdf2f146104205780638da5cb5b146104465780638f32d59b1461046a576101b9565b80637dc2268c146103be57806383cfab42146103c65780638456cb59146103ec576101b9565b806323b872dd11610166578063313ce56711610140578063313ce5671461035557806342966c681461037357806370a0823114610390578063715018a6146103b6576101b9565b806323b872dd146102eb5780632a07a0bf14610321578063305208a414610329576101b9565b80630df19d35116101975780630df19d35146102855780631576c3d8146102bd57806318160ddd146102e3576101b9565b8063046f7da2146101be57806306fdde03146101c8578063095ea7b314610245575b600080fd5b6101c6610545565b005b6101d0610627565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561020a5781810151838201526020016101f2565b50505050905090810190601f1680156102375780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102716004803603604081101561025b57600080fd5b506001600160a01b038135169060200135610660565b604080519115158252519081900360200190f35b6102ab6004803603602081101561029b57600080fd5b50356001600160a01b031661077e565b60408051918252519081900360200190f35b610271600480360360208110156102d357600080fd5b50356001600160a01b0316610790565b6102ab6107a5565b6102716004803603606081101561030157600080fd5b506001600160a01b038135811691602081013590911690604001356107ab565b610271610b7a565b6102716004803603604081101561033f57600080fd5b506001600160a01b038135169060200135610b83565b61035d610cf4565b6040805160ff9092168252519081900360200190f35b6102716004803603602081101561038957600080fd5b5035610cf9565b6102ab600480360360208110156103a657600080fd5b50356001600160a01b0316610e3e565b6101c6610e59565b610271610ef7565b6101c6600480360360208110156103dc57600080fd5b50356001600160a01b0316610f00565b6101c6611012565b6102716004803603604081101561040a57600080fd5b506001600160a01b0381351690602001356110f3565b6101c66004803603602081101561043657600080fd5b50356001600160a01b03166113db565b61044e611547565b604080516001600160a01b039092168252519081900360200190f35b610271611556565b6101d0611567565b6102716004803603602081101561049057600080fd5b50356115a0565b610271600480360360408110156104ad57600080fd5b506001600160a01b038135169060200135611727565b610271600480360360208110156104d957600080fd5b50356001600160a01b0316611a20565b6102ab600480360360408110156104ff57600080fd5b506001600160a01b0381358116916020013516611b2e565b610271611b59565b6101c66004803603602081101561053557600080fd5b50356001600160a01b0316611c37565b61054d611556565b61058c576040805162461bcd60e51b81526020600482018190526024820152600080516020612021833981519152604482015290519081900360640190fd5b60025460ff1615156001146105e8576040805162461bcd60e51b815260206004820152601660248201527f50617573652f416c72656164792d526573756d696e6700000000000000000000604482015290519081900360640190fd5b6002805460ff191690556040805133815290517fdc5393690c6579b944c67b47465cff82c4f93733768919fe80c29ef5771777639181900360200190a1565b6040518060400160405280600481526020017f58616e6b0000000000000000000000000000000000000000000000000000000081525081565b60025460009060ff16156106bb576040805162461bcd60e51b815260206004820152601960248201527f50617573652f50617573652d46756e6374696f6e616c69747900000000000000604482015290519081900360640190fd5b6001600160a01b038316610716576040805162461bcd60e51b815260206004820152601b60248201527f58616e6b2f4e6f742d416c6c6f772d5a65726f2d416464726573730000000000604482015290519081900360640190fd5b3360008181526007602090815260408083206001600160a01b03881680855290835292819020869055805186815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060015b92915050565b60036020526000908152604090205481565b60016020526000908152604090205460ff1681565b60055481565b6001600160a01b038316600090815260016020526040812054849060ff161561081b576040805162461bcd60e51b815260206004820152601660248201527f467265657a652f46726f6e7a656e2d4163636f756e7400000000000000000000604482015290519081900360640190fd5b84836000306001600160a01b03166370a08231846040518263ffffffff1660e01b815260040180826001600160a01b03166001600160a01b0316815260200191505060206040518083038186803b15801561087557600080fd5b505afa158015610889573d6000803e3d6000fd5b505050506040513d602081101561089f57600080fd5b50516001600160a01b038416600090815260036020908152604091829020548251808401909352601683527f4c6f636b65722f556e646572666c6f772d56616c75650000000000000000000091830191909152919250610908908390859063ffffffff611c8a16565b101561095b576040805162461bcd60e51b815260206004820152601d60248201527f4c6f636b65722f496d706f737369626c652d4f7665722d4c6f636b7570000000604482015290519081900360640190fd5b60025460ff16156109b3576040805162461bcd60e51b815260206004820152601960248201527f50617573652f50617573652d46756e6374696f6e616c69747900000000000000604482015290519081900360640190fd5b6001600160a01b038816610a0e576040805162461bcd60e51b815260206004820152601b60248201527f58616e6b2f4e6f742d416c6c6f772d5a65726f2d416464726573730000000000604482015290519081900360640190fd5b6001600160a01b038716610a69576040805162461bcd60e51b815260206004820152601b60248201527f58616e6b2f4e6f742d416c6c6f772d5a65726f2d416464726573730000000000604482015290519081900360640190fd5b6001600160a01b038816600090815260066020526040902054610a92908763ffffffff611d2116565b6001600160a01b03808a166000908152600660205260408082209390935590891681522054610ac7908763ffffffff611d6a16565b6001600160a01b03808916600090815260066020908152604080832094909455918b168152600782528281203382529091522054610b0b908763ffffffff611d2116565b6001600160a01b03808a1660008181526007602090815260408083203384528252918290209490945580518a81529051928b169391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929181900390910190a3506001979650505050505050565b60025460ff1681565b6000610b8d611556565b610bcc576040805162461bcd60e51b81526020600482018190526024820152600080516020612021833981519152604482015290519081900360640190fd5b6001600160a01b038316600090815260036020526040902054610c36576040805162461bcd60e51b815260206004820152601360248201527f4c6f636b65722f4e6f742d4c6f636b6564757000000000000000000000000000604482015290519081900360640190fd5b604080518082018252601b81527f4c6f636b65722f496d706f737369626c652d556e646572666c6f7700000000006020808301919091526001600160a01b038616600090815260039091529190912054610c9791849063ffffffff611c8a16565b6001600160a01b038416600081815260036020908152604091829020849055815192835282019290925281517fdf72d37adc3f256068f06daa37fec845a1b3b4dadc14a62dd3e89252387be0ef929181900390910190a192915050565b601081565b60025460009060ff1615610d54576040805162461bcd60e51b815260206004820152601960248201527f50617573652f50617573652d46756e6374696f6e616c69747900000000000000604482015290519081900360640190fd5b33600090815260066020526040902054821115610db8576040805162461bcd60e51b815260206004820152601c60248201527f58616e6b2f4e6f742d416c6c6f772d556e76616c7565642d4275726e00000000604482015290519081900360640190fd5b33600090815260066020526040902054610dd8908363ffffffff611d2116565b33600090815260066020526040902055600554610dfb908363ffffffff611d2116565b60055560408051838152905160009133917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a3506001919050565b6001600160a01b031660009081526006602052604090205490565b610e61611556565b610ea0576040805162461bcd60e51b81526020600482018190526024820152600080516020612021833981519152604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a36000805473ffffffffffffffffffffffffffffffffffffffff19169055565b60045460ff1681565b610f08611556565b610f47576040805162461bcd60e51b81526020600482018190526024820152600080516020612021833981519152604482015290519081900360640190fd5b6001600160a01b03811660009081526001602081905260409091205460ff16151514610fba576040805162461bcd60e51b815260206004820152601860248201527f467265657a652f416c72656164792d556e667265657a65640000000000000000604482015290519081900360640190fd5b6001600160a01b038116600081815260016020908152604091829020805460ff19169055815192835290517f4d1fe3cc0f516ce2cfc5e83d52ee28af7f55376b18f58e7081c5fd25d8eeb1df9281900390910190a150565b61101a611556565b611059576040805162461bcd60e51b81526020600482018190526024820152600080516020612021833981519152604482015290519081900360640190fd5b60025460ff16156110b1576040805162461bcd60e51b815260206004820152601560248201527f50617573652f416c72656164792d50617573696e670000000000000000000000604482015290519081900360640190fd5b6002805460ff191660011790556040805133815290517f5ee71a369c8672edded508e624ffc9257fa1ae6886ef32905c18e60196bca3999181900360200190a1565b60006110fd611556565b61113c576040805162461bcd60e51b81526020600482018190526024820152600080516020612021833981519152604482015290519081900360640190fd5b604080516370a0823160e01b815233600482018190529151849160009130916370a08231916024808301926020929190829003018186803b15801561118057600080fd5b505afa158015611194573d6000803e3d6000fd5b505050506040513d60208110156111aa57600080fd5b50516001600160a01b038416600090815260036020908152604091829020548251808401909352601683527f4c6f636b65722f556e646572666c6f772d56616c75650000000000000000000091830191909152919250611213908390859063ffffffff611c8a16565b1015611266576040805162461bcd60e51b815260206004820152601d60248201527f4c6f636b65722f496d706f737369626c652d4f7665722d4c6f636b7570000000604482015290519081900360640190fd5b60025460ff16156112be576040805162461bcd60e51b815260206004820152601960248201527f50617573652f50617573652d46756e6374696f6e616c69747900000000000000604482015290519081900360640190fd5b6001600160a01b038616611319576040805162461bcd60e51b815260206004820152601b60248201527f58616e6b2f4e6f742d416c6c6f772d5a65726f2d416464726573730000000000604482015290519081900360640190fd5b33600090815260066020526040902054611339908663ffffffff611d2116565b33600090815260066020526040808220929092556001600160a01b0388168152205461136b908663ffffffff611d6a16565b6001600160a01b03871660009081526006602052604090205561138e8686611dc4565b506040805186815290516001600160a01b0388169133917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a350600195945050505050565b6113e3611556565b611422576040805162461bcd60e51b81526020600482018190526024820152600080516020612021833981519152604482015290519081900360640190fd5b6001600160a01b03811661147d576040805162461bcd60e51b815260206004820152601360248201527f467265657a652f5a65726f2d4164647265737300000000000000000000000000604482015290519081900360640190fd5b6001600160a01b03811660009081526001602052604090205460ff16156114eb576040805162461bcd60e51b815260206004820152601660248201527f467265657a652f416c72656164792d467265657a656400000000000000000000604482015290519081900360640190fd5b6001600160a01b038116600081815260016020818152604092839020805460ff1916909217909155815192835290517f0de8364a528e5ca2869160b20c375fe85b4e98d24a9cb48b4dc49c5f76d05b249281900390910190a150565b6000546001600160a01b031690565b6000546001600160a01b0316331490565b6040518060400160405280600481526020017f58414e4b0000000000000000000000000000000000000000000000000000000081525081565b60045460009060ff1615156001146115ff576040805162461bcd60e51b815260206004820152601560248201527f4d696e7465722f46696e6973682d4d696e74696e670000000000000000000000604482015290519081900360640190fd5b611607611556565b611646576040805162461bcd60e51b81526020600482018190526024820152600080516020612021833981519152604482015290519081900360640190fd5b60025460ff161561169e576040805162461bcd60e51b815260206004820152601960248201527f50617573652f50617573652d46756e6374696f6e616c69747900000000000000604482015290519081900360640190fd5b6005546116b1908363ffffffff611d6a16565b600555336000908152600660205260409020546116d4908363ffffffff611d6a16565b3360008181526006602090815260408083209490945583518681529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a3506001919050565b3360008181526001602052604081205490919060ff161561178f576040805162461bcd60e51b815260206004820152601660248201527f467265657a652f46726f6e7a656e2d4163636f756e7400000000000000000000604482015290519081900360640190fd5b604080516370a0823160e01b815233600482018190529151859160009130916370a08231916024808301926020929190829003018186803b1580156117d357600080fd5b505afa1580156117e7573d6000803e3d6000fd5b505050506040513d60208110156117fd57600080fd5b50516001600160a01b038416600090815260036020908152604091829020548251808401909352601683527f4c6f636b65722f556e646572666c6f772d56616c75650000000000000000000091830191909152919250611866908390859063ffffffff611c8a16565b10156118b9576040805162461bcd60e51b815260206004820152601d60248201527f4c6f636b65722f496d706f737369626c652d4f7665722d4c6f636b7570000000604482015290519081900360640190fd5b60025460ff1615611911576040805162461bcd60e51b815260206004820152601960248201527f50617573652f50617573652d46756e6374696f6e616c69747900000000000000604482015290519081900360640190fd5b6001600160a01b03871661196c576040805162461bcd60e51b815260206004820152601b60248201527f58616e6b2f4e6f742d416c6c6f772d5a65726f2d416464726573730000000000604482015290519081900360640190fd5b3360009081526006602052604090205461198c908763ffffffff611d2116565b33600090815260066020526040808220929092556001600160a01b038916815220546119be908763ffffffff611d6a16565b6001600160a01b0388166000818152600660209081526040918290209390935580518981529051919233927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35060019695505050505050565b6000611a2a611556565b611a69576040805162461bcd60e51b81526020600482018190526024820152600080516020612021833981519152604482015290519081900360640190fd5b6001600160a01b038216600090815260036020526040902054611ad3576040805162461bcd60e51b815260206004820152601360248201527f4c6f636b65722f4e6f742d4c6f636b6564757000000000000000000000000000604482015290519081900360640190fd5b6001600160a01b038216600081815260036020908152604080832083905580519384529083019190915280517fdf72d37adc3f256068f06daa37fec845a1b3b4dadc14a62dd3e89252387be0ef9281900390910190a1919050565b6001600160a01b03918216600090815260076020908152604080832093909416825291909152205490565b6000611b63611556565b611ba2576040805162461bcd60e51b81526020600482018190526024820152600080516020612021833981519152604482015290519081900360640190fd5b60045460ff161515600114611bfe576040805162461bcd60e51b815260206004820152601560248201527f4d696e7465722f416c72656164792d46696e6973680000000000000000000000604482015290519081900360640190fd5b6004805460ff191690556040517f1578538d7847a99e818f068c208cae026fdafea1610a44858adeff8dc70aeb2b90600090a150600190565b611c3f611556565b611c7e576040805162461bcd60e51b81526020600482018190526024820152600080516020612021833981519152604482015290519081900360640190fd5b611c8781611ed3565b50565b60008184841115611d195760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611cde578181015183820152602001611cc6565b50505050905090810190601f168015611d0b5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b6000611d6383836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611c8a565b9392505050565b600082820183811015611d63576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000611dce611556565b611e0d576040805162461bcd60e51b81526020600482018190526024820152600080516020612021833981519152604482015290519081900360640190fd5b6001600160a01b03831660009081526003602052604090205415611e78576040805162461bcd60e51b815260206004820152601560248201527f4c6f636b65722f416c72656164792d4c6f636b75700000000000000000000000604482015290519081900360640190fd5b6001600160a01b0383166000818152600360209081526040918290208590558151928352820184905280517fdf72d37adc3f256068f06daa37fec845a1b3b4dadc14a62dd3e89252387be0ef9281900390910190a192915050565b6001600160a01b038116611f185760405162461bcd60e51b8152600401808060200182810382526026815260200180611fda6026913960400191505060405180910390fd5b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a36000805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055565b600082611f8f57506000610778565b82820282848281611f9c57fe5b0414611d635760405162461bcd60e51b81526004018080602001828103825260218152602001806120006021913960400191505060405180910390fdfe4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f774f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572a265627a7a72315820dc026d1131ca4f171c92561f1c3097c8ef87149a36c9d12b34d00e4194817b2b64736f6c634300050b0032536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77