8c1acb0b22
* feat: add pascal hardfork * config: fix default value for PascalTime and add OverridePascal (#2693) * chores: rename some contract name * feat: update bytecode on dev env
1 line
19 KiB
Plaintext
1 line
19 KiB
Plaintext
6080604052600436106101d15760003560e01c80638129fc1c116100f7578063b1c5f42711610095578063d547741f11610064578063d547741f14610584578063e38335e5146105a4578063f23a6e61146105b7578063f27a0c92146105e357600080fd5b8063b1c5f427146104eb578063bc197c811461050b578063c4d252f514610537578063d45c44351461055757600080fd5b806391d14854116100d157806391d1485414610474578063a217fddf14610494578063ac431751146104a9578063b08e51c0146104c957600080fd5b80638129fc1c1461041d5780638f2a0bb0146104325780638f61f4f51461045257600080fd5b8063248a9ca31161016f57806336568abe1161013e57806336568abe1461039d578063584b153e146103bd57806364d62353146103dd5780638065657f146103fd57600080fd5b8063248a9ca3146102fd5780632ab0f5291461032d5780632f2ff15d1461035d57806331d507501461037d57600080fd5b80630d3cf6fc116101ab5780630d3cf6fc14610264578063134008d31461028657806313bc9f2014610299578063150b7a02146102b957600080fd5b806301d5062a146101dd57806301ffc9a7146101ff57806307bd02651461023457600080fd5b366101d857005b600080fd5b3480156101e957600080fd5b506101fd6101f8366004611a52565b6105f8565b005b34801561020b57600080fd5b5061021f61021a366004611ac6565b6106bc565b60405190151581526020015b60405180910390f35b34801561024057600080fd5b5061025660008051602061253983398151915281565b60405190815260200161022b565b34801561027057600080fd5b506102566000805160206124f983398151915281565b6101fd610294366004611af0565b6106e7565b3480156102a557600080fd5b5061021f6102b4366004611b5b565b61078a565b3480156102c557600080fd5b506102e46102d4366004611c29565b630a85bd0160e11b949350505050565b6040516001600160e01b0319909116815260200161022b565b34801561030957600080fd5b50610256610318366004611b5b565b60009081526065602052604090206001015490565b34801561033957600080fd5b5061021f610348366004611b5b565b60009081526097602052604090205460011490565b34801561036957600080fd5b506101fd610378366004611c90565b6107b0565b34801561038957600080fd5b5061021f610398366004611b5b565b6107da565b3480156103a957600080fd5b506101fd6103b8366004611c90565b6107f3565b3480156103c957600080fd5b5061021f6103d8366004611b5b565b610876565b3480156103e957600080fd5b506101fd6103f8366004611b5b565b61088d565b34801561040957600080fd5b50610256610418366004611af0565b610931565b34801561042957600080fd5b506101fd610970565b34801561043e57600080fd5b506101fd61044d366004611d00565b610b20565b34801561045e57600080fd5b5061025660008051602061251983398151915281565b34801561048057600080fd5b5061021f61048f366004611c90565b610ca1565b3480156104a057600080fd5b50610256600081565b3480156104b557600080fd5b506101fd6104c4366004611db1565b610ccc565b3480156104d557600080fd5b5061025660008051602061255983398151915281565b3480156104f757600080fd5b50610256610506366004611e1c565b610eb6565b34801561051757600080fd5b506102e4610526366004611f43565b63bc197c8160e01b95945050505050565b34801561054357600080fd5b506101fd610552366004611b5b565b610efb565b34801561056357600080fd5b50610256610572366004611b5b565b60009081526097602052604090205490565b34801561059057600080fd5b506101fd61059f366004611c90565b610fbe565b6101fd6105b2366004611e1c565b610fe3565b3480156105c357600080fd5b506102e46105d2366004611fec565b63f23a6e6160e01b95945050505050565b3480156105ef57600080fd5b50609854610256565b6000805160206125198339815191526106108161115b565b6000610620898989898989610931565b905061062c8184611165565b6000817f4cf4410cc57040e44862ef0f45f3dd5a5e02db8eb8add648d4b0e236f1d07dca8b8b8b8b8b8a60405161066896959493929190612079565b60405180910390a383156106b157807f20fda5fd27a1ea7bf5b9567f143ac5470bb059374a27e8f67cb44f946f6d0387856040516106a891815260200190565b60405180910390a25b505050505050505050565b60006001600160e01b03198216630271189760e51b14806106e157506106e182611254565b92915050565b600080516020612539833981519152610701816000610ca1565b61070f5761070f8133611289565b600061071f888888888888610931565b905061072b81856112e2565b6107378888888861137d565b6000817fc2617efa69bab66782fa219543714338489c4e9e178271560a91b82c3f612b588a8a8a8a60405161076f94939291906120b6565b60405180910390a361078081611450565b5050505050505050565b6000818152609760205260408120546001811180156107a95750428111155b9392505050565b6000828152606560205260409020600101546107cb8161115b565b6107d58383611489565b505050565b60008181526097602052604081205481905b1192915050565b6001600160a01b03811633146108685760405162461bcd60e51b815260206004820152602f60248201527f416363657373436f6e74726f6c3a2063616e206f6e6c792072656e6f756e636560448201526e103937b632b9903337b91039b2b63360891b60648201526084015b60405180910390fd5b610872828261150f565b5050565b6000818152609760205260408120546001906107ec565b3330146108f05760405162461bcd60e51b815260206004820152602b60248201527f54696d656c6f636b436f6e74726f6c6c65723a2063616c6c6572206d7573742060448201526a62652074696d656c6f636b60a81b606482015260840161085f565b60985460408051918252602082018390527f11c24f4ead16507c69ac467fbd5e4eed5fb5c699626d2cc6d66421df253886d5910160405180910390a1609855565b600086868686868660405160200161094e96959493929190612079565b6040516020818303038152906040528051906020012090509695505050505050565b600054610100900460ff16158080156109905750600054600160ff909116105b806109aa5750303b1580156109aa575060005460ff166001145b610a0d5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b606482015260840161085f565b6000805460ff191660011790558015610a30576000805461ff0019166101001790555b334114610a505760405163022d8c9560e31b815260040160405180910390fd5b3a15610a6f576040516383f1b1d360e01b815260040160405180910390fd5b6040805160018082528183019092526000916020808301908036833701905050905061200481600081518110610aa757610aa76120e8565b60200260200101906001600160a01b031690816001600160a01b031681525050610ad6603c8283612004611576565b508015610b1d576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50565b600080516020612519833981519152610b388161115b565b888714610b575760405162461bcd60e51b815260040161085f906120fe565b888514610b765760405162461bcd60e51b815260040161085f906120fe565b6000610b888b8b8b8b8b8b8b8b610eb6565b9050610b948184611165565b60005b8a811015610c525780827f4cf4410cc57040e44862ef0f45f3dd5a5e02db8eb8add648d4b0e236f1d07dca8e8e85818110610bd457610bd46120e8565b9050602002016020810190610be99190612141565b8d8d86818110610bfb57610bfb6120e8565b905060200201358c8c87818110610c1457610c146120e8565b9050602002810190610c26919061215c565b8c8b604051610c3a96959493929190612079565b60405180910390a3610c4b816121b8565b9050610b97565b508315610c9457807f20fda5fd27a1ea7bf5b9567f143ac5470bb059374a27e8f67cb44f946f6d038785604051610c8b91815260200190565b60405180910390a25b5050505050505050505050565b60009182526065602090815260408084206001600160a01b0393909316845291905290205460ff1690565b3361100714610cf257604051630f22c43960e41b8152611007600482015260240161085f565b610d55604051806040016040528060088152602001676d696e44656c617960c01b81525085858080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092939250506115af9050565b15610e525760208114610d835783838383604051630a5a604160e01b815260040161085f94939291906121d1565b604080516020601f8401819004810282018101909252828152600091610dc49185858083850183828082843760009201919091525092939250506116089050565b9050801580610dd557506212750081115b15610dfb5784848484604051630a5a604160e01b815260040161085f94939291906121d1565b6040516364d6235360e01b81526004810182905230906364d6235390602401600060405180830381600087803b158015610e3457600080fd5b505af1158015610e48573d6000803e3d6000fd5b5050505050610e73565b838383836040516325ee20d560e21b815260040161085f94939291906121d1565b7ff1ce9b2cbf50eeb05769a29e2543fd350cab46894a7dd9978a12d534bb20e63384848484604051610ea894939291906121d1565b60405180910390a150505050565b60008888888888888888604051602001610ed7989796959493929190612289565b60405160208183030381529060405280519060200120905098975050505050505050565b600080516020612559833981519152610f138161115b565b610f1c82610876565b610f825760405162461bcd60e51b815260206004820152603160248201527f54696d656c6f636b436f6e74726f6c6c65723a206f7065726174696f6e2063616044820152701b9b9bdd0818994818d85b98d95b1b1959607a1b606482015260840161085f565b6000828152609760205260408082208290555183917fbaa1eb22f2a492ba1a5fea61b8df4d27c6c8b5f3971e63bb58fa14ff72eedb7091a25050565b600082815260656020526040902060010154610fd98161115b565b6107d5838361150f565b600080516020612539833981519152610ffd816000610ca1565b61100b5761100b8133611289565b87861461102a5760405162461bcd60e51b815260040161085f906120fe565b8784146110495760405162461bcd60e51b815260040161085f906120fe565b600061105b8a8a8a8a8a8a8a8a610eb6565b905061106781856112e2565b60005b898110156111455760008b8b83818110611086576110866120e8565b905060200201602081019061109b9190612141565b905060008a8a848181106110b1576110b16120e8565b9050602002013590503660008a8a868181106110cf576110cf6120e8565b90506020028101906110e1919061215c565b915091506110f18484848461137d565b84867fc2617efa69bab66782fa219543714338489c4e9e178271560a91b82c3f612b588686868660405161112894939291906120b6565b60405180910390a3505050508061113e906121b8565b905061106a565b5061114f81611450565b50505050505050505050565b610b1d8133611289565b61116e826107da565b156111d35760405162461bcd60e51b815260206004820152602f60248201527f54696d656c6f636b436f6e74726f6c6c65723a206f7065726174696f6e20616c60448201526e1c9958591e481cd8da19591d5b1959608a1b606482015260840161085f565b6098548110156112345760405162461bcd60e51b815260206004820152602660248201527f54696d656c6f636b436f6e74726f6c6c65723a20696e73756666696369656e746044820152652064656c617960d01b606482015260840161085f565b61123e814261232a565b6000928352609760205260409092209190915550565b60006001600160e01b03198216637965db0b60e01b14806106e157506301ffc9a760e01b6001600160e01b03198316146106e1565b6112938282610ca1565b610872576112a08161160d565b6112ab83602061161f565b6040516020016112bc929190612361565b60408051601f198184030181529082905262461bcd60e51b825261085f916004016123d6565b6112eb8261078a565b6113075760405162461bcd60e51b815260040161085f90612409565b80158061132257506000818152609760205260409020546001145b6108725760405162461bcd60e51b815260206004820152602660248201527f54696d656c6f636b436f6e74726f6c6c65723a206d697373696e6720646570656044820152656e64656e637960d01b606482015260840161085f565b6000846001600160a01b031684848460405161139a929190612453565b60006040518083038185875af1925050503d80600081146113d7576040519150601f19603f3d011682016040523d82523d6000602084013e6113dc565b606091505b50509050806114495760405162461bcd60e51b815260206004820152603360248201527f54696d656c6f636b436f6e74726f6c6c65723a20756e6465726c79696e6720746044820152721c985b9cd858dd1a5bdb881c995d995c9d1959606a1b606482015260840161085f565b5050505050565b6114598161078a565b6114755760405162461bcd60e51b815260040161085f90612409565b600090815260976020526040902060019055565b6114938282610ca1565b6108725760008281526065602090815260408083206001600160a01b03851684529091529020805460ff191660011790556114cb3390565b6001600160a01b0316816001600160a01b0316837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b6115198282610ca1565b156108725760008281526065602090815260408083206001600160a01b0385168085529252808320805460ff1916905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b600054610100900460ff1661159d5760405162461bcd60e51b815260040161085f90612463565b6115a9848484846117ba565b50505050565b6000816040516020016115c291906124ae565b60405160208183030381529060405280519060200120836040516020016115e991906124ae565b6040516020818303038152906040528051906020012014905092915050565b015190565b60606106e16001600160a01b03831660145b6060600061162e8360026124ca565b61163990600261232a565b6001600160401b0381111561165057611650611b74565b6040519080825280601f01601f19166020018201604052801561167a576020820181803683370190505b509050600360fc1b81600081518110611695576116956120e8565b60200101906001600160f81b031916908160001a905350600f60fb1b816001815181106116c4576116c46120e8565b60200101906001600160f81b031916908160001a90535060006116e88460026124ca565b6116f390600161232a565b90505b600181111561176b576f181899199a1a9b1b9c1cb0b131b232b360811b85600f1660108110611727576117276120e8565b1a60f81b82828151811061173d5761173d6120e8565b60200101906001600160f81b031916908160001a90535060049490941c93611764816124e1565b90506116f6565b5083156107a95760405162461bcd60e51b815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e74604482015260640161085f565b600054610100900460ff166117e15760405162461bcd60e51b815260040161085f90612463565b6117f96000805160206124f983398151915280611999565b61181f6000805160206125198339815191526000805160206124f9833981519152611999565b6118456000805160206125398339815191526000805160206124f9833981519152611999565b61186b6000805160206125598339815191526000805160206124f9833981519152611999565b6118836000805160206124f9833981519152306119e4565b6001600160a01b038116156118aa576118aa6000805160206124f9833981519152826119e4565b60005b835181101561191b576118e76000805160206125198339815191528583815181106118da576118da6120e8565b60200260200101516119e4565b61190b6000805160206125598339815191528583815181106118da576118da6120e8565b611914816121b8565b90506118ad565b5060005b825181101561195c5761194c6000805160206125398339815191528483815181106118da576118da6120e8565b611955816121b8565b905061191f565b5060988490556040805160008152602081018690527f11c24f4ead16507c69ac467fbd5e4eed5fb5c699626d2cc6d66421df253886d59101610ea8565b600082815260656020526040808220600101805490849055905190918391839186917fbd79b86ffe0ab8e8776151514217cd7cacd52c909f66475c3af44e129f0b00ff9190a4505050565b6108728282611489565b80356001600160a01b0381168114611a0557600080fd5b919050565b60008083601f840112611a1c57600080fd5b5081356001600160401b03811115611a3357600080fd5b602083019150836020828501011115611a4b57600080fd5b9250929050565b600080600080600080600060c0888a031215611a6d57600080fd5b611a76886119ee565b96506020880135955060408801356001600160401b03811115611a9857600080fd5b611aa48a828b01611a0a565b989b979a50986060810135976080820135975060a09091013595509350505050565b600060208284031215611ad857600080fd5b81356001600160e01b0319811681146107a957600080fd5b60008060008060008060a08789031215611b0957600080fd5b611b12876119ee565b95506020870135945060408701356001600160401b03811115611b3457600080fd5b611b4089828a01611a0a565b979a9699509760608101359660809091013595509350505050565b600060208284031215611b6d57600080fd5b5035919050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f191681016001600160401b0381118282101715611bb257611bb2611b74565b604052919050565b600082601f830112611bcb57600080fd5b81356001600160401b03811115611be457611be4611b74565b611bf7601f8201601f1916602001611b8a565b818152846020838601011115611c0c57600080fd5b816020850160208301376000918101602001919091529392505050565b60008060008060808587031215611c3f57600080fd5b611c48856119ee565b9350611c56602086016119ee565b92506040850135915060608501356001600160401b03811115611c7857600080fd5b611c8487828801611bba565b91505092959194509250565b60008060408385031215611ca357600080fd5b82359150611cb3602084016119ee565b90509250929050565b60008083601f840112611cce57600080fd5b5081356001600160401b03811115611ce557600080fd5b6020830191508360208260051b8501011115611a4b57600080fd5b600080600080600080600080600060c08a8c031215611d1e57600080fd5b89356001600160401b0380821115611d3557600080fd5b611d418d838e01611cbc565b909b50995060208c0135915080821115611d5a57600080fd5b611d668d838e01611cbc565b909950975060408c0135915080821115611d7f57600080fd5b50611d8c8c828d01611cbc565b9a9d999c50979a969997986060880135976080810135975060a0013595509350505050565b60008060008060408587031215611dc757600080fd5b84356001600160401b0380821115611dde57600080fd5b611dea88838901611a0a565b90965094506020870135915080821115611e0357600080fd5b50611e1087828801611a0a565b95989497509550505050565b60008060008060008060008060a0898b031215611e3857600080fd5b88356001600160401b0380821115611e4f57600080fd5b611e5b8c838d01611cbc565b909a50985060208b0135915080821115611e7457600080fd5b611e808c838d01611cbc565b909850965060408b0135915080821115611e9957600080fd5b50611ea68b828c01611cbc565b999c989b509699959896976060870135966080013595509350505050565b600082601f830112611ed557600080fd5b813560206001600160401b03821115611ef057611ef0611b74565b8160051b611eff828201611b8a565b9283528481018201928281019087851115611f1957600080fd5b83870192505b84831015611f3857823582529183019190830190611f1f565b979650505050505050565b600080600080600060a08688031215611f5b57600080fd5b611f64866119ee565b9450611f72602087016119ee565b935060408601356001600160401b0380821115611f8e57600080fd5b611f9a89838a01611ec4565b94506060880135915080821115611fb057600080fd5b611fbc89838a01611ec4565b93506080880135915080821115611fd257600080fd5b50611fdf88828901611bba565b9150509295509295909350565b600080600080600060a0868803121561200457600080fd5b61200d866119ee565b945061201b602087016119ee565b9350604086013592506060860135915060808601356001600160401b0381111561204457600080fd5b611fdf88828901611bba565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b60018060a01b038716815285602082015260a0604082015260006120a160a083018688612050565b60608301949094525060800152949350505050565b60018060a01b03851681528360208201526060604082015260006120de606083018486612050565b9695505050505050565b634e487b7160e01b600052603260045260246000fd5b60208082526023908201527f54696d656c6f636b436f6e74726f6c6c65723a206c656e677468206d69736d616040820152620e8c6d60eb1b606082015260800190565b60006020828403121561215357600080fd5b6107a9826119ee565b6000808335601e1984360301811261217357600080fd5b8301803591506001600160401b0382111561218d57600080fd5b602001915036819003821315611a4b57600080fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016121ca576121ca6121a2565b5060010190565b6040815260006121e5604083018688612050565b8281036020840152611f38818587612050565b81835260006020808501808196508560051b810191508460005b8781101561227c5782840389528135601e1988360301811261223357600080fd5b870185810190356001600160401b0381111561224e57600080fd5b80360382131561225d57600080fd5b612268868284612050565b9a87019a9550505090840190600101612212565b5091979650505050505050565b60a0808252810188905260008960c08301825b8b8110156122ca576001600160a01b036122b5846119ee565b1682526020928301929091019060010161229c565b5083810360208501528881526001600160fb1b038911156122ea57600080fd5b8860051b9150818a6020830137018281036020908101604085015261231290820187896121f8565b60608401959095525050608001529695505050505050565b808201808211156106e1576106e16121a2565b60005b83811015612358578181015183820152602001612340565b50506000910152565b7f416363657373436f6e74726f6c3a206163636f756e742000000000000000000081526000835161239981601785016020880161233d565b7001034b99036b4b9b9b4b733903937b6329607d1b60179184019182015283516123ca81602884016020880161233d565b01602801949350505050565b60208152600082518060208401526123f581604085016020870161233d565b601f01601f19169190910160400192915050565b6020808252602a908201527f54696d656c6f636b436f6e74726f6c6c65723a206f7065726174696f6e206973604082015269206e6f7420726561647960b01b606082015260800190565b8183823760009101908152919050565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b600082516124c081846020870161233d565b9190910192915050565b80820281158282048414176106e1576106e16121a2565b6000816124f0576124f06121a2565b50600019019056fe5f58e3a2316349923ce3780f8d587db2d72378aed66a8261c916544fa6846ca5b09aa5aeb3702cfd50b6b62bc4532604938f21248a27a1d5ca736082b6819cc1d8aa0f3194971a2a116679f7c2090f6939c8d4e01a2a8d7e41d55e5351469e63fd643c72710c63c0180259aba6b2d05451e3591a24e58b62239378085726f783a164736f6c6343000811000a |