115.6k txs
209.2k calls
constructor
constructor(address _storage)
functions
DEFAULT_ADMIN_ROLE
viewfunction DEFAULT_ADMIN_ROLE() view returns (bytes32)
getRoleAdmin
viewfunction getRoleAdmin(bytes32 role) view returns (bytes32)
hasRole
viewfunction hasRole(bytes32 role, address account) view returns (bool)
OPERATOR
viewfunction OPERATOR() view returns (bytes32)
paused
viewfunction paused() view returns (bool)
sellOrderByNftTypeById
viewfunction sellOrderByNftTypeById(uint256, uint256) view returns (uint256 id, uint256 itemId, address seller, uint256 ranking, uint256 amount)
supportsInterface
viewfunction supportsInterface(bytes4 interfaceId) view returns (bool)
addOperator
nonpayablefunction addOperator(address operator)
buyItem
nonpayablefunction buyItem(tuple buyInfo, uint256 _nftType, tuple priceByTimestamp)
cancelOrderItem
nonpayablefunction cancelOrderItem(uint256 _nftId, uint256 _sellOrder, uint256 _nftType)
createOrderItem
nonpayablefunction createOrderItem(uint256 _nftId, uint256 _price, uint256 _amount, uint256 _currencyType, bool isExchangePrice, uint256 _nftType)
grantRole
nonpayablefunction grantRole(bytes32 role, address account)
onERC1155BatchReceived
nonpayablefunction onERC1155BatchReceived(address, address, uint256[], uint256[], bytes) returns (bytes4)
onERC1155Received
nonpayablefunction onERC1155Received(address, address, uint256, uint256, bytes) returns (bytes4)
pause
nonpayablefunction pause()
reloadErc1155Address
nonpayablefunction reloadErc1155Address(address[] _addresses)
removeOperator
nonpayablefunction removeOperator(address operator)
renounceRole
nonpayablefunction renounceRole(bytes32 role, address account)
revokeRole
nonpayablefunction revokeRole(bytes32 role, address account)
setCommissionByNftType
nonpayablefunction setCommissionByNftType(uint256[] _nftTypes, address[] _commissionAddresses)
setCreatorFeeByNftType
nonpayablefunction setCreatorFeeByNftType(uint256[] _nftTypes, uint256[] _creatorFees, address[] _creatorAddresses)
setErc1155Address
nonpayablefunction setErc1155Address(address[] _addresses)
unpause
nonpayablefunction unpause()
events
Erc1155OrderCancelled
event Erc1155OrderCancelled(uint256 orderId, uint256 nftId, address seller, uint256 nftType, uint256 quantity, uint256 timeStamp)
Erc1155OrderCreated
event Erc1155OrderCreated(uint256 orderId, uint256 nftId, uint256 price, address seller, uint256 nftType, uint256 quantity, uint256 timeStampm, uint256 currencyType, bool isExchangePrice)
Erc1155OrderFullfilled
event Erc1155OrderFullfilled(uint256 orderId, uint256 nftId, uint256 price, address seller, uint256 quantity, uint256 currencyType, address buyer, uint256 nftType, uint256 transactionFee, uint256 timeStamp)
Paused
event Paused(address account)
RoleAdminChanged
event RoleAdminChanged(bytes32 indexed role, bytes32 indexed previousAdminRole, bytes32 indexed newAdminRole)
RoleGranted
event RoleGranted(bytes32 indexed role, address indexed account, address indexed sender)
RoleRevoked
event RoleRevoked(bytes32 indexed role, address indexed account, address indexed sender)
Unpaused
event Unpaused(address account)
errors
No errors.
creation bytecode
0x60806040523480156200001157600080fd5b50604051620035b5380380620035b5833981016040819052620000349162000122565b60018055600280546001600160a81b0319166101006001600160a01b038416021790556200006b6000620000653390565b62000072565b5062000152565b6200007e828262000082565b5050565b6000828152602081815260408083206001600160a01b038516845290915290205460ff166200007e576000828152602081815260408083206001600160a01b03851684529091529020805460ff19166001179055620000de3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b60006020828403121562000134578081fd5b81516001600160a01b03811681146200014b578182fd5b9392505050565b61345380620001626000396000f3fe608060405234801561001057600080fd5b506004361061014d5760003560e01c80637e5c67b7116100c3578063a217fddf1161007c578063a217fddf14610335578063ac8a584a1461033d578063bc197c8114610350578063d4dfc39714610388578063d547741f1461039b578063f23a6e61146103ae57600080fd5b80637e5c67b7146102ba5780638456cb59146102cd57806391d14854146102d5578063983d2737146102e85780639870d7fe1461030f578063a0c5a5d11461032257600080fd5b806336568abe1161011557806336568abe146101e65780633f4ba83a146101f9578063486c392e1461020157806353c188d9146102145780635c7754301461029c5780635c975abb146102af57600080fd5b806301ffc9a714610152578063118347b41461017a5780631c2421061461018f578063248a9ca3146101a25780632f2ff15d146101d3575b600080fd5b610165610160366004612dcd565b6103cd565b60405190151581526020015b60405180910390f35b61018d610188366004612f22565b6103de565b005b61018d61019d366004612c2e565b610654565b6101c56101b0366004612d86565b60009081526020819052604090206001015490565b604051908152602001610171565b61018d6101e1366004612d9e565b610706565b61018d6101f4366004612d9e565b61072b565b61018d6107a9565b61018d61020f366004612f4d565b6107da565b610266610222366004612f01565b600860209081526000928352604080842090915290825290208054600182015460028301546003840154600490940154929391926001600160a01b03909116919085565b6040805195865260208601949094526001600160a01b03909216928401929092526060830191909152608082015260a001610171565b61018d6102aa366004612c6d565b610c5f565b60025460ff16610165565b61018d6102c8366004612c2e565b610dda565b61018d610e9d565b6101656102e3366004612d9e565b610ecc565b6101c57f523a704056dcd17bcf83bed8b68c59416dac1119be77755efe3bde0a64e46e0c81565b61018d61031d366004612ad6565b610ef5565b61018d610330366004612cd5565b610f49565b6101c5600081565b61018d61034b366004612ad6565b611167565b61036f61035e366004612af2565b63bc197c8160e01b95945050505050565b6040516001600160e01b03199091168152602001610171565b61018d610396366004612df5565b6111b8565b61018d6103a9366004612d9e565b611a34565b61036f6103bc366004612b9b565b63f23a6e6160e01b95945050505050565b60006103d882611a59565b92915050565b6002600154141561040a5760405162461bcd60e51b81526004016104019061320e565b60405180910390fd5b6002600155610417611a7e565b600083116104675760405162461bcd60e51b815260206004820152601c60248201527f496e646578206d7573742062652067726561746572207468616e2030000000006044820152606401610401565b6000818152600860209081526040808320858452825291829020825160a081018452815480825260018301549382019390935260028201546001600160a01b03169381019390935260038101546060840152600401546080830152158015906104d35750838160200151145b6104ef5760405162461bcd60e51b815260040161040190613245565b60408101516001600160a01b0316331461054b5760405162461bcd60e51b815260206004820152601d60248201527f5468652073656e646572206d757374206265207468652073656c6c65720000006044820152606401610401565b60008281526008602090815260408083208684529091528120818155600181018290556002810180546001600160a01b0319169055600380820183905560049091018290558054849081106105b057634e487b7160e01b600052603260045260246000fd5b9060005260206000200160009054906101000a90046001600160a01b031690506105e581863085604001518660800151611ac4565b81516040808401516080808601518351948552602085018a90526001600160a01b0390921684840152606084018790528301524260a0830152517f0be8c31a9e720626c8176335c47ba8e29b25b89a16fa05579c0634a3e40da2829181900360c00190a1505060018055505050565b61065f600033610ecc565b61067b5760405162461bcd60e51b815260040161040190613193565b60005b818110156107015760038383838181106106a857634e487b7160e01b600052603260045260246000fd5b90506020020160208101906106bd9190612ad6565b81546001810183556000928352602090922090910180546001600160a01b0319166001600160a01b03909216919091179055806106f9816133b3565b91505061067e565b505050565b60008281526020819052604090206001015461072181611b4a565b6107018383611b54565b6001600160a01b038116331461079b5760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b6064820152608401610401565b6107a58282611bd8565b5050565b6107b4600033610ecc565b6107d05760405162461bcd60e51b815260040161040190613193565b6107d8611c3d565b565b600260015414156107fd5760405162461bcd60e51b81526004016104019061320e565b600260015561080a611a7e565b6000600260019054906101000a90046001600160a01b03166001600160a01b031663f2b677fe6040518163ffffffff1660e01b815260040160c06040518083038186803b15801561085a57600080fd5b505afa15801561086e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108929190612e59565b90508060a0015184106108df5760405162461bcd60e51b8152602060048201526015602482015274496e76616c69642063757272656e6379207479706560581b6044820152606401610401565b6000871161092f5760405162461bcd60e51b815260206004820152601f60248201527f546f6b656e206964206d7573742062652067726561746572207468616e2030006044820152606401610401565b60006003838154811061095257634e487b7160e01b600052603260045260246000fd5b6000918252602090912001546001600160a01b03169050858162fdd58e336040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018c905260440160206040518083038186803b1580156109b657600080fd5b505afa1580156109ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109ee9190612ee9565b1015610a305760405162461bcd60e51b81526020600482015260116024820152701393d517d15393d551d217d05353d55395607a1b6044820152606401610401565b60025461010090046001600160a01b031663e75658fb336040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260240160206040518083038186803b158015610a8657600080fd5b505afa158015610a9a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610abe9190612d6a565b15610adb5760405162461bcd60e51b815260040161040190613150565b60008711610b365760405162461bcd60e51b815260206004820152602260248201527f4f72646572207072696365206d7573742062652067726561746572207468616e604482015261020360f41b6064820152608401610401565b600083815260076020908152604091829020805460010190819055825160a0810184528181529182018b9052918101336001600160a01b0390811682526000602080840182905260409384018c90528882526008815283822086835281529083902084518155908401516001820155918301516002830180546001600160a01b0319169190921617905560608201516003820155608090910151600490910155610be3828a33308b611ac4565b60408051828152602081018b90529081018990523360608201526080810185905260a081018890524260c082015260e081018790528515156101008201527fe8f357d3ae630dbaac7ab7d145cd0249a27a8303ebfdff2c08212f31155879d690610120015b60405180910390a150506001805550505050505050565b610c6a600033610ecc565b610c865760405162461bcd60e51b815260040161040190613193565b828114610ca55760405162461bcd60e51b8152600401610401906131ca565b60005b83811015610dd3576000838383818110610cd257634e487b7160e01b600052603260045260246000fd5b9050602002016020810190610ce79190612ad6565b6001600160a01b03161415610d2e5760405162461bcd60e51b815260206004820152600d60248201526c125b9d985b1a59081a5b9c1d5d609a1b6044820152606401610401565b828282818110610d4e57634e487b7160e01b600052603260045260246000fd5b9050602002016020810190610d639190612ad6565b60066000878785818110610d8757634e487b7160e01b600052603260045260246000fd5b90506020020135815260200190815260200160002060006101000a8154816001600160a01b0302191690836001600160a01b031602179055508080610dcb906133b3565b915050610ca8565b5050505050565b610de5600033610ecc565b610e015760405162461bcd60e51b815260040161040190613193565b60005b8181101561070157828282818110610e2c57634e487b7160e01b600052603260045260246000fd5b9050602002016020810190610e419190612ad6565b60038281548110610e6257634e487b7160e01b600052603260045260246000fd5b600091825260209091200180546001600160a01b0319166001600160a01b039290921691909117905580610e95816133b3565b915050610e04565b610ea8600033610ecc565b610ec45760405162461bcd60e51b815260040161040190613193565b6107d8611c8f565b6000918252602082815260408084206001600160a01b0393909316845291905290205460ff1690565b610f00600033610ecc565b610f1c5760405162461bcd60e51b815260040161040190613193565b610f467f523a704056dcd17bcf83bed8b68c59416dac1119be77755efe3bde0a64e46e0c82611ccc565b50565b610f54600033610ecc565b610f705760405162461bcd60e51b815260040161040190613193565b8483148015610f7e57508481145b610f9a5760405162461bcd60e51b8152600401610401906131ca565b60005b8581101561115e576000858583818110610fc757634e487b7160e01b600052603260045260246000fd5b9050602002013511801561101957506000838383818110610ff857634e487b7160e01b600052603260045260246000fd5b905060200201602081019061100d9190612ad6565b6001600160a01b031614155b6110555760405162461bcd60e51b815260206004820152600d60248201526c125b9d985b1a59081a5b9c1d5d609a1b6044820152606401610401565b84848281811061107557634e487b7160e01b600052603260045260246000fd5b90506020020135600460008989858181106110a057634e487b7160e01b600052603260045260246000fd5b905060200201358152602001908152602001600020819055508282828181106110d957634e487b7160e01b600052603260045260246000fd5b90506020020160208101906110ee9190612ad6565b6005600089898581811061111257634e487b7160e01b600052603260045260246000fd5b90506020020135815260200190815260200160002060006101000a8154816001600160a01b0302191690836001600160a01b031602179055508080611156906133b3565b915050610f9d565b50505050505050565b611172600033610ecc565b61118e5760405162461bcd60e51b815260040161040190613193565b610f467f523a704056dcd17bcf83bed8b68c59416dac1119be77755efe3bde0a64e46e0c82611a34565b600260015414156111db5760405162461bcd60e51b81526004016104019061320e565b60026001556111e8611a7e565b82356112365760405162461bcd60e51b815260206004820152601c60248201527f496e646578206d7573742062652067726561746572207468616e2030000000006044820152606401610401565b6000600260019054906101000a90046001600160a01b03166001600160a01b031663f2b677fe6040518163ffffffff1660e01b815260040160c06040518083038186803b15801561128657600080fd5b505afa15801561129a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112be9190612e59565b905042816040015183602001356112d591906132fe565b116113185760405162461bcd60e51b81526020600482015260136024820152724558434545445f57414954494e475f54494d4560681b6044820152606401610401565b60025461010090046001600160a01b031663a58394f861133b60a087018761328a565b6040518363ffffffff1660e01b81526004016113589291906130db565b60206040518083038186803b15801561137057600080fd5b505afa158015611384573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113a89190612d6a565b156113e95760405162461bcd60e51b815260206004820152601160248201527013d491115497d254d7d1561150d5551151607a1b6044820152606401610401565b61142a6020850135606086013561140360a088018861328a565b61141060c08a018a61328a565b338b608001358a600001358b602001358b60600151611cd6565b6114665760405162461bcd60e51b815260206004820152600d60248201526c494e56414c49445f504152414d60981b6044820152606401610401565b6114a7843584604087013561148361012089016101008a01612ad6565b61149060a08a018a61328a565b61149d60e08c018c61328a565b8960600151611d7f565b6114e35760405162461bcd60e51b815260206004820152600d60248201526c494e56414c49445f504152414d60981b6044820152606401610401565b60025461010090046001600160a01b031663e75658fb336040516001600160e01b031960e084901b1681526001600160a01b03909116600482015260240160206040518083038186803b15801561153957600080fd5b505afa15801561154d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115719190612d6a565b1561158e5760405162461bcd60e51b815260040161040190613150565b600254339061010090046001600160a01b0316631652fc0f6115b360a088018861328a565b60016040518463ffffffff1660e01b81526004016115d3939291906130f7565b600060405180830381600087803b1580156115ed57600080fd5b505af1158015611601573d6000803e3d6000fd5b50505060008581526008602090815260408083208982013584528252808320815160a081018352815481526001820154938101939093526002808201546001600160a01b03908116858501526003830154606086015260049283015460808087019190915291549351635f56302b60e11b81529496508594610100909404169263beac605692611699928d0135910190815260200190565b604080518083038186803b1580156116b057600080fd5b505afa1580156116c4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116e89190612c01565b8451919350915015801590611701575060208301518835145b61171d5760405162461bcd60e51b815260040161040190613245565b82606001518860200135101561176c5760405162461bcd60e51b815260206004820152601460248201527352616e6b696e673a206e6f7420656e6f7567682160601b6044820152606401610401565b60408301516001600160a01b03166117b75760405162461bcd60e51b815260206004820152600e60248201526d24b73b30b634b21039b2b63632b960911b6044820152606401610401565b836001600160a01b031683604001516001600160a01b0316141561180d5760405162461bcd60e51b815260206004820152600d60248201526c213abc90313c9039b2b63632b960991b6044820152606401610401565b85356118675760405162461bcd60e51b8152602060048201526024808201527f43757272656e74207072696365206d75737420626520677265617465722074686044820152630616e20360e41b6064820152608401610401565b6118748233308935611e1c565b60006008600089815260200190815260200160002060008a604001358152602001908152602001600020600001819055506008600088815260200190815260200160002060008960400135815260200190815260200160002060008082016000905560018201600090556002820160006101000a8154906001600160a01b03021916905560038201600090556004820160009055505061195b87600660008a815260200190815260200160002060009054906101000a90046001600160a01b0316848960000135888860400151878f6101000160208101906119569190612ad6565b611f59565b60006003888154811061197e57634e487b7160e01b600052603260045260246000fd5b6000918252602090912001546001600160a01b031690506119a7818a35308860608e0135611ac4565b835160408086015181519283528b3560208401528935918301919091526001600160a01b039081166060838101919091528b01356080838101919091528b013560a0830152861660c082015260e081018990526101008101839052426101208201527ff64794059de89314ca2ceed4975b06846c466f7f363efeb5559bc29807ad95159061014001610c48565b600082815260208190526040902060010154611a4f81611b4a565b6107018383611bd8565b60006001600160e01b03198216630271189760e51b14806103d857506103d88261207a565b60025460ff16156107d85760405162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b6044820152606401610401565b604051637921219560e11b81526001600160a01b0384811660048301528381166024830152604482018690526064820183905260a06084830152600060a483015286169063f242432a9060c401600060405180830381600087803b158015611b2b57600080fd5b505af1158015611b3f573d6000803e3d6000fd5b505050505050505050565b610f4681336120af565b611b5e8282610ecc565b6107a5576000828152602081815260408083206001600160a01b03851684529091529020805460ff19166001179055611b943390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b611be28282610ecc565b156107a5576000828152602081815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b611c45612113565b6002805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa335b6040516001600160a01b03909116815260200160405180910390a1565b611c97611a7e565b6002805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258611c723390565b6107a58282611b54565b6000808a8a8e8e8a898b8a604051602001611cf8989796959493929190612fe6565b6040516020818303038152906040528051906020012090506000611d5d8a8a8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d57925086915061215c9050565b906121af565b6001600160a01b0390811690851614925050509b9a5050505050505050505050565b60008086868c8c8c8c604051602001611d9d9695949392919061302c565b6040516020818303038152906040528051906020012090506000611dfc86868080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d57925086915061215c9050565b6001600160a01b0390811690851614925050509998505050505050505050565b604080516001600160a01b03858116602483015284811660448084019190915283518084039091018152606490920183526020820180516001600160e01b0316636eb1769f60e11b1790529151600092839290881691611e7c9190612fca565b6000604051808303816000865af19150503d8060008114611eb9576040519150601f19603f3d011682016040523d82523d6000602084013e611ebe565b606091505b5091509150818015611ee357508281806020019051810190611ee09190612ee9565b10155b611f465760405162461bcd60e51b815260206004820152602e60248201527f45786368616e67652063757272656e637920616c6c6f77616e6365206f66207560448201526d73657220697320746f6f206c6f7760901b6064820152608401610401565b611f518686856121d3565b505050505050565b60006103e8611f688488613336565b611f729190613316565b9050611f8087868a846122f3565b6000898152600460205260409020541561206a576000898152600460205260408120546103e890611fb19089613336565b611fbb9190613316565b90506001600160a01b0383161561202d5760008a815260056020526040902054611ffc90899088906001600160a01b0316611ff7600286613316565b6122f3565b61200d888785611ff7600286613316565b6120288887878461201e878d613355565b611ff79190613355565b612064565b60008a81526005602052604090205461205390899088906001600160a01b0316846122f3565b6120648887878461201e878d613355565b50611b3f565b611b3f878686611ff7858b613355565b60006001600160e01b03198216637965db0b60e01b14806103d857506301ffc9a760e01b6001600160e01b03198316146103d8565b6120b98282610ecc565b6107a5576120d1816001600160a01b03166014612429565b6120dc836020612429565b6040516020016120ed929190613066565b60408051601f198184030181529082905262461bcd60e51b82526104019160040161311d565b60025460ff166107d85760405162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b6044820152606401610401565b6040517f19457468657265756d205369676e6564204d6573736167653a0a3332000000006020820152603c8101829052600090605c01604051602081830303815290604052805190602001209050919050565b60008060006121be8585612611565b915091506121cb81612681565b509392505050565b604080516001600160a01b0384811660248084019190915283518084039091018152604490920183526020820180516001600160e01b03166370a0823160e01b179052915160009283929087169161222b9190612fca565b6000604051808303816000865af19150503d8060008114612268576040519150601f19603f3d011682016040523d82523d6000602084013e61226d565b606091505b50915091508180156122925750828180602001905181019061228f9190612ee9565b10155b610dd35760405162461bcd60e51b815260206004820152602c60248201527f45786368616e67652063757272656e63792062616c616e6365206f662075736560448201526b7220697320746f6f206c6f7760a01b6064820152608401610401565b604080516001600160a01b0385811660248301528481166044830152606480830185905283518084039091018152608490920183526020820180516001600160e01b03166323b872dd60e01b17905291516000928392908816916123579190612fca565b6000604051808303816000865af19150503d8060008114612394576040519150601f19603f3d011682016040523d82523d6000602084013e612399565b606091505b50915091508180156123c35750805115806123c35750808060200190518101906123c39190612d6a565b611f515760405162461bcd60e51b815260206004820152603160248201527f5472616e7366657248656c7065723a3a7472616e7366657246726f6d3a207472604482015270185b9cd9995c919c9bdb4819985a5b1959607a1b6064820152608401610401565b60606000612438836002613336565b6124439060026132fe565b6001600160401b0381111561246857634e487b7160e01b600052604160045260246000fd5b6040519080825280601f01601f191660200182016040528015612492576020820181803683370190505b509050600360fc1b816000815181106124bb57634e487b7160e01b600052603260045260246000fd5b60200101906001600160f81b031916908160001a905350600f60fb1b816001815181106124f857634e487b7160e01b600052603260045260246000fd5b60200101906001600160f81b031916908160001a905350600061251c846002613336565b6125279060016132fe565b90505b60018111156125bb576f181899199a1a9b1b9c1cb0b131b232b360811b85600f166010811061256957634e487b7160e01b600052603260045260246000fd5b1a60f81b82828151811061258d57634e487b7160e01b600052603260045260246000fd5b60200101906001600160f81b031916908160001a90535060049490941c936125b48161339c565b905061252a565b50831561260a5760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610401565b9392505050565b6000808251604114156126485760208301516040840151606085015160001a61263c87828585612882565b9450945050505061267a565b825160401415612672576020830151604084015161266786838361296f565b93509350505061267a565b506000905060025b9250929050565b60008160048111156126a357634e487b7160e01b600052602160045260246000fd5b14156126ac5750565b60018160048111156126ce57634e487b7160e01b600052602160045260246000fd5b141561271c5760405162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e617475726500000000000000006044820152606401610401565b600281600481111561273e57634e487b7160e01b600052602160045260246000fd5b141561278c5760405162461bcd60e51b815260206004820152601f60248201527f45434453413a20696e76616c6964207369676e6174757265206c656e677468006044820152606401610401565b60038160048111156127ae57634e487b7160e01b600052602160045260246000fd5b14156128075760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202773272076616c604482015261756560f01b6064820152608401610401565b600481600481111561282957634e487b7160e01b600052602160045260246000fd5b1415610f465760405162461bcd60e51b815260206004820152602260248201527f45434453413a20696e76616c6964207369676e6174757265202776272076616c604482015261756560f01b6064820152608401610401565b6000807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a08311156128b95750600090506003612966565b8460ff16601b141580156128d157508460ff16601c14155b156128e25750600090506004612966565b6040805160008082526020820180845289905260ff881692820192909252606081018690526080810185905260019060a0016020604051602081039080840390855afa158015612936573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b03811661295f57600060019250925050612966565b9150600090505b94509492505050565b6000806001600160ff1b0383168161298c60ff86901c601b6132fe565b905061299a87828885612882565b935093505050935093915050565b60008083601f8401126129b9578182fd5b5081356001600160401b038111156129cf578182fd5b6020830191508360208260051b850101111561267a57600080fd5b600082601f8301126129fa578081fd5b813560206001600160401b03821115612a1557612a156133e4565b8160051b612a248282016132ce565b838152828101908684018388018501891015612a3e578687fd5b8693505b85841015612a60578035835260019390930192918401918401612a42565b50979650505050505050565b600082601f830112612a7c578081fd5b81356001600160401b03811115612a9557612a956133e4565b612aa8601f8201601f19166020016132ce565b818152846020838601011115612abc578283fd5b816020850160208301379081016020019190915292915050565b600060208284031215612ae7578081fd5b813561260a816133fa565b600080600080600060a08688031215612b09578081fd5b8535612b14816133fa565b94506020860135612b24816133fa565b935060408601356001600160401b0380821115612b3f578283fd5b612b4b89838a016129ea565b94506060880135915080821115612b60578283fd5b612b6c89838a016129ea565b93506080880135915080821115612b81578283fd5b50612b8e88828901612a6c565b9150509295509295909350565b600080600080600060a08688031215612bb2578081fd5b8535612bbd816133fa565b94506020860135612bcd816133fa565b9350604086013592506060860135915060808601356001600160401b03811115612bf5578182fd5b612b8e88828901612a6c565b60008060408385031215612c13578182fd5b8251612c1e816133fa565b6020939093015192949293505050565b60008060208385031215612c40578182fd5b82356001600160401b03811115612c55578283fd5b612c61858286016129a8565b90969095509350505050565b60008060008060408587031215612c82578182fd5b84356001600160401b0380821115612c98578384fd5b612ca4888389016129a8565b90965094506020870135915080821115612cbc578384fd5b50612cc9878288016129a8565b95989497509550505050565b60008060008060008060608789031215612ced578384fd5b86356001600160401b0380821115612d03578586fd5b612d0f8a838b016129a8565b90985096506020890135915080821115612d27578586fd5b612d338a838b016129a8565b90965094506040890135915080821115612d4b578283fd5b50612d5889828a016129a8565b979a9699509497509295939492505050565b600060208284031215612d7b578081fd5b815161260a8161340f565b600060208284031215612d97578081fd5b5035919050565b60008060408385031215612db0578182fd5b823591506020830135612dc2816133fa565b809150509250929050565b600060208284031215612dde578081fd5b81356001600160e01b03198116811461260a578182fd5b60008060008385036080811215612e0a578182fd5b84356001600160401b03811115612e1f578283fd5b85016101208188031215612e31578283fd5b9350602085013592506040603f1982011215612e4b578182fd5b506040840190509250925092565b600060c08284031215612e6a578081fd5b60405160c081018181106001600160401b0382111715612e8c57612e8c6133e4565b604052825181526020830151612ea1816133fa565b6020820152604083810151908201526060830151612ebe816133fa565b60608201526080830151612ed1816133fa565b608082015260a0928301519281019290925250919050565b600060208284031215612efa578081fd5b5051919050565b60008060408385031215612f13578182fd5b50508035926020909101359150565b600080600060608486031215612f36578081fd5b505081359360208301359350604090920135919050565b60008060008060008060c08789031215612f65578384fd5b863595506020870135945060408701359350606087013592506080870135612f8c8161340f565b8092505060a087013590509295509295509295565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60008251612fdc81846020870161336c565b9190910192915050565b87898237909601948552602085019390935260609190911b6bffffffffffffffffffffffff1916604084015260548301526074820152609481019190915260b401919050565b8587823790940192835260208301919091526040820152606091821b6bffffffffffffffffffffffff191691810191909152607401919050565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161309e81601785016020880161336c565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516130cf81602884016020880161336c565b01602801949350505050565b6020815260006130ef602083018486612fa1565b949350505050565b60408152600061310b604083018587612fa1565b90508215156020830152949350505050565b602081526000825180602084015261313c81604085016020870161336c565b601f01601f19169190910160400192915050565b60208082526023908201527f416464726573733a20416464726573732063616e206e6f7420696d706163742060408201526269742160e81b606082015260800190565b60208082526017908201527f43616c6c6572206973206e6f74207468652061646d696e000000000000000000604082015260600190565b60208082526024908201527f496e76616c696420496e7075743a204172726179206c656e677468206d69736d6040820152630c2e8c6d60e31b606082015260800190565b6020808252601f908201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c00604082015260600190565b60208082526025908201527f4f7264657220646f6573206e6f74206578697374206f7220696e76616c69642060408201526437b93232b960d91b606082015260800190565b6000808335601e198436030181126132a0578283fd5b8301803591506001600160401b038211156132b9578283fd5b60200191503681900382131561267a57600080fd5b604051601f8201601f191681016001600160401b03811182821017156132f6576132f66133e4565b604052919050565b60008219821115613311576133116133ce565b500190565b60008261333157634e487b7160e01b81526012600452602481fd5b500490565b6000816000190483118215151615613350576133506133ce565b500290565b600082821015613367576133676133ce565b500390565b60005b8381101561338757818101518382015260200161336f565b83811115613396576000848401525b50505050565b6000816133ab576133ab6133ce565b506000190190565b60006000198214156133c7576133c76133ce565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6001600160a01b0381168114610f4657600080fd5b8015158114610f4657600080fdfea2646970667358221220e004f2493ee62af0c5a4fe5bd55f3069b600e27579f08e322ae3567636eb00c564736f6c634300080400330000000000000000000000004b4151c1e9ecfb837695623fe7fc7a7c5f62a9bc