[ { "inputs": [ { "internalType": "address", "name": "_governance", "type": "address" } ], "stateMutability": "nonpayable", "type": "constructor" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "_governance", "type": "address" } ], "name": "AcceptGovernance", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "_minter", "type": "address" } ], "name": "AddMinter", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "owner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "spender", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "Approval", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "_governance", "type": "address" } ], "name": "ChangeGovernance", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "_minter", "type": "address" } ], "name": "EnableMinter", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "account", "type": "address" } ], "name": "Paused", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "from", "type": "address" }, { "indexed": true, "internalType": "address", "name": "to", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" } ], "name": "Transfer", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "account", "type": "address" } ], "name": "Unpaused", "type": "event" }, { "inputs": [], "name": "DOMAIN_SEPARATOR", "outputs": [ { "internalType": "bytes32", "name": "", "type": "bytes32" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "acceptGovernance", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_minter", "type": "address" } ], "name": "addMinter", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "addTime", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "address", "name": "spender", "type": "address" } ], "name": "allowance", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "approve", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "account", "type": "address" } ], "name": "balanceOf", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_account", "type": "address" }, { "internalType": "uint256", "name": "_amount", "type": "uint256" } ], "name": "burn", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_governance", "type": "address" } ], "name": "changeGovernance", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "decimals", "outputs": [ { "internalType": "uint8", "name": "", "type": "uint8" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "subtractedValue", "type": "uint256" } ], "name": "decreaseAllowance", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_minter", "type": "address" } ], "name": "enableMinter", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "governance", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "addedValue", "type": "uint256" } ], "name": "increaseAllowance", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_account", "type": "address" }, { "internalType": "uint256", "name": "_amount", "type": "uint256" } ], "name": "mint", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" } ], "name": "minters", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "name", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" } ], "name": "nonces", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "paused", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "pendingGovernance", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "owner", "type": "address" }, { "internalType": "address", "name": "spender", "type": "address" }, { "internalType": "uint256", "name": "value", "type": "uint256" }, { "internalType": "uint256", "name": "deadline", "type": "uint256" }, { "internalType": "uint8", "name": "v", "type": "uint8" }, { "internalType": "bytes32", "name": "r", "type": "bytes32" }, { "internalType": "bytes32", "name": "s", "type": "bytes32" } ], "name": "permit", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "setPause", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "setUnpause", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "symbol", "outputs": [ { "internalType": "string", "name": "", "type": "string" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "totalSupply", "outputs": [ { "internalType": "uint256", "name": "", "type": "uint256" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "recipient", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "transfer", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "sender", "type": "address" }, { "internalType": "address", "name": "recipient", "type": "address" }, { "internalType": "uint256", "name": "amount", "type": "uint256" } ], "name": "transferFrom", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "nonpayable", "type": "function" } ]
6101406040527f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c9610120523480156200003757600080fd5b5060405162001fd138038062001fd1833981810160405260208110156200005d57600080fd5b5051604080518082018252600e8082526d2ab73137bab732102237b63630b960911b60208381018290528451808601865260018152603160f81b8183015285518087018752938452838201928352855180870190965260038087526215539160ea1b928701929092528351949586959194939092620000df92909190620001ff565b508051620000f5906004906020840190620001ff565b50506005805460ff1916601217905550815160208084019190912082519183019190912060c082905260e08190527f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f6200014e62000197565b60a0526200015e8184846200019b565b608052610100908152600780546001600160a81b0319166001600160a01b03989098169091029690961790955550620002ab9350505050565b4690565b6000838383620001aa62000197565b3060405160200180868152602001858152602001848152602001838152602001826001600160a01b03168152602001955050505050506040516020818303038152906040528051906020012090509392505050565b828054600181600116156101000203166002900490600052602060002090601f01602090048101928262000237576000855562000282565b82601f106200025257805160ff191683800117855562000282565b8280016001018555821562000282579182015b828111156200028257825182559160200191906001019062000265565b506200029092915062000294565b5090565b5b8082111562000290576000815560010162000295565b60805160a05160c05160e0516101005161012051611cdc620002f560003980610fcc5250806114a25250806114e45250806114c35250806114495250806114795250611cdc6000f3fe608060405234801561001057600080fd5b50600436106101a95760003560e01c80637ecebe00116100f9578063a9059cbb11610097578063d505accf11610071578063d505accf146104ef578063dd62ed3e14610540578063f39c38a01461056e578063f46eccc414610576576101a9565b8063a9059cbb14610495578063d2d693cc146104c1578063d431b1ac146104e7576101a9565b8063983b2d56116100d3578063983b2d56146103f157806399572d6f146104175780639dc29fac1461043d578063a457c2d714610469576101a9565b80637ecebe00146103bb578063848cb5c6146103e157806395d89b41146103e9576101a9565b80633644e5151161016657806347d5b4581161014057806347d5b458146103435780635aa6e675146103695780635c975abb1461038d57806370a0823114610395576101a9565b80633644e515146102e357806339509351146102eb57806340c10f1914610317576101a9565b806306fdde03146101ae578063095ea7b31461022b57806318160ddd1461026b578063238efcbc1461028557806323b872dd1461028f578063313ce567146102c5575b600080fd5b6101b661059c565b6040805160208082528351818301528351919283929083019185019080838360005b838110156101f05781810151838201526020016101d8565b50505050905090810190601f16801561021d5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102576004803603604081101561024157600080fd5b506001600160a01b038135169060200135610633565b604080519115158252519081900360200190f35b610273610650565b60408051918252519081900360200190f35b61028d610656565b005b610257600480360360608110156102a557600080fd5b506001600160a01b038135811691602081013590911690604001356106ff565b6102cd610786565b6040805160ff9092168252519081900360200190f35b61027361078f565b6102576004803603604081101561030157600080fd5b506001600160a01b03813516906020013561079e565b61028d6004803603604081101561032d57600080fd5b506001600160a01b0381351690602001356107ec565b61028d6004803603602081101561035957600080fd5b50356001600160a01b03166109b2565b610371610aac565b604080516001600160a01b039092168252519081900360200190f35b610257610ac0565b610273600480360360208110156103ab57600080fd5b50356001600160a01b0316610ac9565b610273600480360360208110156103d157600080fd5b50356001600160a01b0316610ae4565b61028d610b0b565b6101b6610b5e565b61028d6004803603602081101561040757600080fd5b50356001600160a01b0316610bbf565b61028d6004803603602081101561042d57600080fd5b50356001600160a01b0316610c5b565b61028d6004803603604081101561045357600080fd5b506001600160a01b038135169060200135610d0b565b6102576004803603604081101561047f57600080fd5b506001600160a01b038135169060200135610e7e565b610257600480360360408110156104ab57600080fd5b506001600160a01b038135169060200135610ee6565b610273600480360360208110156104d757600080fd5b50356001600160a01b0316610efa565b61028d610f0c565b61028d600480360360e081101561050557600080fd5b506001600160a01b03813581169160208101359091169060408101359060608101359060ff6080820135169060a08101359060c00135610f5d565b6102736004803603604081101561055657600080fd5b506001600160a01b0381358116916020013516611114565b61037161113f565b6102576004803603602081101561058c57600080fd5b50356001600160a01b031661114e565b60038054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156106285780601f106105fd57610100808354040283529160200191610628565b820191906000526020600020905b81548152906001019060200180831161060b57829003601f168201915b505050505090505b90565b6000610647610640611163565b8484611167565b50600192915050565b60025490565b6008546001600160a01b0316331461069a576040805162461bcd60e51b81526020600482015260026024820152614e4160f01b604482015290519081900360640190fd5b60085460078054610100600160a81b0319166101006001600160a01b039384168102919091179182905560408051919092049092168252517f0e5e627abed15db8c4841ff7db9a3fb94e105b243564c206bf485362210eee07916020908290030190a1565b600061070c848484611253565b61077c84610718611163565b61077785604051806060016040528060288152602001611bf0602891396001600160a01b038a16600090815260016020526040812090610756611163565b6001600160a01b0316815260208101919091526040016000205491906113ae565b611167565b5060019392505050565b60055460ff1690565b6000610799611445565b905090565b60006106476107ab611163565b8461077785600160006107bc611163565b6001600160a01b03908116825260208083019390935260409182016000908120918c16815292529020549061150f565b6107f4610ac0565b15610839576040805162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b604482015290519081900360640190fd5b60003390506000816001600160a01b031663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b15801561087957600080fd5b505afa15801561088d573d6000803e3d6000fd5b505050506040513d60208110156108a357600080fd5b50516001600160a01b03811660009081526009602052604090205490915060ff166108fa576040805162461bcd60e51b81526020600482015260026024820152614e4160f01b604482015290519081900360640190fd5b6040805163d63a8e1160e01b815233600482015290516001600160a01b0383169163d63a8e11916024808301926020929190829003018186803b15801561094057600080fd5b505afa158015610954573d6000803e3d6000fd5b505050506040513d602081101561096a57600080fd5b50516109a2576040805162461bcd60e51b81526020600482015260026024820152614e4160f01b604482015290519081900360640190fd5b6109ac8484611570565b50505050565b60075461010090046001600160a01b031633146109fb576040805162461bcd60e51b81526020600482015260026024820152614e4160f01b604482015290519081900360640190fd5b6001600160a01b0381166000908152600a6020526040902054610a1d57600080fd5b6001600160a01b0381166000908152600a60205260409020546203f48090610a46904290611660565b1015610a5157600080fd5b6001600160a01b038116600081815260096020908152604091829020805460ff19166001179055815192835290517f08e4b825071018eea245bf7ae5da2c3ac0daf62fca7308987bdec3c23783fe629281900390910190a150565b60075461010090046001600160a01b031681565b60075460ff1690565b6001600160a01b031660009081526020819052604090205490565b6001600160a01b0381166000908152600660205260408120610b05906116bd565b92915050565b60075461010090046001600160a01b03163314610b54576040805162461bcd60e51b81526020600482015260026024820152614e4160f01b604482015290519081900360640190fd5b610b5c6116c1565b565b60048054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156106285780601f106105fd57610100808354040283529160200191610628565b60075461010090046001600160a01b03163314610c08576040805162461bcd60e51b81526020600482015260026024820152614e4160f01b604482015290519081900360640190fd5b6001600160a01b0381166000818152600a6020908152604091829020429055815192835290517f16baa937b08d58713325f93ac58b8a9369a4359bbefb4957d6d9b402735722ab9281900390910190a150565b60075461010090046001600160a01b03163314610ca4576040805162461bcd60e51b81526020600482015260026024820152614e4160f01b604482015290519081900360640190fd5b6001600160a01b038116610cb757600080fd5b600880546001600160a01b0383166001600160a01b0319909116811790915560408051918252517f13079bd259b6c430f434e223f09ff073409b818146629085e53378cf536d3ce89181900360200190a150565b60003390506000816001600160a01b031663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b158015610d4b57600080fd5b505afa158015610d5f573d6000803e3d6000fd5b505050506040513d6020811015610d7557600080fd5b50516001600160a01b03811660009081526009602052604090205490915060ff16610dcc576040805162461bcd60e51b81526020600482015260026024820152614e4160f01b604482015290519081900360640190fd5b6040805163d63a8e1160e01b815233600482015290516001600160a01b0383169163d63a8e11916024808301926020929190829003018186803b158015610e1257600080fd5b505afa158015610e26573d6000803e3d6000fd5b505050506040513d6020811015610e3c57600080fd5b5051610e74576040805162461bcd60e51b81526020600482015260026024820152614e4160f01b604482015290519081900360640190fd5b6109ac8484611761565b6000610647610e8b611163565b8461077785604051806060016040528060258152602001611c826025913960016000610eb5611163565b6001600160a01b03908116825260208083019390935260409182016000908120918d168152925290205491906113ae565b6000610647610ef3611163565b8484611253565b600a6020526000908152604090205481565b60075461010090046001600160a01b03163314610f55576040805162461bcd60e51b81526020600482015260026024820152614e4160f01b604482015290519081900360640190fd5b610b5c61185d565b83421115610fb2576040805162461bcd60e51b815260206004820152601d60248201527f45524332305065726d69743a206578706972656420646561646c696e65000000604482015290519081900360640190fd5b6001600160a01b03871660009081526006602052604081207f000000000000000000000000000000000000000000000000000000000000000090899089908990610ffb906116bd565b8960405160200180878152602001866001600160a01b03168152602001856001600160a01b0316815260200184815260200183815260200182815260200196505050505050506040516020818303038152906040528051906020012090506000611064826118e0565b905060006110748287878761192c565b9050896001600160a01b0316816001600160a01b0316146110dc576040805162461bcd60e51b815260206004820152601e60248201527f45524332305065726d69743a20696e76616c6964207369676e61747572650000604482015290519081900360640190fd5b6001600160a01b038a1660009081526006602052604090206110fd90611aaa565b6111088a8a8a611167565b50505050505050505050565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6008546001600160a01b031681565b60096020526000908152604090205460ff1681565b3390565b6001600160a01b0383166111ac5760405162461bcd60e51b8152600401808060200182810382526024815260200180611c5e6024913960400191505060405180910390fd5b6001600160a01b0382166111f15760405162461bcd60e51b8152600401808060200182810382526022815260200180611b646022913960400191505060405180910390fd5b6001600160a01b03808416600081815260016020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b0383166112985760405162461bcd60e51b8152600401808060200182810382526025815260200180611c396025913960400191505060405180910390fd5b6001600160a01b0382166112dd5760405162461bcd60e51b8152600401808060200182810382526023815260200180611b1f6023913960400191505060405180910390fd5b6112e8838383611ab3565b61132581604051806060016040528060268152602001611b86602691396001600160a01b03861660009081526020819052604090205491906113ae565b6001600160a01b038085166000908152602081905260408082209390935590841681522054611354908261150f565b6001600160a01b038084166000818152602081815260409182902094909455805185815290519193928716927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3505050565b6000818484111561143d5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156114025781810151838201526020016113ea565b50505050905090810190601f16801561142f5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60007f0000000000000000000000000000000000000000000000000000000000000000611470611ab8565b141561149d57507f0000000000000000000000000000000000000000000000000000000000000000610630565b6115087f00000000000000000000000000000000000000000000000000000000000000007f00000000000000000000000000000000000000000000000000000000000000007f0000000000000000000000000000000000000000000000000000000000000000611abc565b9050610630565b600082820183811015611569576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6001600160a01b0382166115cb576040805162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015290519081900360640190fd5b6115d760008383611ab3565b6002546115e4908261150f565b6002556001600160a01b03821660009081526020819052604090205461160a908261150f565b6001600160a01b0383166000818152602081815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b6000828211156116b7576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b5490565b6116c9610ac0565b611711576040805162461bcd60e51b815260206004820152601460248201527314185d5cd8589b194e881b9bdd081c185d5cd95960621b604482015290519081900360640190fd5b6007805460ff191690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa611744611163565b604080516001600160a01b039092168252519081900360200190a1565b6001600160a01b0382166117a65760405162461bcd60e51b8152600401808060200182810382526021815260200180611c186021913960400191505060405180910390fd5b6117b282600083611ab3565b6117ef81604051806060016040528060228152602001611b42602291396001600160a01b03851660009081526020819052604090205491906113ae565b6001600160a01b0383166000908152602081905260409020556002546118159082611660565b6002556040805182815290516000916001600160a01b038516917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35050565b611865610ac0565b156118aa576040805162461bcd60e51b815260206004820152601060248201526f14185d5cd8589b194e881c185d5cd95960821b604482015290519081900360640190fd5b6007805460ff191660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258611744611163565b60006118ea611445565b82604051602001808061190160f01b81525060020183815260200182815260200192505050604051602081830303815290604052805190602001209050919050565b60007f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a082111561198d5760405162461bcd60e51b8152600401808060200182810382526022815260200180611bac6022913960400191505060405180910390fd5b8360ff16601b14806119a257508360ff16601c145b6119dd5760405162461bcd60e51b8152600401808060200182810382526022815260200180611bce6022913960400191505060405180910390fd5b600060018686868660405160008152602001604052604051808581526020018460ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa158015611a39573d6000803e3d6000fd5b5050604051601f1901519150506001600160a01b038116611aa1576040805162461bcd60e51b815260206004820152601860248201527f45434453413a20696e76616c6964207369676e61747572650000000000000000604482015290519081900360640190fd5b95945050505050565b80546001019055565b505050565b4690565b6000838383611ac9611ab8565b3060405160200180868152602001858152602001848152602001838152602001826001600160a01b0316815260200195505050505050604051602081830303815290604052805190602001209050939250505056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e636545524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e636545434453413a20696e76616c6964207369676e6174757265202773272076616c756545434453413a20696e76616c6964207369676e6174757265202776272076616c756545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa264697066735822122056bb3cbc779d9980a3348c6c3f381d3855fccf3af99fd9c3fceb06986fd42b4f64736f6c63430007060033000000000000000000000000ed174a933f2e7fa83f3dd136582cfb108d66a26b