@aztec/l1-artifacts 1.0.0-staging.2 → 1.0.0-staging.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/dest/ExtRollupLib2Bytecode.d.ts +1 -1
  2. package/dest/ExtRollupLib2Bytecode.js +1 -1
  3. package/dest/ExtRollupLibBytecode.d.ts +1 -1
  4. package/dest/ExtRollupLibBytecode.js +1 -1
  5. package/dest/FeeJuicePortalBytecode.d.ts +1 -1
  6. package/dest/FeeJuicePortalBytecode.js +1 -1
  7. package/dest/GSEBytecode.d.ts +1 -1
  8. package/dest/GSEBytecode.js +1 -1
  9. package/dest/GovernanceAbi.d.ts +46 -0
  10. package/dest/GovernanceAbi.d.ts.map +1 -1
  11. package/dest/GovernanceAbi.js +59 -0
  12. package/dest/GovernanceBytecode.d.ts +1 -1
  13. package/dest/GovernanceBytecode.d.ts.map +1 -1
  14. package/dest/GovernanceBytecode.js +1 -1
  15. package/dest/GovernanceProposerBytecode.d.ts +1 -1
  16. package/dest/GovernanceProposerBytecode.js +1 -1
  17. package/dest/InboxBytecode.d.ts +1 -1
  18. package/dest/InboxBytecode.js +1 -1
  19. package/dest/MultiAdderBytecode.d.ts +1 -1
  20. package/dest/MultiAdderBytecode.js +1 -1
  21. package/dest/NewGovernanceProposerPayloadBytecode.d.ts +1 -1
  22. package/dest/NewGovernanceProposerPayloadBytecode.js +1 -1
  23. package/dest/OutboxBytecode.d.ts +1 -1
  24. package/dest/OutboxBytecode.js +1 -1
  25. package/dest/RegisterNewRollupVersionPayloadBytecode.d.ts +1 -1
  26. package/dest/RegisterNewRollupVersionPayloadBytecode.js +1 -1
  27. package/dest/RollupBytecode.d.ts +1 -1
  28. package/dest/RollupBytecode.js +1 -1
  29. package/dest/SlashFactoryBytecode.d.ts +1 -1
  30. package/dest/SlashFactoryBytecode.js +1 -1
  31. package/dest/StakingAssetHandlerBytecode.d.ts +1 -1
  32. package/dest/StakingAssetHandlerBytecode.js +1 -1
  33. package/dest/TokenPortalBytecode.d.ts +1 -1
  34. package/dest/TokenPortalBytecode.js +1 -1
  35. package/dest/UniswapPortalBytecode.d.ts +1 -1
  36. package/dest/UniswapPortalBytecode.js +1 -1
  37. package/dest/ValidatorSelectionLibBytecode.d.ts +1 -1
  38. package/dest/ValidatorSelectionLibBytecode.js +1 -1
  39. package/dest/checksum.d.ts +1 -1
  40. package/dest/checksum.js +1 -1
  41. package/package.json +1 -1
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * FeeJuicePortal bytecode.
3
3
  */
4
- export declare const FeeJuicePortalBytecode = "0x610100604052348015610010575f5ffd5b506040516107f83803806107f883398101604081905261002f91610067565b6001600160a01b0393841660805290831660a052911660c05260e0526100b7565b6001600160a01b0381168114610064575f5ffd5b50565b5f5f5f5f6080858703121561007a575f5ffd5b845161008581610050565b602086015190945061009681610050565b60408601519093506100a781610050565b6060959095015193969295505050565b60805160a05160c05160e0516106ec61010c5f395f8181610168015261019901525f818161014101528181610218015261039601525f818161011a015261027a01525f818160db015261034b01526106ec5ff3fe608060405234801561000f575f5ffd5b506004361061007a575f3560e01c80639611c5c2116100585780639611c5c2146100d6578063b701069714610115578063c5d664c61461013c578063ffa1ad7414610163575f5ffd5b8063284b5dc61461007e5780632dc81c62146100ab57806348fef595146100c1575b5f5ffd5b61009161008c3660046105b2565b61018a565b604080519283526020830191909152015b60405180910390f35b6100b3600581565b6040519081526020016100a2565b6100d46100cf3660046105db565b610340565b005b6100fd7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016100a2565b6100fd7f000000000000000000000000000000000000000000000000000000000000000081565b6100fd7f000000000000000000000000000000000000000000000000000000000000000081565b6100b37f000000000000000000000000000000000000000000000000000000000000000081565b604080518082018252600581527f00000000000000000000000000000000000000000000000000000000000000006020820152905160248101859052604481018490525f91829182906102099060640160408051601f198184030181529190526020810180516001600160e01b0316630c7e892d60e31b179052610404565b90506102406001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001633308961049f565b604051631f6d510b60e01b8152825160048201526020830151602482015260448101829052606481018690525f9081906001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631f6d510b9060840160408051808303815f875af11580156102bf573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102e39190610610565b604080518b8152602081018b905290810183905260608101829052919350915089907fcb43dda0de11e57048e9d074ae7474446335afc906a0e5789d624fa5422629e39060800160405180910390a2909890975095505050505050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610389576040516333f1b48f60e11b815260040160405180910390fd5b6103bd6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016838361050c565b816001600160a01b03167f63be20cc905d5ba0cf65db405c4999f99f2575e521875f13a8009d6eed7a09d9826040516103f891815260200190565b60405180910390a25050565b6040805160018082528183019092525f91602082018180368337019050506002836040516104329190610649565b602060405180830381855afa15801561044d573d5f5f3e3d5ffd5b5050506040513d601f19601f82011682018060405250810190610470919061065b565b604051602001610481929190610672565b60405160208183030381529060405261049990610690565b92915050565b6040516001600160a01b0384811660248301528381166044830152606482018390526105069186918216906323b872dd906084015b604051602081830303815290604052915060e01b6020820180516001600160e01b038381831617835250505050610542565b50505050565b6040516001600160a01b0383811660248301526044820183905261053d91859182169063a9059cbb906064016104d4565b505050565b5f5f60205f8451602086015f885af180610561576040513d5f823e3d81fd5b50505f513d91508115610578578060011415610585565b6001600160a01b0384163b155b1561050657604051635274afe760e01b81526001600160a01b038516600482015260240160405180910390fd5b5f5f5f606084860312156105c4575f5ffd5b505081359360208301359350604090920135919050565b5f5f604083850312156105ec575f5ffd5b82356001600160a01b0381168114610602575f5ffd5b946020939093013593505050565b5f5f60408385031215610621575f5ffd5b505080516020909101519092909150565b5f81518060208401855e5f93019283525090919050565b5f6106548284610632565b9392505050565b5f6020828403121561066b575f5ffd5b5051919050565b5f61067d8285610632565b60ff199390931683525050601f01919050565b805160208083015191908110156106b0575f198160200360031b1b821691505b5091905056fea26469706673582212208f6eb60d5dd60b7585cc3a65e337ae1127680adeb967595bc6e6123058ec9d3364736f6c634300081b0033";
4
+ export declare const FeeJuicePortalBytecode = "0x610100604052348015610010575f5ffd5b506040516107f83803806107f883398101604081905261002f91610067565b6001600160a01b0393841660805290831660a052911660c05260e0526100b7565b6001600160a01b0381168114610064575f5ffd5b50565b5f5f5f5f6080858703121561007a575f5ffd5b845161008581610050565b602086015190945061009681610050565b60408601519093506100a781610050565b6060959095015193969295505050565b60805160a05160c05160e0516106ec61010c5f395f8181610168015261019901525f818161014101528181610218015261039601525f818161011a015261027a01525f818160db015261034b01526106ec5ff3fe608060405234801561000f575f5ffd5b506004361061007a575f3560e01c80639611c5c2116100585780639611c5c2146100d6578063b701069714610115578063c5d664c61461013c578063ffa1ad7414610163575f5ffd5b8063284b5dc61461007e5780632dc81c62146100ab57806348fef595146100c1575b5f5ffd5b61009161008c3660046105b2565b61018a565b604080519283526020830191909152015b60405180910390f35b6100b3600581565b6040519081526020016100a2565b6100d46100cf3660046105db565b610340565b005b6100fd7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016100a2565b6100fd7f000000000000000000000000000000000000000000000000000000000000000081565b6100fd7f000000000000000000000000000000000000000000000000000000000000000081565b6100b37f000000000000000000000000000000000000000000000000000000000000000081565b604080518082018252600581527f00000000000000000000000000000000000000000000000000000000000000006020820152905160248101859052604481018490525f91829182906102099060640160408051601f198184030181529190526020810180516001600160e01b0316630c7e892d60e31b179052610404565b90506102406001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001633308961049f565b604051631f6d510b60e01b8152825160048201526020830151602482015260448101829052606481018690525f9081906001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631f6d510b9060840160408051808303815f875af11580156102bf573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102e39190610610565b604080518b8152602081018b905290810183905260608101829052919350915089907fcb43dda0de11e57048e9d074ae7474446335afc906a0e5789d624fa5422629e39060800160405180910390a2909890975095505050505050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610389576040516333f1b48f60e11b815260040160405180910390fd5b6103bd6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016838361050c565b816001600160a01b03167f63be20cc905d5ba0cf65db405c4999f99f2575e521875f13a8009d6eed7a09d9826040516103f891815260200190565b60405180910390a25050565b6040805160018082528183019092525f91602082018180368337019050506002836040516104329190610649565b602060405180830381855afa15801561044d573d5f5f3e3d5ffd5b5050506040513d601f19601f82011682018060405250810190610470919061065b565b604051602001610481929190610672565b60405160208183030381529060405261049990610690565b92915050565b6040516001600160a01b0384811660248301528381166044830152606482018390526105069186918216906323b872dd906084015b604051602081830303815290604052915060e01b6020820180516001600160e01b038381831617835250505050610542565b50505050565b6040516001600160a01b0383811660248301526044820183905261053d91859182169063a9059cbb906064016104d4565b505050565b5f5f60205f8451602086015f885af180610561576040513d5f823e3d81fd5b50505f513d91508115610578578060011415610585565b6001600160a01b0384163b155b1561050657604051635274afe760e01b81526001600160a01b038516600482015260240160405180910390fd5b5f5f5f606084860312156105c4575f5ffd5b505081359360208301359350604090920135919050565b5f5f604083850312156105ec575f5ffd5b82356001600160a01b0381168114610602575f5ffd5b946020939093013593505050565b5f5f60408385031215610621575f5ffd5b505080516020909101519092909150565b5f81518060208401855e5f93019283525090919050565b5f6106548284610632565b9392505050565b5f6020828403121561066b575f5ffd5b5051919050565b5f61067d8285610632565b60ff199390931683525050601f01919050565b805160208083015191908110156106b0575f198160200360031b1b821691505b5091905056fea26469706673582212208bdc3f288a74992488d911c2c90f3a80ad1024adb6c849d8ca4717912caf132364736f6c634300081b0033";
5
5
  /**
6
6
  * FeeJuicePortal link references.
7
7
  */
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * FeeJuicePortal bytecode.
3
- */ export const FeeJuicePortalBytecode = "0x610100604052348015610010575f5ffd5b506040516107f83803806107f883398101604081905261002f91610067565b6001600160a01b0393841660805290831660a052911660c05260e0526100b7565b6001600160a01b0381168114610064575f5ffd5b50565b5f5f5f5f6080858703121561007a575f5ffd5b845161008581610050565b602086015190945061009681610050565b60408601519093506100a781610050565b6060959095015193969295505050565b60805160a05160c05160e0516106ec61010c5f395f8181610168015261019901525f818161014101528181610218015261039601525f818161011a015261027a01525f818160db015261034b01526106ec5ff3fe608060405234801561000f575f5ffd5b506004361061007a575f3560e01c80639611c5c2116100585780639611c5c2146100d6578063b701069714610115578063c5d664c61461013c578063ffa1ad7414610163575f5ffd5b8063284b5dc61461007e5780632dc81c62146100ab57806348fef595146100c1575b5f5ffd5b61009161008c3660046105b2565b61018a565b604080519283526020830191909152015b60405180910390f35b6100b3600581565b6040519081526020016100a2565b6100d46100cf3660046105db565b610340565b005b6100fd7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016100a2565b6100fd7f000000000000000000000000000000000000000000000000000000000000000081565b6100fd7f000000000000000000000000000000000000000000000000000000000000000081565b6100b37f000000000000000000000000000000000000000000000000000000000000000081565b604080518082018252600581527f00000000000000000000000000000000000000000000000000000000000000006020820152905160248101859052604481018490525f91829182906102099060640160408051601f198184030181529190526020810180516001600160e01b0316630c7e892d60e31b179052610404565b90506102406001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001633308961049f565b604051631f6d510b60e01b8152825160048201526020830151602482015260448101829052606481018690525f9081906001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631f6d510b9060840160408051808303815f875af11580156102bf573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102e39190610610565b604080518b8152602081018b905290810183905260608101829052919350915089907fcb43dda0de11e57048e9d074ae7474446335afc906a0e5789d624fa5422629e39060800160405180910390a2909890975095505050505050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610389576040516333f1b48f60e11b815260040160405180910390fd5b6103bd6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016838361050c565b816001600160a01b03167f63be20cc905d5ba0cf65db405c4999f99f2575e521875f13a8009d6eed7a09d9826040516103f891815260200190565b60405180910390a25050565b6040805160018082528183019092525f91602082018180368337019050506002836040516104329190610649565b602060405180830381855afa15801561044d573d5f5f3e3d5ffd5b5050506040513d601f19601f82011682018060405250810190610470919061065b565b604051602001610481929190610672565b60405160208183030381529060405261049990610690565b92915050565b6040516001600160a01b0384811660248301528381166044830152606482018390526105069186918216906323b872dd906084015b604051602081830303815290604052915060e01b6020820180516001600160e01b038381831617835250505050610542565b50505050565b6040516001600160a01b0383811660248301526044820183905261053d91859182169063a9059cbb906064016104d4565b505050565b5f5f60205f8451602086015f885af180610561576040513d5f823e3d81fd5b50505f513d91508115610578578060011415610585565b6001600160a01b0384163b155b1561050657604051635274afe760e01b81526001600160a01b038516600482015260240160405180910390fd5b5f5f5f606084860312156105c4575f5ffd5b505081359360208301359350604090920135919050565b5f5f604083850312156105ec575f5ffd5b82356001600160a01b0381168114610602575f5ffd5b946020939093013593505050565b5f5f60408385031215610621575f5ffd5b505080516020909101519092909150565b5f81518060208401855e5f93019283525090919050565b5f6106548284610632565b9392505050565b5f6020828403121561066b575f5ffd5b5051919050565b5f61067d8285610632565b60ff199390931683525050601f01919050565b805160208083015191908110156106b0575f198160200360031b1b821691505b5091905056fea26469706673582212208f6eb60d5dd60b7585cc3a65e337ae1127680adeb967595bc6e6123058ec9d3364736f6c634300081b0033";
3
+ */ export const FeeJuicePortalBytecode = "0x610100604052348015610010575f5ffd5b506040516107f83803806107f883398101604081905261002f91610067565b6001600160a01b0393841660805290831660a052911660c05260e0526100b7565b6001600160a01b0381168114610064575f5ffd5b50565b5f5f5f5f6080858703121561007a575f5ffd5b845161008581610050565b602086015190945061009681610050565b60408601519093506100a781610050565b6060959095015193969295505050565b60805160a05160c05160e0516106ec61010c5f395f8181610168015261019901525f818161014101528181610218015261039601525f818161011a015261027a01525f818160db015261034b01526106ec5ff3fe608060405234801561000f575f5ffd5b506004361061007a575f3560e01c80639611c5c2116100585780639611c5c2146100d6578063b701069714610115578063c5d664c61461013c578063ffa1ad7414610163575f5ffd5b8063284b5dc61461007e5780632dc81c62146100ab57806348fef595146100c1575b5f5ffd5b61009161008c3660046105b2565b61018a565b604080519283526020830191909152015b60405180910390f35b6100b3600581565b6040519081526020016100a2565b6100d46100cf3660046105db565b610340565b005b6100fd7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016100a2565b6100fd7f000000000000000000000000000000000000000000000000000000000000000081565b6100fd7f000000000000000000000000000000000000000000000000000000000000000081565b6100b37f000000000000000000000000000000000000000000000000000000000000000081565b604080518082018252600581527f00000000000000000000000000000000000000000000000000000000000000006020820152905160248101859052604481018490525f91829182906102099060640160408051601f198184030181529190526020810180516001600160e01b0316630c7e892d60e31b179052610404565b90506102406001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001633308961049f565b604051631f6d510b60e01b8152825160048201526020830151602482015260448101829052606481018690525f9081906001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001690631f6d510b9060840160408051808303815f875af11580156102bf573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102e39190610610565b604080518b8152602081018b905290810183905260608101829052919350915089907fcb43dda0de11e57048e9d074ae7474446335afc906a0e5789d624fa5422629e39060800160405180910390a2909890975095505050505050565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610389576040516333f1b48f60e11b815260040160405180910390fd5b6103bd6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016838361050c565b816001600160a01b03167f63be20cc905d5ba0cf65db405c4999f99f2575e521875f13a8009d6eed7a09d9826040516103f891815260200190565b60405180910390a25050565b6040805160018082528183019092525f91602082018180368337019050506002836040516104329190610649565b602060405180830381855afa15801561044d573d5f5f3e3d5ffd5b5050506040513d601f19601f82011682018060405250810190610470919061065b565b604051602001610481929190610672565b60405160208183030381529060405261049990610690565b92915050565b6040516001600160a01b0384811660248301528381166044830152606482018390526105069186918216906323b872dd906084015b604051602081830303815290604052915060e01b6020820180516001600160e01b038381831617835250505050610542565b50505050565b6040516001600160a01b0383811660248301526044820183905261053d91859182169063a9059cbb906064016104d4565b505050565b5f5f60205f8451602086015f885af180610561576040513d5f823e3d81fd5b50505f513d91508115610578578060011415610585565b6001600160a01b0384163b155b1561050657604051635274afe760e01b81526001600160a01b038516600482015260240160405180910390fd5b5f5f5f606084860312156105c4575f5ffd5b505081359360208301359350604090920135919050565b5f5f604083850312156105ec575f5ffd5b82356001600160a01b0381168114610602575f5ffd5b946020939093013593505050565b5f5f60408385031215610621575f5ffd5b505080516020909101519092909150565b5f81518060208401855e5f93019283525090919050565b5f6106548284610632565b9392505050565b5f6020828403121561066b575f5ffd5b5051919050565b5f61067d8285610632565b60ff199390931683525050601f01919050565b805160208083015191908110156106b0575f198160200360031b1b821691505b5091905056fea26469706673582212208bdc3f288a74992488d911c2c90f3a80ad1024adb6c849d8ca4717912caf132364736f6c634300081b0033";
4
4
  /**
5
5
  * FeeJuicePortal link references.
6
6
  */ export const FeeJuicePortalLinkReferences = {};
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * GSE bytecode.
3
3
  */
4
- export declare const GSEBytecode = "0x60a060405234801561000f575f5ffd5b50604051612fdf380380612fdf83398101604081905261002e9161012a565b8181816001600160a01b03811661005e57604051631e4fbdf760e01b81525f600482015260240160405180910390fd5b610067816100c4565b506001600160a01b03166080525050732285ab0d1c133e619e2dc03d1ea98ae1741b1eb15f525060026020527f1ad22eb9644e69e66c5fa94a76fa877ebc3727e1093713f063f2b1e989b3acbb805460ff19166001179055610162565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b0381168114610127575f5ffd5b50565b5f5f6040838503121561013b575f5ffd5b825161014681610113565b602084015190925061015781610113565b809150509250929050565b608051612e496101965f395f818161024b015281816107d70152818161088e01528181610b1b0152610bb40152612e495ff3fe608060405234801561000f575f5ffd5b5060043610610212575f3560e01c8063a9cd26c91161011f578063e5af7293116100a9578063f2fde38b11610079578063f2fde38b146104d4578063f3a19620146104e7578063f3fef3a3146104ef578063f4603fe11461051d578063f7888aec1461055a575f5ffd5b8063e5af72931461048b578063eaeded5f1461049e578063ec6925a7146104b1578063ec6e69db146104c1575f5ffd5b8063bb4d4436116100ef578063bb4d443614610414578063bbdcbed614610427578063bd76784b14610452578063c5ef6efb14610465578063d3da927f14610478575f5ffd5b8063a9cd26c9146103c7578063ab033ea9146103da578063ad47e666146103ed578063b0c3742214610401575f5ffd5b806352f44a14116101a0578063671431c311610170578063671431c3146103695780636a18ff7a1461037c578063715018a61461038f5780638da5cb5b146103975780639796d977146103a7575f5ffd5b806352f44a14146102f25780635338c7581461033057806359264f001461034357806362400e4c14610356575f5ffd5b806318160ddd116101e657806318160ddd146102a0578063289b3c0d146102a85780632e341ce0146102b957806330eb4bdd146102cc57806333f3d8ff146102df575f5ffd5b806215eaaa1461021657806303c230e3146102465780630808ee6e1461026d57806308dbbb0314610282575b5f5ffd5b6102296102243660046127b8565b61056d565b6040516001600160a01b0390911681526020015b60405180910390f35b6102297f000000000000000000000000000000000000000000000000000000000000000081565b61028061027b3660046127fc565b610583565b005b6102926802b5e3af16b188000081565b60405190815260200161023d565b6102926109aa565b6006546001600160a01b0316610229565b6102806102c7366004612844565b6109ba565b6102926102da3660046127b8565b610a79565b6102806102ed366004612881565b610cf4565b610320610300366004612898565b6001600160a01b03165f9081526002602052604090206004015460ff1690565b604051901515815260200161023d565b61029261033e3660046127b8565b610dd3565b610280610351366004612898565b610e2e565b610292610364366004612898565b610efd565b6102926103773660046128b3565b610f09565b61028061038a3660046128dd565b610f31565b610280610f3d565b5f546001600160a01b0316610229565b6103ba6103b536600461299a565b610f50565b60405161023d9190612a63565b6102296103d5366004612aae565b610f5d565b6102806103e8366004612898565b610fce565b6102295f516020612df45f395f51905f5281565b5f516020612df45f395f51905f52610229565b610292610422366004612898565b611021565b61043a6104353660046127b8565b61102d565b60405190516001600160a01b0316815260200161023d565b6103ba6104603660046128b3565b61109d565b610229610473366004612881565b61112e565b6103206104863660046127b8565b611154565b6102806104993660046128dd565b611175565b6102926104ac3660046128b3565b6111da565b61029268056bc75e2d6310000081565b6102926104cf3660046128b3565b6111e7565b6102806104e2366004612898565b61127f565b6102296112bc565b6105026104fd3660046128b3565b6112ca565b6040805193845291151560208401529082015260600161023d565b61053061052b3660046127b8565b61156a565b604080516001600160a01b039485168152921515602084015292169181019190915260600161023d565b6102926105683660046127b8565b6115bd565b5f61057a600384846115ca565b90505b92915050565b335f8181526002602052604090206004015460ff166105c6576040516319aaa75960e11b81526001600160a01b0390911660048201526024015b60405180910390fd5b50335f816105d26112bc565b6001600160a01b03161490508215806105e85750805b829061061357604051630cdce6bd60e11b81526001600160a01b0390911660048201526024016105bd565b5061061e8286611154565b158286909161065357604051630d75cd7760e11b81526001600160a01b039283166004820152911660248201526044016105bd565b505080158061067657506106745f516020612df45f395f51905f5286611154565b155b5f516020612df45f395f51905f529086906106b757604051630d75cd7760e11b81526001600160a01b039283166004820152911660248201526044016105bd565b505082156106d0575f516020612df45f395f51905f5291505b6001600160a01b0382165f9081526002602052604090206106f190866115f7565b8286909161072557604051630d75cd7760e11b81526001600160a01b039283166004820152911660248201526044016105bd565b505060408051602080820183526001600160a01b0387811683528581165f908152600283528481208a831682526003908101909352938420925183546001600160a01b03191691161790915561077c9084886115ca565b6001600160a01b03160361079757610797600383878161170a565b6107ad6003838768056bc75e2d631000006117cd565b6040516323b872dd60e01b815233600482015230602482015268056bc75e2d6310000060448201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906323b872dd906064016020604051808303815f875af1158015610825573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108499190612ae0565b505f61085d6006546001600160a01b031690565b60405163095ea7b360e01b81526001600160a01b03808316600483015268056bc75e2d6310000060248301529192507f00000000000000000000000000000000000000000000000000000000000000009091169063095ea7b3906044016020604051808303815f875af11580156108d6573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108fa9190612ae0565b506040516311f9fbc960e21b815230600482015268056bc75e2d6310000060248201526001600160a01b038216906347e7ef24906044015f604051808303815f87803b158015610948575f5ffd5b505af115801561095a573d5f5f3e3d5ffd5b50506040516001600160a01b038881168252808a169350861691507f7986a8ff398d9a6be88df9dfc6e3c9a83e4da5544241aad420d1cf7c214e43459060200160405180910390a3505050505050565b5f6109b5600361185c565b905090565b6001600160a01b0383165f9081526002602052604090206004015460ff168390610a03576040516330d32d8760e21b81526001600160a01b0390911660048201526024016105bd565b506001600160a01b038084165f9081526002602090815260408083208685168452600301909152902054168033808214610a6357604051630257d8d760e41b81526001600160a01b039283166004820152911660248201526044016105bd565b50610a739050600385858561170a565b50505050565b5f5f610a8d6006546001600160a01b031690565b90505f816001600160a01b0316636bd50cef6040518163ffffffff1660e01b815260040161012060405180830381865afa158015610acd573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610af19190612b9f565b51602001516040516323b872dd60e01b8152336004820152306024820152604481018290529091507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906323b872dd906064016020604051808303815f875af1158015610b69573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b8d9190612ae0565b5060405163095ea7b360e01b81526001600160a01b038381166004830152602482018390527f0000000000000000000000000000000000000000000000000000000000000000169063095ea7b3906044016020604051808303815f875af1158015610bfa573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c1e9190612ae0565b506040516311f9fbc960e21b8152306004820152602481018290526001600160a01b038316906347e7ef24906044015f604051808303815f87803b158015610c64575f5ffd5b505af1158015610c76573d5f5f3e3d5ffd5b50506040516330eb4bdd60e01b81526001600160a01b0388811660048301528781166024830152851692506330eb4bdd91506044016020604051808303815f875af1158015610cc7573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ceb9190612bba565b95945050505050565b5f610d076006546001600160a01b031690565b604051634527d8b560e11b8152600481018490529091506001600160a01b03821690638a4fb16a90602401608060405180830381865afa158015610d4d573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d719190612be1565b60600151610dcf5760405163f752f8b560e01b8152600481018390526001600160a01b0382169063f752f8b5906024015f604051808303815f87803b158015610db8575f5ffd5b505af1158015610dca573d5f5f3e3d5ffd5b505050505b5050565b5f80610de160038585611869565b9050836001600160a01b0316610df56112bc565b6001600160a01b03160361057a57610e1c60035f516020612df45f395f51905f5285611869565b610e269082612c68565b949350505050565b610e36611890565b806001600160a01b038116610e6a576040516327bac29760e21b81526001600160a01b0390911660048201526024016105bd565b506001600160a01b0381165f90815260026020526040902060040154819060ff1615610eb45760405162cea8b160e11b81526001600160a01b0390911660048201526024016105bd565b506001600160a01b0381165f908152600260205260409020600401805460ff19166001179055610ef8610ee6426118bc565b6001906001600160a01b0384166118f0565b505050565b5f61057d60038361190a565b6001600160a01b0382165f90815260046020908152604080832084845290915281205461057a565b610ef83384848461192d565b610f45611890565b610f4e5f6119cc565b565b6060610e26848385611a1b565b6040805160018082528183019092525f918291906020808301908036833701905050905083815f81518110610f9457610f94612c7b565b602002602001018181525050610fab858285611a1b565b5f81518110610fbc57610fbc612c7b565b60200260200101519150509392505050565b610fd6611890565b6006546001600160a01b031615610fff576040516296bb9f60e21b815260040160405180910390fd5b600680546001600160a01b0319166001600160a01b0392909216919091179055565b5f61057d600383611c0a565b60408051602081019091525f81525f5f6110478585611c2e565b50915091508061106857505060408051602081019091525f8152905061057d565b506001600160a01b038084165f9081526003909201602090815260409283902083519182019093529154168152905092915050565b60605f6110aa84846111e7565b90505f8167ffffffffffffffff8111156110c6576110c6612908565b6040519080825280602002602001820160405280156110ef578160200160208202803683370190505b5090505f5b82811015611122578082828151811061110f5761110f612c7b565b60209081029190910101526001016110f4565b50610ceb858286611a1b565b5f61057d61114661113e846118bc565b600190611d08565b6001600160e01b0316611d5e565b6001600160a01b0382165f90815260026020526040812061057a9083611d91565b5f61117f84611db2565b905061118a8161112e565b33906001600160a01b031681146111c057604051630cdce6bd60e11b81526001600160a01b0390911660048201526024016105bd565b50610a735f516020612df45f395f51905f5285858561192d565b5f61057a60038484611e3a565b6001600160a01b0382165f90815260026020526040812081611208846118bc565b90505f6112158383611e5f565b9050856001600160a01b031661122a8661112e565b6001600160a01b031603610ceb57732285ab0d1c133e619e2dc03d1ea98ae1741b1eb15f52600260205261126b5f516020612dd45f395f51905f5283611e5f565b6112759082612c68565b9695505050505050565b611287611890565b6001600160a01b0381166112b057604051631e4fbdf760e01b81525f60048201526024016105bd565b6112b9816119cc565b50565b5f6109b56111466001611e7a565b335f908152600260205260408120600401548190819060ff16339061130e576040516319aaa75960e11b81526001600160a01b0390911660048201526024016105bd565b50335f818152600260205260408120906113288289611d91565b9050801580156113505750826001600160a01b03166113456112bc565b6001600160a01b0316145b801561138a5750732285ab0d1c133e619e2dc03d1ea98ae1741b1eb15f52600260205261138a5f516020612dd45f395f51905f5289611d91565b156113cd575050732285ab0d1c133e619e2dc03d1ea98ae1741b1eb15f525060026020525f516020612df45f395f51905f525f516020612dd45f395f51905f5260015b87816113f85760405163417f3a0560e01b81526001600160a01b0390911660048201526024016105bd565b505f6114066003858b611869565b90508088808210156114345760405163047c4d8960e51b8152600481019290925260248201526044016105bd565b508890505f6802b5e3af16b188000061144d8385612c8f565b10905080156114c457611460858c611eb3565b8b9061148b576040516304ca9e7360e31b81526001600160a01b0390911660048201526024016105bd565b506001600160a01b038b165f90815260038087016020526040822080546001600160a01b03191690558493506114c49188908e9061170a565b6114d16003878d85611f14565b5f6114e46006546001600160a01b031690565b60405163625f849b60e11b8152336004820152602481018590526001600160a01b03919091169063c4bf0936906044016020604051808303815f875af1158015611530573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115549190612bba565b92995090975090955050505050505b9250925092565b5f5f5f5f6115788686611c2e565b9094509250905082611593575f5f5f93509350935050611563565b6001600160a01b039485165f90815260039190910160205260409020549093169460019450915050565b5f61057a60038484611869565b6001600160a01b039182165f90815260209384526040808220928416825291909352909120600101541690565b6001600160a01b0381165f90815260028301602052604081205460ff161561162057505f61057d565b5f61162a84611e7a565b604080518082018252600181526001600160e01b0383811660208084019182526001600160a01b0389165f90815260028b019091529384209251835491516001600160e81b0319909216901515610100600160e81b03191617610100919092160217905590915061169a426118bc565b90506116d2816116b2866001600160a01b0316611f9b565b6001600160e01b0385165f908152600189016020526040902091906118f0565b506116fd9050816116f56116e7856001612ca2565b6001600160e01b0316611f9b565b8791906118f0565b5060019695505050505050565b5f6117168585856115ca565b9050816001600160a01b0316816001600160a01b0316036117375750610a73565b6001600160a01b038481165f908152602087815260408083208785168085529083529281902060010180546001600160a01b031916878616908117909155815194861685529184019190915290917f3134e8a2e6d97e929a7e54011ea5485d7d196dd5f0ba4d4ef95803e8e3fc257f910160405180910390a26117c68582846117c1898989611869565b611fce565b5050505050565b8015610a73576001600160a01b038084165f9081526020868152604080832093861683529083905281208054849290611807908490612c68565b90915550506001600160a01b038084165f90815260208390526040812060010154611836928892911685611fce565b6118436001820183612107565b5061185390506002860183612107565b50505050505050565b5f61057d82600201612181565b6001600160a01b039182165f90815260209384526040808220929093168152925290205490565b5f546001600160a01b03163314610f4e5760405163118cdaa760e01b81523360048201526024016105bd565b5f63ffffffff8211156118ec576040516306dfcc6560e41b815260206004820152602481018390526044016105bd565b5090565b5f806118fd85858561219a565b915091505b935093915050565b6001600160a01b0381165f90815260208390526040812061057a90600101612181565b5f61193784611db2565b90506119476003868684876122e2565b6006546001600160a01b031660405163350c7fbd60e11b8152600481018690526024810185905283151560448201526001600160a01b039190911690636a18ff7a906064016020604051808303815f875af11580156119a8573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610dca9190612ae0565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60605f835167ffffffffffffffff811115611a3857611a38612908565b604051908082528060200260200182016040528015611a61578160200160208202803683370190505b506001600160a01b0386165f818152600260205260408120732285ab0d1c133e619e2dc03d1ea98ae1741b1eb182529293505f516020612dd45f395f51905f5291611aab8761112e565b6001600160a01b03161490505f611ac1876118bc565b90505f611ace8583611e5f565b90505f83611adc575f611ae6565b611ae68584611e5f565b90505f611af38284612c68565b90505f5b8b51811015611bf9575f8c8281518110611b1357611b13612c7b565b6020026020010151905082811081849091611b4a57604051635d4bf88360e01b8152600481019290925260248201526044016105bd565b505084811015611b9657611b5f8982886123ad565b8a8381518110611b7157611b71612c7b565b60200260200101906001600160a01b031690816001600160a01b031681525050611bf0565b8615611bb157611b5f611ba98683612c8f565b8990886123ad565b604051633d6a4a3b60e21b815260206004820152601360248201527229a427aaa622102722ab22a9102420a82822a760691b60448201526064016105bd565b50600101611af7565b50969b9a5050505050505050505050565b6001600160a01b0381165f90815260018084016020526040822061057a9101612181565b6001600160a01b0382165f9081526002602052604081208190819081611c548287611d91565b90508681158015611c7d5750876001600160a01b0316611c726112bc565b6001600160a01b0316145b8015611cb75750732285ab0d1c133e619e2dc03d1ea98ae1741b1eb15f526002602052611cb75f516020612dd45f395f51905f5288611d91565b15611cfa575050732285ab0d1c133e619e2dc03d1ea98ae1741b1eb15f525060026020525f516020612dd45f395f51905f5260015f516020612df45f395f51905f525b919450925090509250925092565b81545f9081611d1985858385612415565b90508015611d5457611d3d85611d30600184612c8f565b5f91825260209091200190565b5464010000000090046001600160e01b0316610ceb565b505f949350505050565b5f6001600160a01b038211156118ec576040516306dfcc6560e41b815260a06004820152602481018390526044016105bd565b6001600160a01b03165f908152600291909101602052604090205460ff1690565b5f61057d611dc86006546001600160a01b031690565b6001600160a01b031663c7f758a8846040518263ffffffff1660e01b8152600401611df591815260200190565b6101e060405180830381865afa158015611e11573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611e359190612cf0565b612470565b6001600160a01b0382165f908152600180850160205260408220610e26910183612486565b5f611e6a8383611d08565b6001600160e01b03169392505050565b80545f908015611eaa57611e9383611d30600184612c8f565b5464010000000090046001600160e01b0316611eac565b5f5b9392505050565b6001600160a01b0381165f908152600283016020908152604080832081518083019092525460ff811615158083526101009091046001600160e01b03169282019290925290611f05575f91505061057d565b610e26848260200151856124c0565b8015610a73576001600160a01b038084165f9081526020868152604080832093861683529083905281208054849290611f4e908490612c8f565b90915550506001600160a01b038084165f90815260208390526040812060010154611f7e92889291169085611fce565b611f8b60018201836126d2565b50611853905060028601836126d2565b5f6001600160e01b038211156118ec576040516306dfcc6560e41b815260e06004820152602481018390526044016105bd565b816001600160a01b0316836001600160a01b03161480611fec575080155b610a73576001600160a01b03831615612079576001600160a01b0383165f90815260018086016020526040822082916120269101846126d2565b91509150846001600160a01b03167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a724838360405161206e929190918252602082015260400190565b60405180910390a250505b6001600160a01b03821615610a73576001600160a01b0382165f90815260018086016020526040822082916120af910184612107565b91509150836001600160a01b03167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a72483836040516120f7929190918252602082015260400190565b60405180910390a2505050505050565b5f808061211385611e7a565b9050835f0361212f576001600160e01b0316915081905061217a565b5f61213985611f9b565b9050612159612147426118bc565b6121518385612ca2565b8891906118f0565b508290506121678282612ca2565b6001600160e01b03918216955016925050505b9250929050565b5f61218b82611e7a565b6001600160e01b031692915050565b82545f9081908015612289575f6121b687611d30600185612c8f565b805490915063ffffffff8082169164010000000090046001600160e01b03169088168211156121f857604051632520601d60e01b815260040160405180910390fd5b8763ffffffff168263ffffffff160361222c57825463ffffffff166401000000006001600160e01b0389160217835561227b565b6040805180820190915263ffffffff808a1682526001600160e01b03808a1660208085019182528d54600181018f555f8f81529190912094519151909216640100000000029216919091179101555b945085935061190292505050565b50506040805180820190915263ffffffff80851682526001600160e01b0380851660208085019182528854600181018a555f8a815291822095519251909316640100000000029190931617920191909155905081611902565b5f6122ee868685611e3a565b6001600160a01b0386165f90815260018801602090815260408083208884529091529020549091506123208382612c68565b821015868361232f8685612c68565b9091926123685760405163dd99c2ab60e01b81526001600160a01b039093166004840152602483019190915260448201526064016105bd565b5050506001600160a01b0386165f90815260018801602090815260408083208884529091528120805485929061239f908490612c68565b909155505050505050505050565b5f5f6123b98584611e5f565b905083818082106123e657604051636bc4db8d60e11b8152600481019290925260248201526044016105bd565b50505f84815260018601602052604081206124019085611d08565b9050611275816001600160e01b0316611d5e565b5f5b81831015612468575f61242a848461277f565b5f8781526020902090915063ffffffff86169082015463ffffffff16111561245457809250612462565b61245f816001612c68565b93505b50612417565b509392505050565b5f61057d8260800151835f015160200151612799565b5f61249082421190565b6124ad5760405163e34cb3b360e01b815260040160405180910390fd5b611e6a6124b9836118bc565b8490611d08565b5f806124cb85611e7a565b9050806001600160e01b0316846001600160e01b03161061251257604051636bc4db8d60e11b81526001600160e01b038086166004830152821660248201526044016105bd565b5f61251e600183612d95565b90505f612548611146886001015f856001600160e01b031681526020019081526020015f20611e7a565b90505f612554426118bc565b6040805180820182525f80825260208083018281526001600160a01b038c16835260028e019091529290209051815492516001600160e81b0319909316901515610100600160e81b031916176101006001600160e01b0393841602179055909150878116908416036125eb576001600160e01b0387165f90815260018901602052604081206125e49183906118f0565b50506126a4565b6040518060400160405280600115158152602001612611896001600160e01b0316611f9b565b6001600160e01b039081169091526001600160a01b0384165f81815260028c016020908152604090912084518154959092015190931661010002610100600160e81b0319911515919091166001600160e81b0319909416939093179290921790556126a190829061268190611f9b565b6001600160e01b038a165f90815260018c016020526040902091906118f0565b50505b6126c2816126ba856001600160e01b0316611f9b565b8a91906118f0565b5060019998505050505050505050565b5f80806126de85611e7a565b9050835f036126fa576001600160e01b0316915081905061217a565b5f61270485611f9b565b90503382826001600160e01b03808216908316101561275857604051631186c4ab60e31b81526001600160a01b0390931660048401526001600160e01b0391821660248401521660448201526064016105bd565b505050612771612767426118bc565b6121518385612d95565b508290506121678282612d95565b5f61278d6002848418612db4565b61057a90848416612c68565b5f61057a8284612c68565b6001600160a01b03811681146112b9575f5ffd5b5f5f604083850312156127c9575f5ffd5b82356127d4816127a4565b915060208301356127e4816127a4565b809150509250929050565b80151581146112b9575f5ffd5b5f5f5f6060848603121561280e575f5ffd5b8335612819816127a4565b92506020840135612829816127a4565b91506040840135612839816127ef565b809150509250925092565b5f5f5f60608486031215612856575f5ffd5b8335612861816127a4565b92506020840135612871816127a4565b91506040840135612839816127a4565b5f60208284031215612891575f5ffd5b5035919050565b5f602082840312156128a8575f5ffd5b813561057a816127a4565b5f5f604083850312156128c4575f5ffd5b82356128cf816127a4565b946020939093013593505050565b5f5f5f606084860312156128ef575f5ffd5b83359250602084013591506040840135612839816127ef565b634e487b7160e01b5f52604160045260245ffd5b604051610100810167ffffffffffffffff8111828210171561294057612940612908565b60405290565b6040805190810167ffffffffffffffff8111828210171561294057612940612908565b604051601f8201601f1916810167ffffffffffffffff8111828210171561299257612992612908565b604052919050565b5f5f5f606084860312156129ac575f5ffd5b83356129b7816127a4565b925060208401359150604084013567ffffffffffffffff8111156129d9575f5ffd5b8401601f810186136129e9575f5ffd5b803567ffffffffffffffff811115612a0357612a03612908565b8060051b612a1360208201612969565b91825260208184018101929081019089841115612a2e575f5ffd5b6020850194505b83851015612a5457843580835260209586019590935090910190612a35565b80955050505050509250925092565b602080825282518282018190525f918401906040840190835b81811015612aa35783516001600160a01b0316835260209384019390920191600101612a7c565b509095945050505050565b5f5f5f60608486031215612ac0575f5ffd5b8335612acb816127a4565b95602085013595506040909401359392505050565b5f60208284031215612af0575f5ffd5b815161057a816127ef565b5f818303610120811215612b0d575f5ffd5b612b1561291c565b91506040811215612b24575f5ffd5b50612b2d612946565b825181526020808401518183015290825260408084015191830191909152606080840151918301919091526080808401519183019190915260a0808401519183019190915260c0808401519183019190915260e080840151918301919091526101009092015191810191909152919050565b5f6101208284031215612bb0575f5ffd5b61057a8383612afb565b5f60208284031215612bca575f5ffd5b5051919050565b8051612bdc816127a4565b919050565b5f6080828403128015612bf2575f5ffd5b506040516080810167ffffffffffffffff81118282101715612c1657612c16612908565b60409081528351825260208085015190830152830151612c35816127a4565b60408201526060830151612c48816127ef565b60608201529392505050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561057d5761057d612c54565b634e487b7160e01b5f52603260045260245ffd5b8181038181111561057d5761057d612c54565b6001600160e01b03818116838216019081111561057d5761057d612c54565b5f60408284031215612cd1575f5ffd5b612cd9612946565b825181526020928301519281019290925250919050565b5f6101e0828403128015612d02575f5ffd5b5060405160c0810167ffffffffffffffff81118282101715612d2657612d26612908565b604052612d338484612afb565b815261012083015160088110612d47575f5ffd5b6020820152612d596101408401612bd1565b6040820152612d6b6101608401612bd1565b60608201526101808301516080820152612d89846101a08501612cc1565b60a08201529392505050565b6001600160e01b03828116828216039081111561057d5761057d612c54565b5f82612dce57634e487b7160e01b5f52601260045260245ffd5b50049056fe1ad22eb9644e69e66c5fa94a76fa877ebc3727e1093713f063f2b1e989b3acb794df5a0043f135e33cc3628b2285ab0d1c133e619e2dc03d1ea98ae1741b1eb1a264697066735822122032afd5fd81c3ca59a6503653a63c368dd20565ce62107934aac96f6e3f532aa064736f6c634300081b0033";
4
+ export declare const GSEBytecode = "0x60a060405234801561000f575f5ffd5b50604051612fdf380380612fdf83398101604081905261002e9161012a565b8181816001600160a01b03811661005e57604051631e4fbdf760e01b81525f600482015260240160405180910390fd5b610067816100c4565b506001600160a01b03166080525050732285ab0d1c133e619e2dc03d1ea98ae1741b1eb15f525060026020527f1ad22eb9644e69e66c5fa94a76fa877ebc3727e1093713f063f2b1e989b3acbb805460ff19166001179055610162565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b0381168114610127575f5ffd5b50565b5f5f6040838503121561013b575f5ffd5b825161014681610113565b602084015190925061015781610113565b809150509250929050565b608051612e496101965f395f818161024b015281816107d70152818161088e01528181610b1b0152610bb40152612e495ff3fe608060405234801561000f575f5ffd5b5060043610610212575f3560e01c8063a9cd26c91161011f578063e5af7293116100a9578063f2fde38b11610079578063f2fde38b146104d4578063f3a19620146104e7578063f3fef3a3146104ef578063f4603fe11461051d578063f7888aec1461055a575f5ffd5b8063e5af72931461048b578063eaeded5f1461049e578063ec6925a7146104b1578063ec6e69db146104c1575f5ffd5b8063bb4d4436116100ef578063bb4d443614610414578063bbdcbed614610427578063bd76784b14610452578063c5ef6efb14610465578063d3da927f14610478575f5ffd5b8063a9cd26c9146103c7578063ab033ea9146103da578063ad47e666146103ed578063b0c3742214610401575f5ffd5b806352f44a14116101a0578063671431c311610170578063671431c3146103695780636a18ff7a1461037c578063715018a61461038f5780638da5cb5b146103975780639796d977146103a7575f5ffd5b806352f44a14146102f25780635338c7581461033057806359264f001461034357806362400e4c14610356575f5ffd5b806318160ddd116101e657806318160ddd146102a0578063289b3c0d146102a85780632e341ce0146102b957806330eb4bdd146102cc57806333f3d8ff146102df575f5ffd5b806215eaaa1461021657806303c230e3146102465780630808ee6e1461026d57806308dbbb0314610282575b5f5ffd5b6102296102243660046127b8565b61056d565b6040516001600160a01b0390911681526020015b60405180910390f35b6102297f000000000000000000000000000000000000000000000000000000000000000081565b61028061027b3660046127fc565b610583565b005b6102926802b5e3af16b188000081565b60405190815260200161023d565b6102926109aa565b6006546001600160a01b0316610229565b6102806102c7366004612844565b6109ba565b6102926102da3660046127b8565b610a79565b6102806102ed366004612881565b610cf4565b610320610300366004612898565b6001600160a01b03165f9081526002602052604090206004015460ff1690565b604051901515815260200161023d565b61029261033e3660046127b8565b610dd3565b610280610351366004612898565b610e2e565b610292610364366004612898565b610efd565b6102926103773660046128b3565b610f09565b61028061038a3660046128dd565b610f31565b610280610f3d565b5f546001600160a01b0316610229565b6103ba6103b536600461299a565b610f50565b60405161023d9190612a63565b6102296103d5366004612aae565b610f5d565b6102806103e8366004612898565b610fce565b6102295f516020612df45f395f51905f5281565b5f516020612df45f395f51905f52610229565b610292610422366004612898565b611021565b61043a6104353660046127b8565b61102d565b60405190516001600160a01b0316815260200161023d565b6103ba6104603660046128b3565b61109d565b610229610473366004612881565b61112e565b6103206104863660046127b8565b611154565b6102806104993660046128dd565b611175565b6102926104ac3660046128b3565b6111da565b61029268056bc75e2d6310000081565b6102926104cf3660046128b3565b6111e7565b6102806104e2366004612898565b61127f565b6102296112bc565b6105026104fd3660046128b3565b6112ca565b6040805193845291151560208401529082015260600161023d565b61053061052b3660046127b8565b61156a565b604080516001600160a01b039485168152921515602084015292169181019190915260600161023d565b6102926105683660046127b8565b6115bd565b5f61057a600384846115ca565b90505b92915050565b335f8181526002602052604090206004015460ff166105c6576040516319aaa75960e11b81526001600160a01b0390911660048201526024015b60405180910390fd5b50335f816105d26112bc565b6001600160a01b03161490508215806105e85750805b829061061357604051630cdce6bd60e11b81526001600160a01b0390911660048201526024016105bd565b5061061e8286611154565b158286909161065357604051630d75cd7760e11b81526001600160a01b039283166004820152911660248201526044016105bd565b505080158061067657506106745f516020612df45f395f51905f5286611154565b155b5f516020612df45f395f51905f529086906106b757604051630d75cd7760e11b81526001600160a01b039283166004820152911660248201526044016105bd565b505082156106d0575f516020612df45f395f51905f5291505b6001600160a01b0382165f9081526002602052604090206106f190866115f7565b8286909161072557604051630d75cd7760e11b81526001600160a01b039283166004820152911660248201526044016105bd565b505060408051602080820183526001600160a01b0387811683528581165f908152600283528481208a831682526003908101909352938420925183546001600160a01b03191691161790915561077c9084886115ca565b6001600160a01b03160361079757610797600383878161170a565b6107ad6003838768056bc75e2d631000006117cd565b6040516323b872dd60e01b815233600482015230602482015268056bc75e2d6310000060448201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906323b872dd906064016020604051808303815f875af1158015610825573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108499190612ae0565b505f61085d6006546001600160a01b031690565b60405163095ea7b360e01b81526001600160a01b03808316600483015268056bc75e2d6310000060248301529192507f00000000000000000000000000000000000000000000000000000000000000009091169063095ea7b3906044016020604051808303815f875af11580156108d6573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108fa9190612ae0565b506040516311f9fbc960e21b815230600482015268056bc75e2d6310000060248201526001600160a01b038216906347e7ef24906044015f604051808303815f87803b158015610948575f5ffd5b505af115801561095a573d5f5f3e3d5ffd5b50506040516001600160a01b038881168252808a169350861691507f7986a8ff398d9a6be88df9dfc6e3c9a83e4da5544241aad420d1cf7c214e43459060200160405180910390a3505050505050565b5f6109b5600361185c565b905090565b6001600160a01b0383165f9081526002602052604090206004015460ff168390610a03576040516330d32d8760e21b81526001600160a01b0390911660048201526024016105bd565b506001600160a01b038084165f9081526002602090815260408083208685168452600301909152902054168033808214610a6357604051630257d8d760e41b81526001600160a01b039283166004820152911660248201526044016105bd565b50610a739050600385858561170a565b50505050565b5f5f610a8d6006546001600160a01b031690565b90505f816001600160a01b0316636bd50cef6040518163ffffffff1660e01b815260040161012060405180830381865afa158015610acd573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610af19190612b9f565b51602001516040516323b872dd60e01b8152336004820152306024820152604481018290529091507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906323b872dd906064016020604051808303815f875af1158015610b69573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b8d9190612ae0565b5060405163095ea7b360e01b81526001600160a01b038381166004830152602482018390527f0000000000000000000000000000000000000000000000000000000000000000169063095ea7b3906044016020604051808303815f875af1158015610bfa573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c1e9190612ae0565b506040516311f9fbc960e21b8152306004820152602481018290526001600160a01b038316906347e7ef24906044015f604051808303815f87803b158015610c64575f5ffd5b505af1158015610c76573d5f5f3e3d5ffd5b50506040516330eb4bdd60e01b81526001600160a01b0388811660048301528781166024830152851692506330eb4bdd91506044016020604051808303815f875af1158015610cc7573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ceb9190612bba565b95945050505050565b5f610d076006546001600160a01b031690565b604051634527d8b560e11b8152600481018490529091506001600160a01b03821690638a4fb16a90602401608060405180830381865afa158015610d4d573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d719190612be1565b60600151610dcf5760405163f752f8b560e01b8152600481018390526001600160a01b0382169063f752f8b5906024015f604051808303815f87803b158015610db8575f5ffd5b505af1158015610dca573d5f5f3e3d5ffd5b505050505b5050565b5f80610de160038585611869565b9050836001600160a01b0316610df56112bc565b6001600160a01b03160361057a57610e1c60035f516020612df45f395f51905f5285611869565b610e269082612c68565b949350505050565b610e36611890565b806001600160a01b038116610e6a576040516327bac29760e21b81526001600160a01b0390911660048201526024016105bd565b506001600160a01b0381165f90815260026020526040902060040154819060ff1615610eb45760405162cea8b160e11b81526001600160a01b0390911660048201526024016105bd565b506001600160a01b0381165f908152600260205260409020600401805460ff19166001179055610ef8610ee6426118bc565b6001906001600160a01b0384166118f0565b505050565b5f61057d60038361190a565b6001600160a01b0382165f90815260046020908152604080832084845290915281205461057a565b610ef83384848461192d565b610f45611890565b610f4e5f6119cc565b565b6060610e26848385611a1b565b6040805160018082528183019092525f918291906020808301908036833701905050905083815f81518110610f9457610f94612c7b565b602002602001018181525050610fab858285611a1b565b5f81518110610fbc57610fbc612c7b565b60200260200101519150509392505050565b610fd6611890565b6006546001600160a01b031615610fff576040516296bb9f60e21b815260040160405180910390fd5b600680546001600160a01b0319166001600160a01b0392909216919091179055565b5f61057d600383611c0a565b60408051602081019091525f81525f5f6110478585611c2e565b50915091508061106857505060408051602081019091525f8152905061057d565b506001600160a01b038084165f9081526003909201602090815260409283902083519182019093529154168152905092915050565b60605f6110aa84846111e7565b90505f8167ffffffffffffffff8111156110c6576110c6612908565b6040519080825280602002602001820160405280156110ef578160200160208202803683370190505b5090505f5b82811015611122578082828151811061110f5761110f612c7b565b60209081029190910101526001016110f4565b50610ceb858286611a1b565b5f61057d61114661113e846118bc565b600190611d08565b6001600160e01b0316611d5e565b6001600160a01b0382165f90815260026020526040812061057a9083611d91565b5f61117f84611db2565b905061118a8161112e565b33906001600160a01b031681146111c057604051630cdce6bd60e11b81526001600160a01b0390911660048201526024016105bd565b50610a735f516020612df45f395f51905f5285858561192d565b5f61057a60038484611e3a565b6001600160a01b0382165f90815260026020526040812081611208846118bc565b90505f6112158383611e5f565b9050856001600160a01b031661122a8661112e565b6001600160a01b031603610ceb57732285ab0d1c133e619e2dc03d1ea98ae1741b1eb15f52600260205261126b5f516020612dd45f395f51905f5283611e5f565b6112759082612c68565b9695505050505050565b611287611890565b6001600160a01b0381166112b057604051631e4fbdf760e01b81525f60048201526024016105bd565b6112b9816119cc565b50565b5f6109b56111466001611e7a565b335f908152600260205260408120600401548190819060ff16339061130e576040516319aaa75960e11b81526001600160a01b0390911660048201526024016105bd565b50335f818152600260205260408120906113288289611d91565b9050801580156113505750826001600160a01b03166113456112bc565b6001600160a01b0316145b801561138a5750732285ab0d1c133e619e2dc03d1ea98ae1741b1eb15f52600260205261138a5f516020612dd45f395f51905f5289611d91565b156113cd575050732285ab0d1c133e619e2dc03d1ea98ae1741b1eb15f525060026020525f516020612df45f395f51905f525f516020612dd45f395f51905f5260015b87816113f85760405163417f3a0560e01b81526001600160a01b0390911660048201526024016105bd565b505f6114066003858b611869565b90508088808210156114345760405163047c4d8960e51b8152600481019290925260248201526044016105bd565b508890505f6802b5e3af16b188000061144d8385612c8f565b10905080156114c457611460858c611eb3565b8b9061148b576040516304ca9e7360e31b81526001600160a01b0390911660048201526024016105bd565b506001600160a01b038b165f90815260038087016020526040822080546001600160a01b03191690558493506114c49188908e9061170a565b6114d16003878d85611f14565b5f6114e46006546001600160a01b031690565b60405163625f849b60e11b8152336004820152602481018590526001600160a01b03919091169063c4bf0936906044016020604051808303815f875af1158015611530573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115549190612bba565b92995090975090955050505050505b9250925092565b5f5f5f5f6115788686611c2e565b9094509250905082611593575f5f5f93509350935050611563565b6001600160a01b039485165f90815260039190910160205260409020549093169460019450915050565b5f61057a60038484611869565b6001600160a01b039182165f90815260209384526040808220928416825291909352909120600101541690565b6001600160a01b0381165f90815260028301602052604081205460ff161561162057505f61057d565b5f61162a84611e7a565b604080518082018252600181526001600160e01b0383811660208084019182526001600160a01b0389165f90815260028b019091529384209251835491516001600160e81b0319909216901515610100600160e81b03191617610100919092160217905590915061169a426118bc565b90506116d2816116b2866001600160a01b0316611f9b565b6001600160e01b0385165f908152600189016020526040902091906118f0565b506116fd9050816116f56116e7856001612ca2565b6001600160e01b0316611f9b565b8791906118f0565b5060019695505050505050565b5f6117168585856115ca565b9050816001600160a01b0316816001600160a01b0316036117375750610a73565b6001600160a01b038481165f908152602087815260408083208785168085529083529281902060010180546001600160a01b031916878616908117909155815194861685529184019190915290917f3134e8a2e6d97e929a7e54011ea5485d7d196dd5f0ba4d4ef95803e8e3fc257f910160405180910390a26117c68582846117c1898989611869565b611fce565b5050505050565b8015610a73576001600160a01b038084165f9081526020868152604080832093861683529083905281208054849290611807908490612c68565b90915550506001600160a01b038084165f90815260208390526040812060010154611836928892911685611fce565b6118436001820183612107565b5061185390506002860183612107565b50505050505050565b5f61057d82600201612181565b6001600160a01b039182165f90815260209384526040808220929093168152925290205490565b5f546001600160a01b03163314610f4e5760405163118cdaa760e01b81523360048201526024016105bd565b5f63ffffffff8211156118ec576040516306dfcc6560e41b815260206004820152602481018390526044016105bd565b5090565b5f806118fd85858561219a565b915091505b935093915050565b6001600160a01b0381165f90815260208390526040812061057a90600101612181565b5f61193784611db2565b90506119476003868684876122e2565b6006546001600160a01b031660405163350c7fbd60e11b8152600481018690526024810185905283151560448201526001600160a01b039190911690636a18ff7a906064016020604051808303815f875af11580156119a8573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610dca9190612ae0565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60605f835167ffffffffffffffff811115611a3857611a38612908565b604051908082528060200260200182016040528015611a61578160200160208202803683370190505b506001600160a01b0386165f818152600260205260408120732285ab0d1c133e619e2dc03d1ea98ae1741b1eb182529293505f516020612dd45f395f51905f5291611aab8761112e565b6001600160a01b03161490505f611ac1876118bc565b90505f611ace8583611e5f565b90505f83611adc575f611ae6565b611ae68584611e5f565b90505f611af38284612c68565b90505f5b8b51811015611bf9575f8c8281518110611b1357611b13612c7b565b6020026020010151905082811081849091611b4a57604051635d4bf88360e01b8152600481019290925260248201526044016105bd565b505084811015611b9657611b5f8982886123ad565b8a8381518110611b7157611b71612c7b565b60200260200101906001600160a01b031690816001600160a01b031681525050611bf0565b8615611bb157611b5f611ba98683612c8f565b8990886123ad565b604051633d6a4a3b60e21b815260206004820152601360248201527229a427aaa622102722ab22a9102420a82822a760691b60448201526064016105bd565b50600101611af7565b50969b9a5050505050505050505050565b6001600160a01b0381165f90815260018084016020526040822061057a9101612181565b6001600160a01b0382165f9081526002602052604081208190819081611c548287611d91565b90508681158015611c7d5750876001600160a01b0316611c726112bc565b6001600160a01b0316145b8015611cb75750732285ab0d1c133e619e2dc03d1ea98ae1741b1eb15f526002602052611cb75f516020612dd45f395f51905f5288611d91565b15611cfa575050732285ab0d1c133e619e2dc03d1ea98ae1741b1eb15f525060026020525f516020612dd45f395f51905f5260015f516020612df45f395f51905f525b919450925090509250925092565b81545f9081611d1985858385612415565b90508015611d5457611d3d85611d30600184612c8f565b5f91825260209091200190565b5464010000000090046001600160e01b0316610ceb565b505f949350505050565b5f6001600160a01b038211156118ec576040516306dfcc6560e41b815260a06004820152602481018390526044016105bd565b6001600160a01b03165f908152600291909101602052604090205460ff1690565b5f61057d611dc86006546001600160a01b031690565b6001600160a01b031663c7f758a8846040518263ffffffff1660e01b8152600401611df591815260200190565b6101e060405180830381865afa158015611e11573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611e359190612cf0565b612470565b6001600160a01b0382165f908152600180850160205260408220610e26910183612486565b5f611e6a8383611d08565b6001600160e01b03169392505050565b80545f908015611eaa57611e9383611d30600184612c8f565b5464010000000090046001600160e01b0316611eac565b5f5b9392505050565b6001600160a01b0381165f908152600283016020908152604080832081518083019092525460ff811615158083526101009091046001600160e01b03169282019290925290611f05575f91505061057d565b610e26848260200151856124c0565b8015610a73576001600160a01b038084165f9081526020868152604080832093861683529083905281208054849290611f4e908490612c8f565b90915550506001600160a01b038084165f90815260208390526040812060010154611f7e92889291169085611fce565b611f8b60018201836126d2565b50611853905060028601836126d2565b5f6001600160e01b038211156118ec576040516306dfcc6560e41b815260e06004820152602481018390526044016105bd565b816001600160a01b0316836001600160a01b03161480611fec575080155b610a73576001600160a01b03831615612079576001600160a01b0383165f90815260018086016020526040822082916120269101846126d2565b91509150846001600160a01b03167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a724838360405161206e929190918252602082015260400190565b60405180910390a250505b6001600160a01b03821615610a73576001600160a01b0382165f90815260018086016020526040822082916120af910184612107565b91509150836001600160a01b03167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a72483836040516120f7929190918252602082015260400190565b60405180910390a2505050505050565b5f808061211385611e7a565b9050835f0361212f576001600160e01b0316915081905061217a565b5f61213985611f9b565b9050612159612147426118bc565b6121518385612ca2565b8891906118f0565b508290506121678282612ca2565b6001600160e01b03918216955016925050505b9250929050565b5f61218b82611e7a565b6001600160e01b031692915050565b82545f9081908015612289575f6121b687611d30600185612c8f565b805490915063ffffffff8082169164010000000090046001600160e01b03169088168211156121f857604051632520601d60e01b815260040160405180910390fd5b8763ffffffff168263ffffffff160361222c57825463ffffffff166401000000006001600160e01b0389160217835561227b565b6040805180820190915263ffffffff808a1682526001600160e01b03808a1660208085019182528d54600181018f555f8f81529190912094519151909216640100000000029216919091179101555b945085935061190292505050565b50506040805180820190915263ffffffff80851682526001600160e01b0380851660208085019182528854600181018a555f8a815291822095519251909316640100000000029190931617920191909155905081611902565b5f6122ee868685611e3a565b6001600160a01b0386165f90815260018801602090815260408083208884529091529020549091506123208382612c68565b821015868361232f8685612c68565b9091926123685760405163dd99c2ab60e01b81526001600160a01b039093166004840152602483019190915260448201526064016105bd565b5050506001600160a01b0386165f90815260018801602090815260408083208884529091528120805485929061239f908490612c68565b909155505050505050505050565b5f5f6123b98584611e5f565b905083818082106123e657604051636bc4db8d60e11b8152600481019290925260248201526044016105bd565b50505f84815260018601602052604081206124019085611d08565b9050611275816001600160e01b0316611d5e565b5f5b81831015612468575f61242a848461277f565b5f8781526020902090915063ffffffff86169082015463ffffffff16111561245457809250612462565b61245f816001612c68565b93505b50612417565b509392505050565b5f61057d8260800151835f015160200151612799565b5f61249082421190565b6124ad5760405163e34cb3b360e01b815260040160405180910390fd5b611e6a6124b9836118bc565b8490611d08565b5f806124cb85611e7a565b9050806001600160e01b0316846001600160e01b03161061251257604051636bc4db8d60e11b81526001600160e01b038086166004830152821660248201526044016105bd565b5f61251e600183612d95565b90505f612548611146886001015f856001600160e01b031681526020019081526020015f20611e7a565b90505f612554426118bc565b6040805180820182525f80825260208083018281526001600160a01b038c16835260028e019091529290209051815492516001600160e81b0319909316901515610100600160e81b031916176101006001600160e01b0393841602179055909150878116908416036125eb576001600160e01b0387165f90815260018901602052604081206125e49183906118f0565b50506126a4565b6040518060400160405280600115158152602001612611896001600160e01b0316611f9b565b6001600160e01b039081169091526001600160a01b0384165f81815260028c016020908152604090912084518154959092015190931661010002610100600160e81b0319911515919091166001600160e81b0319909416939093179290921790556126a190829061268190611f9b565b6001600160e01b038a165f90815260018c016020526040902091906118f0565b50505b6126c2816126ba856001600160e01b0316611f9b565b8a91906118f0565b5060019998505050505050505050565b5f80806126de85611e7a565b9050835f036126fa576001600160e01b0316915081905061217a565b5f61270485611f9b565b90503382826001600160e01b03808216908316101561275857604051631186c4ab60e31b81526001600160a01b0390931660048401526001600160e01b0391821660248401521660448201526064016105bd565b505050612771612767426118bc565b6121518385612d95565b508290506121678282612d95565b5f61278d6002848418612db4565b61057a90848416612c68565b5f61057a8284612c68565b6001600160a01b03811681146112b9575f5ffd5b5f5f604083850312156127c9575f5ffd5b82356127d4816127a4565b915060208301356127e4816127a4565b809150509250929050565b80151581146112b9575f5ffd5b5f5f5f6060848603121561280e575f5ffd5b8335612819816127a4565b92506020840135612829816127a4565b91506040840135612839816127ef565b809150509250925092565b5f5f5f60608486031215612856575f5ffd5b8335612861816127a4565b92506020840135612871816127a4565b91506040840135612839816127a4565b5f60208284031215612891575f5ffd5b5035919050565b5f602082840312156128a8575f5ffd5b813561057a816127a4565b5f5f604083850312156128c4575f5ffd5b82356128cf816127a4565b946020939093013593505050565b5f5f5f606084860312156128ef575f5ffd5b83359250602084013591506040840135612839816127ef565b634e487b7160e01b5f52604160045260245ffd5b604051610100810167ffffffffffffffff8111828210171561294057612940612908565b60405290565b6040805190810167ffffffffffffffff8111828210171561294057612940612908565b604051601f8201601f1916810167ffffffffffffffff8111828210171561299257612992612908565b604052919050565b5f5f5f606084860312156129ac575f5ffd5b83356129b7816127a4565b925060208401359150604084013567ffffffffffffffff8111156129d9575f5ffd5b8401601f810186136129e9575f5ffd5b803567ffffffffffffffff811115612a0357612a03612908565b8060051b612a1360208201612969565b91825260208184018101929081019089841115612a2e575f5ffd5b6020850194505b83851015612a5457843580835260209586019590935090910190612a35565b80955050505050509250925092565b602080825282518282018190525f918401906040840190835b81811015612aa35783516001600160a01b0316835260209384019390920191600101612a7c565b509095945050505050565b5f5f5f60608486031215612ac0575f5ffd5b8335612acb816127a4565b95602085013595506040909401359392505050565b5f60208284031215612af0575f5ffd5b815161057a816127ef565b5f818303610120811215612b0d575f5ffd5b612b1561291c565b91506040811215612b24575f5ffd5b50612b2d612946565b825181526020808401518183015290825260408084015191830191909152606080840151918301919091526080808401519183019190915260a0808401519183019190915260c0808401519183019190915260e080840151918301919091526101009092015191810191909152919050565b5f6101208284031215612bb0575f5ffd5b61057a8383612afb565b5f60208284031215612bca575f5ffd5b5051919050565b8051612bdc816127a4565b919050565b5f6080828403128015612bf2575f5ffd5b506040516080810167ffffffffffffffff81118282101715612c1657612c16612908565b60409081528351825260208085015190830152830151612c35816127a4565b60408201526060830151612c48816127ef565b60608201529392505050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561057d5761057d612c54565b634e487b7160e01b5f52603260045260245ffd5b8181038181111561057d5761057d612c54565b6001600160e01b03818116838216019081111561057d5761057d612c54565b5f60408284031215612cd1575f5ffd5b612cd9612946565b825181526020928301519281019290925250919050565b5f6101e0828403128015612d02575f5ffd5b5060405160c0810167ffffffffffffffff81118282101715612d2657612d26612908565b604052612d338484612afb565b815261012083015160088110612d47575f5ffd5b6020820152612d596101408401612bd1565b6040820152612d6b6101608401612bd1565b60608201526101808301516080820152612d89846101a08501612cc1565b60a08201529392505050565b6001600160e01b03828116828216039081111561057d5761057d612c54565b5f82612dce57634e487b7160e01b5f52601260045260245ffd5b50049056fe1ad22eb9644e69e66c5fa94a76fa877ebc3727e1093713f063f2b1e989b3acb794df5a0043f135e33cc3628b2285ab0d1c133e619e2dc03d1ea98ae1741b1eb1a26469706673582212206d6b9974ca8256601aef92b19622d46be30a0e52180bec64e3e5426a6928cce664736f6c634300081b0033";
5
5
  /**
6
6
  * GSE link references.
7
7
  */
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * GSE bytecode.
3
- */ export const GSEBytecode = "0x60a060405234801561000f575f5ffd5b50604051612fdf380380612fdf83398101604081905261002e9161012a565b8181816001600160a01b03811661005e57604051631e4fbdf760e01b81525f600482015260240160405180910390fd5b610067816100c4565b506001600160a01b03166080525050732285ab0d1c133e619e2dc03d1ea98ae1741b1eb15f525060026020527f1ad22eb9644e69e66c5fa94a76fa877ebc3727e1093713f063f2b1e989b3acbb805460ff19166001179055610162565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b0381168114610127575f5ffd5b50565b5f5f6040838503121561013b575f5ffd5b825161014681610113565b602084015190925061015781610113565b809150509250929050565b608051612e496101965f395f818161024b015281816107d70152818161088e01528181610b1b0152610bb40152612e495ff3fe608060405234801561000f575f5ffd5b5060043610610212575f3560e01c8063a9cd26c91161011f578063e5af7293116100a9578063f2fde38b11610079578063f2fde38b146104d4578063f3a19620146104e7578063f3fef3a3146104ef578063f4603fe11461051d578063f7888aec1461055a575f5ffd5b8063e5af72931461048b578063eaeded5f1461049e578063ec6925a7146104b1578063ec6e69db146104c1575f5ffd5b8063bb4d4436116100ef578063bb4d443614610414578063bbdcbed614610427578063bd76784b14610452578063c5ef6efb14610465578063d3da927f14610478575f5ffd5b8063a9cd26c9146103c7578063ab033ea9146103da578063ad47e666146103ed578063b0c3742214610401575f5ffd5b806352f44a14116101a0578063671431c311610170578063671431c3146103695780636a18ff7a1461037c578063715018a61461038f5780638da5cb5b146103975780639796d977146103a7575f5ffd5b806352f44a14146102f25780635338c7581461033057806359264f001461034357806362400e4c14610356575f5ffd5b806318160ddd116101e657806318160ddd146102a0578063289b3c0d146102a85780632e341ce0146102b957806330eb4bdd146102cc57806333f3d8ff146102df575f5ffd5b806215eaaa1461021657806303c230e3146102465780630808ee6e1461026d57806308dbbb0314610282575b5f5ffd5b6102296102243660046127b8565b61056d565b6040516001600160a01b0390911681526020015b60405180910390f35b6102297f000000000000000000000000000000000000000000000000000000000000000081565b61028061027b3660046127fc565b610583565b005b6102926802b5e3af16b188000081565b60405190815260200161023d565b6102926109aa565b6006546001600160a01b0316610229565b6102806102c7366004612844565b6109ba565b6102926102da3660046127b8565b610a79565b6102806102ed366004612881565b610cf4565b610320610300366004612898565b6001600160a01b03165f9081526002602052604090206004015460ff1690565b604051901515815260200161023d565b61029261033e3660046127b8565b610dd3565b610280610351366004612898565b610e2e565b610292610364366004612898565b610efd565b6102926103773660046128b3565b610f09565b61028061038a3660046128dd565b610f31565b610280610f3d565b5f546001600160a01b0316610229565b6103ba6103b536600461299a565b610f50565b60405161023d9190612a63565b6102296103d5366004612aae565b610f5d565b6102806103e8366004612898565b610fce565b6102295f516020612df45f395f51905f5281565b5f516020612df45f395f51905f52610229565b610292610422366004612898565b611021565b61043a6104353660046127b8565b61102d565b60405190516001600160a01b0316815260200161023d565b6103ba6104603660046128b3565b61109d565b610229610473366004612881565b61112e565b6103206104863660046127b8565b611154565b6102806104993660046128dd565b611175565b6102926104ac3660046128b3565b6111da565b61029268056bc75e2d6310000081565b6102926104cf3660046128b3565b6111e7565b6102806104e2366004612898565b61127f565b6102296112bc565b6105026104fd3660046128b3565b6112ca565b6040805193845291151560208401529082015260600161023d565b61053061052b3660046127b8565b61156a565b604080516001600160a01b039485168152921515602084015292169181019190915260600161023d565b6102926105683660046127b8565b6115bd565b5f61057a600384846115ca565b90505b92915050565b335f8181526002602052604090206004015460ff166105c6576040516319aaa75960e11b81526001600160a01b0390911660048201526024015b60405180910390fd5b50335f816105d26112bc565b6001600160a01b03161490508215806105e85750805b829061061357604051630cdce6bd60e11b81526001600160a01b0390911660048201526024016105bd565b5061061e8286611154565b158286909161065357604051630d75cd7760e11b81526001600160a01b039283166004820152911660248201526044016105bd565b505080158061067657506106745f516020612df45f395f51905f5286611154565b155b5f516020612df45f395f51905f529086906106b757604051630d75cd7760e11b81526001600160a01b039283166004820152911660248201526044016105bd565b505082156106d0575f516020612df45f395f51905f5291505b6001600160a01b0382165f9081526002602052604090206106f190866115f7565b8286909161072557604051630d75cd7760e11b81526001600160a01b039283166004820152911660248201526044016105bd565b505060408051602080820183526001600160a01b0387811683528581165f908152600283528481208a831682526003908101909352938420925183546001600160a01b03191691161790915561077c9084886115ca565b6001600160a01b03160361079757610797600383878161170a565b6107ad6003838768056bc75e2d631000006117cd565b6040516323b872dd60e01b815233600482015230602482015268056bc75e2d6310000060448201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906323b872dd906064016020604051808303815f875af1158015610825573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108499190612ae0565b505f61085d6006546001600160a01b031690565b60405163095ea7b360e01b81526001600160a01b03808316600483015268056bc75e2d6310000060248301529192507f00000000000000000000000000000000000000000000000000000000000000009091169063095ea7b3906044016020604051808303815f875af11580156108d6573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108fa9190612ae0565b506040516311f9fbc960e21b815230600482015268056bc75e2d6310000060248201526001600160a01b038216906347e7ef24906044015f604051808303815f87803b158015610948575f5ffd5b505af115801561095a573d5f5f3e3d5ffd5b50506040516001600160a01b038881168252808a169350861691507f7986a8ff398d9a6be88df9dfc6e3c9a83e4da5544241aad420d1cf7c214e43459060200160405180910390a3505050505050565b5f6109b5600361185c565b905090565b6001600160a01b0383165f9081526002602052604090206004015460ff168390610a03576040516330d32d8760e21b81526001600160a01b0390911660048201526024016105bd565b506001600160a01b038084165f9081526002602090815260408083208685168452600301909152902054168033808214610a6357604051630257d8d760e41b81526001600160a01b039283166004820152911660248201526044016105bd565b50610a739050600385858561170a565b50505050565b5f5f610a8d6006546001600160a01b031690565b90505f816001600160a01b0316636bd50cef6040518163ffffffff1660e01b815260040161012060405180830381865afa158015610acd573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610af19190612b9f565b51602001516040516323b872dd60e01b8152336004820152306024820152604481018290529091507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906323b872dd906064016020604051808303815f875af1158015610b69573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b8d9190612ae0565b5060405163095ea7b360e01b81526001600160a01b038381166004830152602482018390527f0000000000000000000000000000000000000000000000000000000000000000169063095ea7b3906044016020604051808303815f875af1158015610bfa573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c1e9190612ae0565b506040516311f9fbc960e21b8152306004820152602481018290526001600160a01b038316906347e7ef24906044015f604051808303815f87803b158015610c64575f5ffd5b505af1158015610c76573d5f5f3e3d5ffd5b50506040516330eb4bdd60e01b81526001600160a01b0388811660048301528781166024830152851692506330eb4bdd91506044016020604051808303815f875af1158015610cc7573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ceb9190612bba565b95945050505050565b5f610d076006546001600160a01b031690565b604051634527d8b560e11b8152600481018490529091506001600160a01b03821690638a4fb16a90602401608060405180830381865afa158015610d4d573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d719190612be1565b60600151610dcf5760405163f752f8b560e01b8152600481018390526001600160a01b0382169063f752f8b5906024015f604051808303815f87803b158015610db8575f5ffd5b505af1158015610dca573d5f5f3e3d5ffd5b505050505b5050565b5f80610de160038585611869565b9050836001600160a01b0316610df56112bc565b6001600160a01b03160361057a57610e1c60035f516020612df45f395f51905f5285611869565b610e269082612c68565b949350505050565b610e36611890565b806001600160a01b038116610e6a576040516327bac29760e21b81526001600160a01b0390911660048201526024016105bd565b506001600160a01b0381165f90815260026020526040902060040154819060ff1615610eb45760405162cea8b160e11b81526001600160a01b0390911660048201526024016105bd565b506001600160a01b0381165f908152600260205260409020600401805460ff19166001179055610ef8610ee6426118bc565b6001906001600160a01b0384166118f0565b505050565b5f61057d60038361190a565b6001600160a01b0382165f90815260046020908152604080832084845290915281205461057a565b610ef83384848461192d565b610f45611890565b610f4e5f6119cc565b565b6060610e26848385611a1b565b6040805160018082528183019092525f918291906020808301908036833701905050905083815f81518110610f9457610f94612c7b565b602002602001018181525050610fab858285611a1b565b5f81518110610fbc57610fbc612c7b565b60200260200101519150509392505050565b610fd6611890565b6006546001600160a01b031615610fff576040516296bb9f60e21b815260040160405180910390fd5b600680546001600160a01b0319166001600160a01b0392909216919091179055565b5f61057d600383611c0a565b60408051602081019091525f81525f5f6110478585611c2e565b50915091508061106857505060408051602081019091525f8152905061057d565b506001600160a01b038084165f9081526003909201602090815260409283902083519182019093529154168152905092915050565b60605f6110aa84846111e7565b90505f8167ffffffffffffffff8111156110c6576110c6612908565b6040519080825280602002602001820160405280156110ef578160200160208202803683370190505b5090505f5b82811015611122578082828151811061110f5761110f612c7b565b60209081029190910101526001016110f4565b50610ceb858286611a1b565b5f61057d61114661113e846118bc565b600190611d08565b6001600160e01b0316611d5e565b6001600160a01b0382165f90815260026020526040812061057a9083611d91565b5f61117f84611db2565b905061118a8161112e565b33906001600160a01b031681146111c057604051630cdce6bd60e11b81526001600160a01b0390911660048201526024016105bd565b50610a735f516020612df45f395f51905f5285858561192d565b5f61057a60038484611e3a565b6001600160a01b0382165f90815260026020526040812081611208846118bc565b90505f6112158383611e5f565b9050856001600160a01b031661122a8661112e565b6001600160a01b031603610ceb57732285ab0d1c133e619e2dc03d1ea98ae1741b1eb15f52600260205261126b5f516020612dd45f395f51905f5283611e5f565b6112759082612c68565b9695505050505050565b611287611890565b6001600160a01b0381166112b057604051631e4fbdf760e01b81525f60048201526024016105bd565b6112b9816119cc565b50565b5f6109b56111466001611e7a565b335f908152600260205260408120600401548190819060ff16339061130e576040516319aaa75960e11b81526001600160a01b0390911660048201526024016105bd565b50335f818152600260205260408120906113288289611d91565b9050801580156113505750826001600160a01b03166113456112bc565b6001600160a01b0316145b801561138a5750732285ab0d1c133e619e2dc03d1ea98ae1741b1eb15f52600260205261138a5f516020612dd45f395f51905f5289611d91565b156113cd575050732285ab0d1c133e619e2dc03d1ea98ae1741b1eb15f525060026020525f516020612df45f395f51905f525f516020612dd45f395f51905f5260015b87816113f85760405163417f3a0560e01b81526001600160a01b0390911660048201526024016105bd565b505f6114066003858b611869565b90508088808210156114345760405163047c4d8960e51b8152600481019290925260248201526044016105bd565b508890505f6802b5e3af16b188000061144d8385612c8f565b10905080156114c457611460858c611eb3565b8b9061148b576040516304ca9e7360e31b81526001600160a01b0390911660048201526024016105bd565b506001600160a01b038b165f90815260038087016020526040822080546001600160a01b03191690558493506114c49188908e9061170a565b6114d16003878d85611f14565b5f6114e46006546001600160a01b031690565b60405163625f849b60e11b8152336004820152602481018590526001600160a01b03919091169063c4bf0936906044016020604051808303815f875af1158015611530573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115549190612bba565b92995090975090955050505050505b9250925092565b5f5f5f5f6115788686611c2e565b9094509250905082611593575f5f5f93509350935050611563565b6001600160a01b039485165f90815260039190910160205260409020549093169460019450915050565b5f61057a60038484611869565b6001600160a01b039182165f90815260209384526040808220928416825291909352909120600101541690565b6001600160a01b0381165f90815260028301602052604081205460ff161561162057505f61057d565b5f61162a84611e7a565b604080518082018252600181526001600160e01b0383811660208084019182526001600160a01b0389165f90815260028b019091529384209251835491516001600160e81b0319909216901515610100600160e81b03191617610100919092160217905590915061169a426118bc565b90506116d2816116b2866001600160a01b0316611f9b565b6001600160e01b0385165f908152600189016020526040902091906118f0565b506116fd9050816116f56116e7856001612ca2565b6001600160e01b0316611f9b565b8791906118f0565b5060019695505050505050565b5f6117168585856115ca565b9050816001600160a01b0316816001600160a01b0316036117375750610a73565b6001600160a01b038481165f908152602087815260408083208785168085529083529281902060010180546001600160a01b031916878616908117909155815194861685529184019190915290917f3134e8a2e6d97e929a7e54011ea5485d7d196dd5f0ba4d4ef95803e8e3fc257f910160405180910390a26117c68582846117c1898989611869565b611fce565b5050505050565b8015610a73576001600160a01b038084165f9081526020868152604080832093861683529083905281208054849290611807908490612c68565b90915550506001600160a01b038084165f90815260208390526040812060010154611836928892911685611fce565b6118436001820183612107565b5061185390506002860183612107565b50505050505050565b5f61057d82600201612181565b6001600160a01b039182165f90815260209384526040808220929093168152925290205490565b5f546001600160a01b03163314610f4e5760405163118cdaa760e01b81523360048201526024016105bd565b5f63ffffffff8211156118ec576040516306dfcc6560e41b815260206004820152602481018390526044016105bd565b5090565b5f806118fd85858561219a565b915091505b935093915050565b6001600160a01b0381165f90815260208390526040812061057a90600101612181565b5f61193784611db2565b90506119476003868684876122e2565b6006546001600160a01b031660405163350c7fbd60e11b8152600481018690526024810185905283151560448201526001600160a01b039190911690636a18ff7a906064016020604051808303815f875af11580156119a8573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610dca9190612ae0565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60605f835167ffffffffffffffff811115611a3857611a38612908565b604051908082528060200260200182016040528015611a61578160200160208202803683370190505b506001600160a01b0386165f818152600260205260408120732285ab0d1c133e619e2dc03d1ea98ae1741b1eb182529293505f516020612dd45f395f51905f5291611aab8761112e565b6001600160a01b03161490505f611ac1876118bc565b90505f611ace8583611e5f565b90505f83611adc575f611ae6565b611ae68584611e5f565b90505f611af38284612c68565b90505f5b8b51811015611bf9575f8c8281518110611b1357611b13612c7b565b6020026020010151905082811081849091611b4a57604051635d4bf88360e01b8152600481019290925260248201526044016105bd565b505084811015611b9657611b5f8982886123ad565b8a8381518110611b7157611b71612c7b565b60200260200101906001600160a01b031690816001600160a01b031681525050611bf0565b8615611bb157611b5f611ba98683612c8f565b8990886123ad565b604051633d6a4a3b60e21b815260206004820152601360248201527229a427aaa622102722ab22a9102420a82822a760691b60448201526064016105bd565b50600101611af7565b50969b9a5050505050505050505050565b6001600160a01b0381165f90815260018084016020526040822061057a9101612181565b6001600160a01b0382165f9081526002602052604081208190819081611c548287611d91565b90508681158015611c7d5750876001600160a01b0316611c726112bc565b6001600160a01b0316145b8015611cb75750732285ab0d1c133e619e2dc03d1ea98ae1741b1eb15f526002602052611cb75f516020612dd45f395f51905f5288611d91565b15611cfa575050732285ab0d1c133e619e2dc03d1ea98ae1741b1eb15f525060026020525f516020612dd45f395f51905f5260015f516020612df45f395f51905f525b919450925090509250925092565b81545f9081611d1985858385612415565b90508015611d5457611d3d85611d30600184612c8f565b5f91825260209091200190565b5464010000000090046001600160e01b0316610ceb565b505f949350505050565b5f6001600160a01b038211156118ec576040516306dfcc6560e41b815260a06004820152602481018390526044016105bd565b6001600160a01b03165f908152600291909101602052604090205460ff1690565b5f61057d611dc86006546001600160a01b031690565b6001600160a01b031663c7f758a8846040518263ffffffff1660e01b8152600401611df591815260200190565b6101e060405180830381865afa158015611e11573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611e359190612cf0565b612470565b6001600160a01b0382165f908152600180850160205260408220610e26910183612486565b5f611e6a8383611d08565b6001600160e01b03169392505050565b80545f908015611eaa57611e9383611d30600184612c8f565b5464010000000090046001600160e01b0316611eac565b5f5b9392505050565b6001600160a01b0381165f908152600283016020908152604080832081518083019092525460ff811615158083526101009091046001600160e01b03169282019290925290611f05575f91505061057d565b610e26848260200151856124c0565b8015610a73576001600160a01b038084165f9081526020868152604080832093861683529083905281208054849290611f4e908490612c8f565b90915550506001600160a01b038084165f90815260208390526040812060010154611f7e92889291169085611fce565b611f8b60018201836126d2565b50611853905060028601836126d2565b5f6001600160e01b038211156118ec576040516306dfcc6560e41b815260e06004820152602481018390526044016105bd565b816001600160a01b0316836001600160a01b03161480611fec575080155b610a73576001600160a01b03831615612079576001600160a01b0383165f90815260018086016020526040822082916120269101846126d2565b91509150846001600160a01b03167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a724838360405161206e929190918252602082015260400190565b60405180910390a250505b6001600160a01b03821615610a73576001600160a01b0382165f90815260018086016020526040822082916120af910184612107565b91509150836001600160a01b03167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a72483836040516120f7929190918252602082015260400190565b60405180910390a2505050505050565b5f808061211385611e7a565b9050835f0361212f576001600160e01b0316915081905061217a565b5f61213985611f9b565b9050612159612147426118bc565b6121518385612ca2565b8891906118f0565b508290506121678282612ca2565b6001600160e01b03918216955016925050505b9250929050565b5f61218b82611e7a565b6001600160e01b031692915050565b82545f9081908015612289575f6121b687611d30600185612c8f565b805490915063ffffffff8082169164010000000090046001600160e01b03169088168211156121f857604051632520601d60e01b815260040160405180910390fd5b8763ffffffff168263ffffffff160361222c57825463ffffffff166401000000006001600160e01b0389160217835561227b565b6040805180820190915263ffffffff808a1682526001600160e01b03808a1660208085019182528d54600181018f555f8f81529190912094519151909216640100000000029216919091179101555b945085935061190292505050565b50506040805180820190915263ffffffff80851682526001600160e01b0380851660208085019182528854600181018a555f8a815291822095519251909316640100000000029190931617920191909155905081611902565b5f6122ee868685611e3a565b6001600160a01b0386165f90815260018801602090815260408083208884529091529020549091506123208382612c68565b821015868361232f8685612c68565b9091926123685760405163dd99c2ab60e01b81526001600160a01b039093166004840152602483019190915260448201526064016105bd565b5050506001600160a01b0386165f90815260018801602090815260408083208884529091528120805485929061239f908490612c68565b909155505050505050505050565b5f5f6123b98584611e5f565b905083818082106123e657604051636bc4db8d60e11b8152600481019290925260248201526044016105bd565b50505f84815260018601602052604081206124019085611d08565b9050611275816001600160e01b0316611d5e565b5f5b81831015612468575f61242a848461277f565b5f8781526020902090915063ffffffff86169082015463ffffffff16111561245457809250612462565b61245f816001612c68565b93505b50612417565b509392505050565b5f61057d8260800151835f015160200151612799565b5f61249082421190565b6124ad5760405163e34cb3b360e01b815260040160405180910390fd5b611e6a6124b9836118bc565b8490611d08565b5f806124cb85611e7a565b9050806001600160e01b0316846001600160e01b03161061251257604051636bc4db8d60e11b81526001600160e01b038086166004830152821660248201526044016105bd565b5f61251e600183612d95565b90505f612548611146886001015f856001600160e01b031681526020019081526020015f20611e7a565b90505f612554426118bc565b6040805180820182525f80825260208083018281526001600160a01b038c16835260028e019091529290209051815492516001600160e81b0319909316901515610100600160e81b031916176101006001600160e01b0393841602179055909150878116908416036125eb576001600160e01b0387165f90815260018901602052604081206125e49183906118f0565b50506126a4565b6040518060400160405280600115158152602001612611896001600160e01b0316611f9b565b6001600160e01b039081169091526001600160a01b0384165f81815260028c016020908152604090912084518154959092015190931661010002610100600160e81b0319911515919091166001600160e81b0319909416939093179290921790556126a190829061268190611f9b565b6001600160e01b038a165f90815260018c016020526040902091906118f0565b50505b6126c2816126ba856001600160e01b0316611f9b565b8a91906118f0565b5060019998505050505050505050565b5f80806126de85611e7a565b9050835f036126fa576001600160e01b0316915081905061217a565b5f61270485611f9b565b90503382826001600160e01b03808216908316101561275857604051631186c4ab60e31b81526001600160a01b0390931660048401526001600160e01b0391821660248401521660448201526064016105bd565b505050612771612767426118bc565b6121518385612d95565b508290506121678282612d95565b5f61278d6002848418612db4565b61057a90848416612c68565b5f61057a8284612c68565b6001600160a01b03811681146112b9575f5ffd5b5f5f604083850312156127c9575f5ffd5b82356127d4816127a4565b915060208301356127e4816127a4565b809150509250929050565b80151581146112b9575f5ffd5b5f5f5f6060848603121561280e575f5ffd5b8335612819816127a4565b92506020840135612829816127a4565b91506040840135612839816127ef565b809150509250925092565b5f5f5f60608486031215612856575f5ffd5b8335612861816127a4565b92506020840135612871816127a4565b91506040840135612839816127a4565b5f60208284031215612891575f5ffd5b5035919050565b5f602082840312156128a8575f5ffd5b813561057a816127a4565b5f5f604083850312156128c4575f5ffd5b82356128cf816127a4565b946020939093013593505050565b5f5f5f606084860312156128ef575f5ffd5b83359250602084013591506040840135612839816127ef565b634e487b7160e01b5f52604160045260245ffd5b604051610100810167ffffffffffffffff8111828210171561294057612940612908565b60405290565b6040805190810167ffffffffffffffff8111828210171561294057612940612908565b604051601f8201601f1916810167ffffffffffffffff8111828210171561299257612992612908565b604052919050565b5f5f5f606084860312156129ac575f5ffd5b83356129b7816127a4565b925060208401359150604084013567ffffffffffffffff8111156129d9575f5ffd5b8401601f810186136129e9575f5ffd5b803567ffffffffffffffff811115612a0357612a03612908565b8060051b612a1360208201612969565b91825260208184018101929081019089841115612a2e575f5ffd5b6020850194505b83851015612a5457843580835260209586019590935090910190612a35565b80955050505050509250925092565b602080825282518282018190525f918401906040840190835b81811015612aa35783516001600160a01b0316835260209384019390920191600101612a7c565b509095945050505050565b5f5f5f60608486031215612ac0575f5ffd5b8335612acb816127a4565b95602085013595506040909401359392505050565b5f60208284031215612af0575f5ffd5b815161057a816127ef565b5f818303610120811215612b0d575f5ffd5b612b1561291c565b91506040811215612b24575f5ffd5b50612b2d612946565b825181526020808401518183015290825260408084015191830191909152606080840151918301919091526080808401519183019190915260a0808401519183019190915260c0808401519183019190915260e080840151918301919091526101009092015191810191909152919050565b5f6101208284031215612bb0575f5ffd5b61057a8383612afb565b5f60208284031215612bca575f5ffd5b5051919050565b8051612bdc816127a4565b919050565b5f6080828403128015612bf2575f5ffd5b506040516080810167ffffffffffffffff81118282101715612c1657612c16612908565b60409081528351825260208085015190830152830151612c35816127a4565b60408201526060830151612c48816127ef565b60608201529392505050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561057d5761057d612c54565b634e487b7160e01b5f52603260045260245ffd5b8181038181111561057d5761057d612c54565b6001600160e01b03818116838216019081111561057d5761057d612c54565b5f60408284031215612cd1575f5ffd5b612cd9612946565b825181526020928301519281019290925250919050565b5f6101e0828403128015612d02575f5ffd5b5060405160c0810167ffffffffffffffff81118282101715612d2657612d26612908565b604052612d338484612afb565b815261012083015160088110612d47575f5ffd5b6020820152612d596101408401612bd1565b6040820152612d6b6101608401612bd1565b60608201526101808301516080820152612d89846101a08501612cc1565b60a08201529392505050565b6001600160e01b03828116828216039081111561057d5761057d612c54565b5f82612dce57634e487b7160e01b5f52601260045260245ffd5b50049056fe1ad22eb9644e69e66c5fa94a76fa877ebc3727e1093713f063f2b1e989b3acb794df5a0043f135e33cc3628b2285ab0d1c133e619e2dc03d1ea98ae1741b1eb1a264697066735822122032afd5fd81c3ca59a6503653a63c368dd20565ce62107934aac96f6e3f532aa064736f6c634300081b0033";
3
+ */ export const GSEBytecode = "0x60a060405234801561000f575f5ffd5b50604051612fdf380380612fdf83398101604081905261002e9161012a565b8181816001600160a01b03811661005e57604051631e4fbdf760e01b81525f600482015260240160405180910390fd5b610067816100c4565b506001600160a01b03166080525050732285ab0d1c133e619e2dc03d1ea98ae1741b1eb15f525060026020527f1ad22eb9644e69e66c5fa94a76fa877ebc3727e1093713f063f2b1e989b3acbb805460ff19166001179055610162565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b0381168114610127575f5ffd5b50565b5f5f6040838503121561013b575f5ffd5b825161014681610113565b602084015190925061015781610113565b809150509250929050565b608051612e496101965f395f818161024b015281816107d70152818161088e01528181610b1b0152610bb40152612e495ff3fe608060405234801561000f575f5ffd5b5060043610610212575f3560e01c8063a9cd26c91161011f578063e5af7293116100a9578063f2fde38b11610079578063f2fde38b146104d4578063f3a19620146104e7578063f3fef3a3146104ef578063f4603fe11461051d578063f7888aec1461055a575f5ffd5b8063e5af72931461048b578063eaeded5f1461049e578063ec6925a7146104b1578063ec6e69db146104c1575f5ffd5b8063bb4d4436116100ef578063bb4d443614610414578063bbdcbed614610427578063bd76784b14610452578063c5ef6efb14610465578063d3da927f14610478575f5ffd5b8063a9cd26c9146103c7578063ab033ea9146103da578063ad47e666146103ed578063b0c3742214610401575f5ffd5b806352f44a14116101a0578063671431c311610170578063671431c3146103695780636a18ff7a1461037c578063715018a61461038f5780638da5cb5b146103975780639796d977146103a7575f5ffd5b806352f44a14146102f25780635338c7581461033057806359264f001461034357806362400e4c14610356575f5ffd5b806318160ddd116101e657806318160ddd146102a0578063289b3c0d146102a85780632e341ce0146102b957806330eb4bdd146102cc57806333f3d8ff146102df575f5ffd5b806215eaaa1461021657806303c230e3146102465780630808ee6e1461026d57806308dbbb0314610282575b5f5ffd5b6102296102243660046127b8565b61056d565b6040516001600160a01b0390911681526020015b60405180910390f35b6102297f000000000000000000000000000000000000000000000000000000000000000081565b61028061027b3660046127fc565b610583565b005b6102926802b5e3af16b188000081565b60405190815260200161023d565b6102926109aa565b6006546001600160a01b0316610229565b6102806102c7366004612844565b6109ba565b6102926102da3660046127b8565b610a79565b6102806102ed366004612881565b610cf4565b610320610300366004612898565b6001600160a01b03165f9081526002602052604090206004015460ff1690565b604051901515815260200161023d565b61029261033e3660046127b8565b610dd3565b610280610351366004612898565b610e2e565b610292610364366004612898565b610efd565b6102926103773660046128b3565b610f09565b61028061038a3660046128dd565b610f31565b610280610f3d565b5f546001600160a01b0316610229565b6103ba6103b536600461299a565b610f50565b60405161023d9190612a63565b6102296103d5366004612aae565b610f5d565b6102806103e8366004612898565b610fce565b6102295f516020612df45f395f51905f5281565b5f516020612df45f395f51905f52610229565b610292610422366004612898565b611021565b61043a6104353660046127b8565b61102d565b60405190516001600160a01b0316815260200161023d565b6103ba6104603660046128b3565b61109d565b610229610473366004612881565b61112e565b6103206104863660046127b8565b611154565b6102806104993660046128dd565b611175565b6102926104ac3660046128b3565b6111da565b61029268056bc75e2d6310000081565b6102926104cf3660046128b3565b6111e7565b6102806104e2366004612898565b61127f565b6102296112bc565b6105026104fd3660046128b3565b6112ca565b6040805193845291151560208401529082015260600161023d565b61053061052b3660046127b8565b61156a565b604080516001600160a01b039485168152921515602084015292169181019190915260600161023d565b6102926105683660046127b8565b6115bd565b5f61057a600384846115ca565b90505b92915050565b335f8181526002602052604090206004015460ff166105c6576040516319aaa75960e11b81526001600160a01b0390911660048201526024015b60405180910390fd5b50335f816105d26112bc565b6001600160a01b03161490508215806105e85750805b829061061357604051630cdce6bd60e11b81526001600160a01b0390911660048201526024016105bd565b5061061e8286611154565b158286909161065357604051630d75cd7760e11b81526001600160a01b039283166004820152911660248201526044016105bd565b505080158061067657506106745f516020612df45f395f51905f5286611154565b155b5f516020612df45f395f51905f529086906106b757604051630d75cd7760e11b81526001600160a01b039283166004820152911660248201526044016105bd565b505082156106d0575f516020612df45f395f51905f5291505b6001600160a01b0382165f9081526002602052604090206106f190866115f7565b8286909161072557604051630d75cd7760e11b81526001600160a01b039283166004820152911660248201526044016105bd565b505060408051602080820183526001600160a01b0387811683528581165f908152600283528481208a831682526003908101909352938420925183546001600160a01b03191691161790915561077c9084886115ca565b6001600160a01b03160361079757610797600383878161170a565b6107ad6003838768056bc75e2d631000006117cd565b6040516323b872dd60e01b815233600482015230602482015268056bc75e2d6310000060448201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906323b872dd906064016020604051808303815f875af1158015610825573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108499190612ae0565b505f61085d6006546001600160a01b031690565b60405163095ea7b360e01b81526001600160a01b03808316600483015268056bc75e2d6310000060248301529192507f00000000000000000000000000000000000000000000000000000000000000009091169063095ea7b3906044016020604051808303815f875af11580156108d6573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108fa9190612ae0565b506040516311f9fbc960e21b815230600482015268056bc75e2d6310000060248201526001600160a01b038216906347e7ef24906044015f604051808303815f87803b158015610948575f5ffd5b505af115801561095a573d5f5f3e3d5ffd5b50506040516001600160a01b038881168252808a169350861691507f7986a8ff398d9a6be88df9dfc6e3c9a83e4da5544241aad420d1cf7c214e43459060200160405180910390a3505050505050565b5f6109b5600361185c565b905090565b6001600160a01b0383165f9081526002602052604090206004015460ff168390610a03576040516330d32d8760e21b81526001600160a01b0390911660048201526024016105bd565b506001600160a01b038084165f9081526002602090815260408083208685168452600301909152902054168033808214610a6357604051630257d8d760e41b81526001600160a01b039283166004820152911660248201526044016105bd565b50610a739050600385858561170a565b50505050565b5f5f610a8d6006546001600160a01b031690565b90505f816001600160a01b0316636bd50cef6040518163ffffffff1660e01b815260040161012060405180830381865afa158015610acd573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610af19190612b9f565b51602001516040516323b872dd60e01b8152336004820152306024820152604481018290529091507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906323b872dd906064016020604051808303815f875af1158015610b69573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b8d9190612ae0565b5060405163095ea7b360e01b81526001600160a01b038381166004830152602482018390527f0000000000000000000000000000000000000000000000000000000000000000169063095ea7b3906044016020604051808303815f875af1158015610bfa573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c1e9190612ae0565b506040516311f9fbc960e21b8152306004820152602481018290526001600160a01b038316906347e7ef24906044015f604051808303815f87803b158015610c64575f5ffd5b505af1158015610c76573d5f5f3e3d5ffd5b50506040516330eb4bdd60e01b81526001600160a01b0388811660048301528781166024830152851692506330eb4bdd91506044016020604051808303815f875af1158015610cc7573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ceb9190612bba565b95945050505050565b5f610d076006546001600160a01b031690565b604051634527d8b560e11b8152600481018490529091506001600160a01b03821690638a4fb16a90602401608060405180830381865afa158015610d4d573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d719190612be1565b60600151610dcf5760405163f752f8b560e01b8152600481018390526001600160a01b0382169063f752f8b5906024015f604051808303815f87803b158015610db8575f5ffd5b505af1158015610dca573d5f5f3e3d5ffd5b505050505b5050565b5f80610de160038585611869565b9050836001600160a01b0316610df56112bc565b6001600160a01b03160361057a57610e1c60035f516020612df45f395f51905f5285611869565b610e269082612c68565b949350505050565b610e36611890565b806001600160a01b038116610e6a576040516327bac29760e21b81526001600160a01b0390911660048201526024016105bd565b506001600160a01b0381165f90815260026020526040902060040154819060ff1615610eb45760405162cea8b160e11b81526001600160a01b0390911660048201526024016105bd565b506001600160a01b0381165f908152600260205260409020600401805460ff19166001179055610ef8610ee6426118bc565b6001906001600160a01b0384166118f0565b505050565b5f61057d60038361190a565b6001600160a01b0382165f90815260046020908152604080832084845290915281205461057a565b610ef83384848461192d565b610f45611890565b610f4e5f6119cc565b565b6060610e26848385611a1b565b6040805160018082528183019092525f918291906020808301908036833701905050905083815f81518110610f9457610f94612c7b565b602002602001018181525050610fab858285611a1b565b5f81518110610fbc57610fbc612c7b565b60200260200101519150509392505050565b610fd6611890565b6006546001600160a01b031615610fff576040516296bb9f60e21b815260040160405180910390fd5b600680546001600160a01b0319166001600160a01b0392909216919091179055565b5f61057d600383611c0a565b60408051602081019091525f81525f5f6110478585611c2e565b50915091508061106857505060408051602081019091525f8152905061057d565b506001600160a01b038084165f9081526003909201602090815260409283902083519182019093529154168152905092915050565b60605f6110aa84846111e7565b90505f8167ffffffffffffffff8111156110c6576110c6612908565b6040519080825280602002602001820160405280156110ef578160200160208202803683370190505b5090505f5b82811015611122578082828151811061110f5761110f612c7b565b60209081029190910101526001016110f4565b50610ceb858286611a1b565b5f61057d61114661113e846118bc565b600190611d08565b6001600160e01b0316611d5e565b6001600160a01b0382165f90815260026020526040812061057a9083611d91565b5f61117f84611db2565b905061118a8161112e565b33906001600160a01b031681146111c057604051630cdce6bd60e11b81526001600160a01b0390911660048201526024016105bd565b50610a735f516020612df45f395f51905f5285858561192d565b5f61057a60038484611e3a565b6001600160a01b0382165f90815260026020526040812081611208846118bc565b90505f6112158383611e5f565b9050856001600160a01b031661122a8661112e565b6001600160a01b031603610ceb57732285ab0d1c133e619e2dc03d1ea98ae1741b1eb15f52600260205261126b5f516020612dd45f395f51905f5283611e5f565b6112759082612c68565b9695505050505050565b611287611890565b6001600160a01b0381166112b057604051631e4fbdf760e01b81525f60048201526024016105bd565b6112b9816119cc565b50565b5f6109b56111466001611e7a565b335f908152600260205260408120600401548190819060ff16339061130e576040516319aaa75960e11b81526001600160a01b0390911660048201526024016105bd565b50335f818152600260205260408120906113288289611d91565b9050801580156113505750826001600160a01b03166113456112bc565b6001600160a01b0316145b801561138a5750732285ab0d1c133e619e2dc03d1ea98ae1741b1eb15f52600260205261138a5f516020612dd45f395f51905f5289611d91565b156113cd575050732285ab0d1c133e619e2dc03d1ea98ae1741b1eb15f525060026020525f516020612df45f395f51905f525f516020612dd45f395f51905f5260015b87816113f85760405163417f3a0560e01b81526001600160a01b0390911660048201526024016105bd565b505f6114066003858b611869565b90508088808210156114345760405163047c4d8960e51b8152600481019290925260248201526044016105bd565b508890505f6802b5e3af16b188000061144d8385612c8f565b10905080156114c457611460858c611eb3565b8b9061148b576040516304ca9e7360e31b81526001600160a01b0390911660048201526024016105bd565b506001600160a01b038b165f90815260038087016020526040822080546001600160a01b03191690558493506114c49188908e9061170a565b6114d16003878d85611f14565b5f6114e46006546001600160a01b031690565b60405163625f849b60e11b8152336004820152602481018590526001600160a01b03919091169063c4bf0936906044016020604051808303815f875af1158015611530573d5f5f3e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115549190612bba565b92995090975090955050505050505b9250925092565b5f5f5f5f6115788686611c2e565b9094509250905082611593575f5f5f93509350935050611563565b6001600160a01b039485165f90815260039190910160205260409020549093169460019450915050565b5f61057a60038484611869565b6001600160a01b039182165f90815260209384526040808220928416825291909352909120600101541690565b6001600160a01b0381165f90815260028301602052604081205460ff161561162057505f61057d565b5f61162a84611e7a565b604080518082018252600181526001600160e01b0383811660208084019182526001600160a01b0389165f90815260028b019091529384209251835491516001600160e81b0319909216901515610100600160e81b03191617610100919092160217905590915061169a426118bc565b90506116d2816116b2866001600160a01b0316611f9b565b6001600160e01b0385165f908152600189016020526040902091906118f0565b506116fd9050816116f56116e7856001612ca2565b6001600160e01b0316611f9b565b8791906118f0565b5060019695505050505050565b5f6117168585856115ca565b9050816001600160a01b0316816001600160a01b0316036117375750610a73565b6001600160a01b038481165f908152602087815260408083208785168085529083529281902060010180546001600160a01b031916878616908117909155815194861685529184019190915290917f3134e8a2e6d97e929a7e54011ea5485d7d196dd5f0ba4d4ef95803e8e3fc257f910160405180910390a26117c68582846117c1898989611869565b611fce565b5050505050565b8015610a73576001600160a01b038084165f9081526020868152604080832093861683529083905281208054849290611807908490612c68565b90915550506001600160a01b038084165f90815260208390526040812060010154611836928892911685611fce565b6118436001820183612107565b5061185390506002860183612107565b50505050505050565b5f61057d82600201612181565b6001600160a01b039182165f90815260209384526040808220929093168152925290205490565b5f546001600160a01b03163314610f4e5760405163118cdaa760e01b81523360048201526024016105bd565b5f63ffffffff8211156118ec576040516306dfcc6560e41b815260206004820152602481018390526044016105bd565b5090565b5f806118fd85858561219a565b915091505b935093915050565b6001600160a01b0381165f90815260208390526040812061057a90600101612181565b5f61193784611db2565b90506119476003868684876122e2565b6006546001600160a01b031660405163350c7fbd60e11b8152600481018690526024810185905283151560448201526001600160a01b039190911690636a18ff7a906064016020604051808303815f875af11580156119a8573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610dca9190612ae0565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b60605f835167ffffffffffffffff811115611a3857611a38612908565b604051908082528060200260200182016040528015611a61578160200160208202803683370190505b506001600160a01b0386165f818152600260205260408120732285ab0d1c133e619e2dc03d1ea98ae1741b1eb182529293505f516020612dd45f395f51905f5291611aab8761112e565b6001600160a01b03161490505f611ac1876118bc565b90505f611ace8583611e5f565b90505f83611adc575f611ae6565b611ae68584611e5f565b90505f611af38284612c68565b90505f5b8b51811015611bf9575f8c8281518110611b1357611b13612c7b565b6020026020010151905082811081849091611b4a57604051635d4bf88360e01b8152600481019290925260248201526044016105bd565b505084811015611b9657611b5f8982886123ad565b8a8381518110611b7157611b71612c7b565b60200260200101906001600160a01b031690816001600160a01b031681525050611bf0565b8615611bb157611b5f611ba98683612c8f565b8990886123ad565b604051633d6a4a3b60e21b815260206004820152601360248201527229a427aaa622102722ab22a9102420a82822a760691b60448201526064016105bd565b50600101611af7565b50969b9a5050505050505050505050565b6001600160a01b0381165f90815260018084016020526040822061057a9101612181565b6001600160a01b0382165f9081526002602052604081208190819081611c548287611d91565b90508681158015611c7d5750876001600160a01b0316611c726112bc565b6001600160a01b0316145b8015611cb75750732285ab0d1c133e619e2dc03d1ea98ae1741b1eb15f526002602052611cb75f516020612dd45f395f51905f5288611d91565b15611cfa575050732285ab0d1c133e619e2dc03d1ea98ae1741b1eb15f525060026020525f516020612dd45f395f51905f5260015f516020612df45f395f51905f525b919450925090509250925092565b81545f9081611d1985858385612415565b90508015611d5457611d3d85611d30600184612c8f565b5f91825260209091200190565b5464010000000090046001600160e01b0316610ceb565b505f949350505050565b5f6001600160a01b038211156118ec576040516306dfcc6560e41b815260a06004820152602481018390526044016105bd565b6001600160a01b03165f908152600291909101602052604090205460ff1690565b5f61057d611dc86006546001600160a01b031690565b6001600160a01b031663c7f758a8846040518263ffffffff1660e01b8152600401611df591815260200190565b6101e060405180830381865afa158015611e11573d5f5f3e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611e359190612cf0565b612470565b6001600160a01b0382165f908152600180850160205260408220610e26910183612486565b5f611e6a8383611d08565b6001600160e01b03169392505050565b80545f908015611eaa57611e9383611d30600184612c8f565b5464010000000090046001600160e01b0316611eac565b5f5b9392505050565b6001600160a01b0381165f908152600283016020908152604080832081518083019092525460ff811615158083526101009091046001600160e01b03169282019290925290611f05575f91505061057d565b610e26848260200151856124c0565b8015610a73576001600160a01b038084165f9081526020868152604080832093861683529083905281208054849290611f4e908490612c8f565b90915550506001600160a01b038084165f90815260208390526040812060010154611f7e92889291169085611fce565b611f8b60018201836126d2565b50611853905060028601836126d2565b5f6001600160e01b038211156118ec576040516306dfcc6560e41b815260e06004820152602481018390526044016105bd565b816001600160a01b0316836001600160a01b03161480611fec575080155b610a73576001600160a01b03831615612079576001600160a01b0383165f90815260018086016020526040822082916120269101846126d2565b91509150846001600160a01b03167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a724838360405161206e929190918252602082015260400190565b60405180910390a250505b6001600160a01b03821615610a73576001600160a01b0382165f90815260018086016020526040822082916120af910184612107565b91509150836001600160a01b03167fdec2bacdd2f05b59de34da9b523dff8be42e5e38e818c82fdb0bae774387a72483836040516120f7929190918252602082015260400190565b60405180910390a2505050505050565b5f808061211385611e7a565b9050835f0361212f576001600160e01b0316915081905061217a565b5f61213985611f9b565b9050612159612147426118bc565b6121518385612ca2565b8891906118f0565b508290506121678282612ca2565b6001600160e01b03918216955016925050505b9250929050565b5f61218b82611e7a565b6001600160e01b031692915050565b82545f9081908015612289575f6121b687611d30600185612c8f565b805490915063ffffffff8082169164010000000090046001600160e01b03169088168211156121f857604051632520601d60e01b815260040160405180910390fd5b8763ffffffff168263ffffffff160361222c57825463ffffffff166401000000006001600160e01b0389160217835561227b565b6040805180820190915263ffffffff808a1682526001600160e01b03808a1660208085019182528d54600181018f555f8f81529190912094519151909216640100000000029216919091179101555b945085935061190292505050565b50506040805180820190915263ffffffff80851682526001600160e01b0380851660208085019182528854600181018a555f8a815291822095519251909316640100000000029190931617920191909155905081611902565b5f6122ee868685611e3a565b6001600160a01b0386165f90815260018801602090815260408083208884529091529020549091506123208382612c68565b821015868361232f8685612c68565b9091926123685760405163dd99c2ab60e01b81526001600160a01b039093166004840152602483019190915260448201526064016105bd565b5050506001600160a01b0386165f90815260018801602090815260408083208884529091528120805485929061239f908490612c68565b909155505050505050505050565b5f5f6123b98584611e5f565b905083818082106123e657604051636bc4db8d60e11b8152600481019290925260248201526044016105bd565b50505f84815260018601602052604081206124019085611d08565b9050611275816001600160e01b0316611d5e565b5f5b81831015612468575f61242a848461277f565b5f8781526020902090915063ffffffff86169082015463ffffffff16111561245457809250612462565b61245f816001612c68565b93505b50612417565b509392505050565b5f61057d8260800151835f015160200151612799565b5f61249082421190565b6124ad5760405163e34cb3b360e01b815260040160405180910390fd5b611e6a6124b9836118bc565b8490611d08565b5f806124cb85611e7a565b9050806001600160e01b0316846001600160e01b03161061251257604051636bc4db8d60e11b81526001600160e01b038086166004830152821660248201526044016105bd565b5f61251e600183612d95565b90505f612548611146886001015f856001600160e01b031681526020019081526020015f20611e7a565b90505f612554426118bc565b6040805180820182525f80825260208083018281526001600160a01b038c16835260028e019091529290209051815492516001600160e81b0319909316901515610100600160e81b031916176101006001600160e01b0393841602179055909150878116908416036125eb576001600160e01b0387165f90815260018901602052604081206125e49183906118f0565b50506126a4565b6040518060400160405280600115158152602001612611896001600160e01b0316611f9b565b6001600160e01b039081169091526001600160a01b0384165f81815260028c016020908152604090912084518154959092015190931661010002610100600160e81b0319911515919091166001600160e81b0319909416939093179290921790556126a190829061268190611f9b565b6001600160e01b038a165f90815260018c016020526040902091906118f0565b50505b6126c2816126ba856001600160e01b0316611f9b565b8a91906118f0565b5060019998505050505050505050565b5f80806126de85611e7a565b9050835f036126fa576001600160e01b0316915081905061217a565b5f61270485611f9b565b90503382826001600160e01b03808216908316101561275857604051631186c4ab60e31b81526001600160a01b0390931660048401526001600160e01b0391821660248401521660448201526064016105bd565b505050612771612767426118bc565b6121518385612d95565b508290506121678282612d95565b5f61278d6002848418612db4565b61057a90848416612c68565b5f61057a8284612c68565b6001600160a01b03811681146112b9575f5ffd5b5f5f604083850312156127c9575f5ffd5b82356127d4816127a4565b915060208301356127e4816127a4565b809150509250929050565b80151581146112b9575f5ffd5b5f5f5f6060848603121561280e575f5ffd5b8335612819816127a4565b92506020840135612829816127a4565b91506040840135612839816127ef565b809150509250925092565b5f5f5f60608486031215612856575f5ffd5b8335612861816127a4565b92506020840135612871816127a4565b91506040840135612839816127a4565b5f60208284031215612891575f5ffd5b5035919050565b5f602082840312156128a8575f5ffd5b813561057a816127a4565b5f5f604083850312156128c4575f5ffd5b82356128cf816127a4565b946020939093013593505050565b5f5f5f606084860312156128ef575f5ffd5b83359250602084013591506040840135612839816127ef565b634e487b7160e01b5f52604160045260245ffd5b604051610100810167ffffffffffffffff8111828210171561294057612940612908565b60405290565b6040805190810167ffffffffffffffff8111828210171561294057612940612908565b604051601f8201601f1916810167ffffffffffffffff8111828210171561299257612992612908565b604052919050565b5f5f5f606084860312156129ac575f5ffd5b83356129b7816127a4565b925060208401359150604084013567ffffffffffffffff8111156129d9575f5ffd5b8401601f810186136129e9575f5ffd5b803567ffffffffffffffff811115612a0357612a03612908565b8060051b612a1360208201612969565b91825260208184018101929081019089841115612a2e575f5ffd5b6020850194505b83851015612a5457843580835260209586019590935090910190612a35565b80955050505050509250925092565b602080825282518282018190525f918401906040840190835b81811015612aa35783516001600160a01b0316835260209384019390920191600101612a7c565b509095945050505050565b5f5f5f60608486031215612ac0575f5ffd5b8335612acb816127a4565b95602085013595506040909401359392505050565b5f60208284031215612af0575f5ffd5b815161057a816127ef565b5f818303610120811215612b0d575f5ffd5b612b1561291c565b91506040811215612b24575f5ffd5b50612b2d612946565b825181526020808401518183015290825260408084015191830191909152606080840151918301919091526080808401519183019190915260a0808401519183019190915260c0808401519183019190915260e080840151918301919091526101009092015191810191909152919050565b5f6101208284031215612bb0575f5ffd5b61057a8383612afb565b5f60208284031215612bca575f5ffd5b5051919050565b8051612bdc816127a4565b919050565b5f6080828403128015612bf2575f5ffd5b506040516080810167ffffffffffffffff81118282101715612c1657612c16612908565b60409081528351825260208085015190830152830151612c35816127a4565b60408201526060830151612c48816127ef565b60608201529392505050565b634e487b7160e01b5f52601160045260245ffd5b8082018082111561057d5761057d612c54565b634e487b7160e01b5f52603260045260245ffd5b8181038181111561057d5761057d612c54565b6001600160e01b03818116838216019081111561057d5761057d612c54565b5f60408284031215612cd1575f5ffd5b612cd9612946565b825181526020928301519281019290925250919050565b5f6101e0828403128015612d02575f5ffd5b5060405160c0810167ffffffffffffffff81118282101715612d2657612d26612908565b604052612d338484612afb565b815261012083015160088110612d47575f5ffd5b6020820152612d596101408401612bd1565b6040820152612d6b6101608401612bd1565b60608201526101808301516080820152612d89846101a08501612cc1565b60a08201529392505050565b6001600160e01b03828116828216039081111561057d5761057d612c54565b5f82612dce57634e487b7160e01b5f52601260045260245ffd5b50049056fe1ad22eb9644e69e66c5fa94a76fa877ebc3727e1093713f063f2b1e989b3acb794df5a0043f135e33cc3628b2285ab0d1c133e619e2dc03d1ea98ae1741b1eb1a26469706673582212206d6b9974ca8256601aef92b19622d46be30a0e52180bec64e3e5426a6928cce664736f6c634300081b0033";
4
4
  /**
5
5
  * GSE link references.
6
6
  */ export const GSELinkReferences = {};
@@ -15,6 +15,52 @@ export declare const GovernanceAbi: readonly [{
15
15
  readonly name: "_depositor";
16
16
  readonly type: "address";
17
17
  readonly internalType: "address";
18
+ }, {
19
+ readonly name: "_configuration";
20
+ readonly type: "tuple";
21
+ readonly internalType: "struct Configuration";
22
+ readonly components: readonly [{
23
+ readonly name: "proposeConfig";
24
+ readonly type: "tuple";
25
+ readonly internalType: "struct ProposeConfiguration";
26
+ readonly components: readonly [{
27
+ readonly name: "lockDelay";
28
+ readonly type: "uint256";
29
+ readonly internalType: "Timestamp";
30
+ }, {
31
+ readonly name: "lockAmount";
32
+ readonly type: "uint256";
33
+ readonly internalType: "uint256";
34
+ }];
35
+ }, {
36
+ readonly name: "votingDelay";
37
+ readonly type: "uint256";
38
+ readonly internalType: "Timestamp";
39
+ }, {
40
+ readonly name: "votingDuration";
41
+ readonly type: "uint256";
42
+ readonly internalType: "Timestamp";
43
+ }, {
44
+ readonly name: "executionDelay";
45
+ readonly type: "uint256";
46
+ readonly internalType: "Timestamp";
47
+ }, {
48
+ readonly name: "gracePeriod";
49
+ readonly type: "uint256";
50
+ readonly internalType: "Timestamp";
51
+ }, {
52
+ readonly name: "quorum";
53
+ readonly type: "uint256";
54
+ readonly internalType: "uint256";
55
+ }, {
56
+ readonly name: "voteDifferential";
57
+ readonly type: "uint256";
58
+ readonly internalType: "uint256";
59
+ }, {
60
+ readonly name: "minimumVotes";
61
+ readonly type: "uint256";
62
+ readonly internalType: "uint256";
63
+ }];
18
64
  }];
19
65
  readonly stateMutability: "nonpayable";
20
66
  }, {
@@ -1 +1 @@
1
- {"version":3,"file":"GovernanceAbi.d.ts","sourceRoot":"","sources":["../src/GovernanceAbi.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2qFhB,CAAC"}
1
+ {"version":3,"file":"GovernanceAbi.d.ts","sourceRoot":"","sources":["../src/GovernanceAbi.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsuFhB,CAAC"}
@@ -18,6 +18,65 @@
18
18
  "name": "_depositor",
19
19
  "type": "address",
20
20
  "internalType": "address"
21
+ },
22
+ {
23
+ "name": "_configuration",
24
+ "type": "tuple",
25
+ "internalType": "struct Configuration",
26
+ "components": [
27
+ {
28
+ "name": "proposeConfig",
29
+ "type": "tuple",
30
+ "internalType": "struct ProposeConfiguration",
31
+ "components": [
32
+ {
33
+ "name": "lockDelay",
34
+ "type": "uint256",
35
+ "internalType": "Timestamp"
36
+ },
37
+ {
38
+ "name": "lockAmount",
39
+ "type": "uint256",
40
+ "internalType": "uint256"
41
+ }
42
+ ]
43
+ },
44
+ {
45
+ "name": "votingDelay",
46
+ "type": "uint256",
47
+ "internalType": "Timestamp"
48
+ },
49
+ {
50
+ "name": "votingDuration",
51
+ "type": "uint256",
52
+ "internalType": "Timestamp"
53
+ },
54
+ {
55
+ "name": "executionDelay",
56
+ "type": "uint256",
57
+ "internalType": "Timestamp"
58
+ },
59
+ {
60
+ "name": "gracePeriod",
61
+ "type": "uint256",
62
+ "internalType": "Timestamp"
63
+ },
64
+ {
65
+ "name": "quorum",
66
+ "type": "uint256",
67
+ "internalType": "uint256"
68
+ },
69
+ {
70
+ "name": "voteDifferential",
71
+ "type": "uint256",
72
+ "internalType": "uint256"
73
+ },
74
+ {
75
+ "name": "minimumVotes",
76
+ "type": "uint256",
77
+ "internalType": "uint256"
78
+ }
79
+ ]
21
80
  }
22
81
  ],
23
82
  "stateMutability": "nonpayable"
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Governance bytecode.
3
3
  */
4
- export declare const GovernanceBytecode = "0x60a060405234801561000f575f5ffd5b50604051612e42380380612e4283398101604081905261002e916105e8565b826001600160a01b03166080816001600160a01b031681525050815f5f6101000a8154816001600160a01b0302191690836001600160a01b03160217905550604051806101000160405280604051806040016040528062278d00815260200169d3c21bcecceda10000008152508152602001603c8152602001610e108152602001603c815260200162093a80815260200167016345785d8a00008152602001668e1bc9bf04000081526020016815af1d78b58c40000081525060075f820151815f015f820151815f01556020820151816001015550506020820151816002015560408201518160030155606082015181600401556080820151816005015560a0820151816006015560c0820151816007015560e082015181600801559050506101d56007604051806101000160405290815f82016040518060400160405290815f8201548152602001600182015481525050815260200160028201548152602001600382015481526020016004820154815260200160058201548152602001600682015481526020016007820154815260200160088201548152505061024060201b60201c565b506002805460ff199081169091556001600160a01b0382165f818152600160208181526040928390208054909516909117909355519081527f5eea62661ac9a33be3f9320ecd60878cd5e92025ffec0f2e9969d2448b497eda910160405180910390a1505050610632565b5f60018260a0015110156102675760405163245ca84960e11b815260040160405180910390fd5b670de0b6b3a76400008260a00151111561029457604051637a9fd76760e11b815260040160405180910390fd5b670de0b6b3a76400008260c0015111156102c1576040516306e2083d60e41b815260040160405180910390fd5b60018260e0015110156102e75760405163505c925360e11b815260040160405180910390fd5b8151602001516001111561030e5760405163ec4abc2f60e01b815260040160405180910390fd5b815151603c1115610353576040516302b2633f60e21b81526020600482015260096024820152684c6f636b44656c617960b81b60448201526064015b60405180910390fd5b81515162278d00101561039557604051637ac6b2f960e11b81526020600482015260096024820152684c6f636b44656c617960b81b604482015260640161034a565b6020820151603c11156103d9576040516302b2633f60e21b815260206004820152600b60248201526a566f74696e6744656c617960a81b604482015260640161034a565b602082015162278d00101561041f57604051637ac6b2f960e11b815260206004820152600b60248201526a566f74696e6744656c617960a81b604482015260640161034a565b6040820151603c1115610466576040516302b2633f60e21b815260206004820152600e60248201526d2b37ba34b733a23ab930ba34b7b760911b604482015260640161034a565b604082015162278d0010156104af57604051637ac6b2f960e11b815260206004820152600e60248201526d2b37ba34b733a23ab930ba34b7b760911b604482015260640161034a565b6060820151603c11156104f6576040516302b2633f60e21b815260206004820152600e60248201526d457865637574696f6e44656c617960901b604482015260640161034a565b606082015162278d00101561053f57604051637ac6b2f960e11b815260206004820152600e60248201526d457865637574696f6e44656c617960901b604482015260640161034a565b6080820151603c1115610583576040516302b2633f60e21b815260206004820152600b60248201526a11dc9858d954195c9a5bd960aa1b604482015260640161034a565b608082015162278d0010156105c957604051637ac6b2f960e11b815260206004820152600b60248201526a11dc9858d954195c9a5bd960aa1b604482015260640161034a565b506001919050565b6001600160a01b03811681146105e5575f5ffd5b50565b5f5f5f606084860312156105fa575f5ffd5b8351610605816105d1565b6020850151909350610616816105d1565b6040850151909250610627816105d1565b809150509250925092565b6080516127e361065f5f395f81816102020152818161072201528181610e64015261100201526127e35ff3fe608060405234801561000f575f5ffd5b506004361061016d575f3560e01c80638a4fb16a116100d9578063da35c66411610093578063f944a3111161006e578063f944a31114610448578063fc8acba214610453578063fe0d94c114610466578063fe7f0e8b14610479575f5ffd5b8063da35c66414610419578063edb884e914610422578063f752f8b514610435575f5ffd5b80638a4fb16a146102de5780639080936f146103a1578063b907c0ea146103c1578063c3a50515146103d4578063c4bf0936146103e6578063c7f758a8146103f9575f5ffd5b80634800d97f1161012a5780634800d97f146101fd5780636a18ff7a1461023c5780636bd50cef1461024f5780636f13248d1461026457806371706cbe1461028f5780637f7bc23a14610298575f5ffd5b80630126795114610171578063083b42461461019757806330eb4bdd146101ba5780633b8f880d146101cd5780633d24e054146101e057806347e7ef24146101ea575b5f5ffd5b61018461017f3660046121ed565b61048c565b6040519081526020015b60405180910390f35b6101aa6101a5366004612208565b6104f0565b604051901515815260200161018e565b6101846101c836600461221f565b610586565b6101846101db366004612256565b610609565b6101e8610660565b005b6101e86101f8366004612256565b6106ce565b6102247f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200161018e565b6101aa61024a366004612280565b6107c0565b610257610973565b60405161018e9190612316565b6101aa6102723660046121ed565b6001600160a01b03165f9081526001602052604090205460ff1690565b61018460125481565b6102c96102a6366004612325565b600460209081525f92835260408084209091529082529020805460019091015482565b6040805192835260208301919091520161018e565b6103636102ec366004612208565b604080516080810182525f808252602082018190529181018290526060810191909152505f90815260066020908152604091829020825160808101845281548152600182015492810192909252600201546001600160a01b03811692820192909252600160a01b90910460ff161515606082015290565b60405161018e919081518152602080830151908201526040808301516001600160a01b03169082015260609182015115159181019190915260800190565b6103b46103af366004612208565b6109da565b60405161018e919061237c565b6101e86103cf3660046121ed565b610b36565b5f54610224906001600160a01b031681565b6101846103f4366004612256565b610bb4565b61040c610407366004612208565b610bc9565b60405161018e919061238a565b61018460115481565b6101e861043036600461248c565b610ce6565b6101e8610443366004612208565b610d99565b60025460ff166101aa565b6101e86104613660046121ed565b610e92565b6101aa610474366004612208565b610f23565b610184610487366004612208565b61118a565b5f805433906001600160a01b03168181146104d2576040516307aa341360e31b81526001600160a01b039283166004820152911660248201526044015b60405180910390fd5b50505f546104ea9083906001600160a01b03166111a7565b92915050565b5f8181526003602052604081206006600982015460ff16600781111561051857610518612348565b0361053657604051630595c07760e51b815260040160405180910390fd5b6006610541846109da565b600781111561055257610552612348565b14610570576040516308adbf2160e01b815260040160405180910390fd5b600901805460ff19166006179055506001919050565b335f908152600560205260408120819061059f906113b5565b600854909150338282818111156105e257604051631186c4ab60e31b81526001600160a01b039093166004840152602483019190915260448201526064016104c9565b50506007546105f59150859083906113ce565b5061060085306111a7565b95945050505050565b5f428203610638576001600160a01b0383165f908152600560205260409020610631906113b5565b90506104ea565b6001600160a01b0383165f90815260056020526040902061065990836114ce565b9392505050565b33308181146106955760405163f18e42a160e01b81526001600160a01b039283166004820152911660248201526044016104c9565b50506002805460ff191660011790556040517f8d67419becc56dd5daf39212ee5e2cb8d9c40cf1184863a77318db110bfc77d9905f90a1565b600254829060ff16806106f857506001600160a01b0381165f9081526001602052604090205460ff165b61071557604051636c26e61960e01b815260040160405180910390fd5b61074a6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016333085611518565b6001600160a01b0383165f90815260056020526040902061076b9083611585565b506107799050601083611585565b50506040518281526001600160a01b0384169033907f5548c837ab068cf56a2c2479df0882a4922fd203edb7517321831d95078c5f629060200160405180910390a3505050565b5f5f6107cb856109da565b905060018160078111156107e1576107e1612348565b146107ff57604051632d85b5cb60e01b815260040160405180910390fd5b5f85815260036020526040812061082d90610819906115ff565b335f908152600560205260409020906114ce565b5f878152600460209081526040808320338452909152812080546001820154939450909261085b9190612546565b6108659084612559565b9050338188818111156108a457604051631186c4ab60e31b81526001600160a01b039093166004840152602483019190915260448201526064016104c9565b5050505f888152600360205260409020600c0186156108f25787835f015f8282546108cf9190612546565b90915550508054889082905f906108e7908490612546565b909155506109259050565b87836001015f8282546109059190612546565b9250508190555087816001015f82825461091f9190612546565b90915550505b604080518815158152602081018a905233918b917fcbdf6214089cba887ecbf35a0b6a734589959c9763342c756bb2a80ca2bc9f6e910160405180910390a350600198975050505050505050565b61097b612124565b506040805161014081018252600754610100820190815260085461012083015281526009546020820152600a5491810191909152600b546060820152600c546080820152600d5460a0820152600e5460c0820152600f5460e082015290565b5f60115482108290610a02576040516320c68f5560e21b81526004016104c991815260200190565b505f828152600360205260409020610a1981611614565b15610a2b576009015460ff1692915050565b600a8101545f546001600160a01b03908116911614801590610a5a5750600a8101546001600160a01b03163014155b15610a685750600692915050565b42610a7b81610a76846115ff565b101590565b15610a8957505f9392505050565b610a9681610a7684611655565b15610aa5575060019392505050565b5f610aba610ab2846115ff565b6010906114ce565b90505f610ac7848361166c565b5090505f816002811115610add57610add612348565b14610aee5750600495945050505050565b610afb83610a76866117b0565b15610b0c5750600295945050505050565b610b1983610a76866117c7565b15610b2a5750600395945050505050565b50600795945050505050565b3330818114610b6b5760405163f18e42a160e01b81526001600160a01b039283166004820152911660248201526044016104c9565b50505f80546001600160a01b0319166001600160a01b038316908117825560405190917f58b9023fe926532b1c6a397a00102fcce3ac81725a232d9d235104cd1a28e43291a250565b5f6106598383610bc460076117de565b6113ce565b610bd1612174565b5f828152600360208181526040928390208351610200810190945280546101c0850190815260018201546101e086015260c08501908152600282015460e08601529281015461010085015260048101546101208501526005810154610140850152600681015461016085015260078082015461018086015260088201546101a0860152928452600981015490929184019160ff90911690811115610c7757610c77612348565b6007811115610c8857610c88612348565b815260098201546001600160a01b036101009091048116602080840191909152600a840154909116604080840191909152600b84015460608401528051808201909152600c8401548152600d90930154908301526080015292915050565b3330818114610d1b5760405163f18e42a160e01b81526001600160a01b039283166004820152911660248201526044016104c9565b5050610d268161180a565b5080518051600755602090810151600855810151600955604080820151600a556060820151600b556080820151600c5560a0820151600d5560c0820151600e5560e0820151600f555142907f7d096a764e5ea306d0946e3a05ca9ffd9ea0af82aecf12cf8eee26b2485f9a0c905f90a250565b5f8181526006602052604090206002810154600160a01b900460ff1615610dd3576040516321e3810d60e01b815260040160405180910390fd5b610de1428260010154111590565b60018201544291610e0e57604051630d02d71b60e21b8152600481019290925260248201526044016104c9565b505060028101805460ff60a01b1916600160a01b17905560405182907fc55414f0020bbb9a6427d371f8c17b59299e683de70d4e659e061bb9ba303d9f905f90a260028101548154610e8e916001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000811692911690611b96565b5050565b3330818114610ec75760405163f18e42a160e01b81526001600160a01b039283166004820152911660248201526044016104c9565b50506001600160a01b0381165f81815260016020818152604092839020805460ff191690921790915590519182527f5eea62661ac9a33be3f9320ecd60878cd5e92025ffec0f2e9969d2448b497eda910160405180910390a150565b5f5f610f2e836109da565b90506003816007811115610f4457610f44612348565b14610f625760405163b6ae35c160e01b815260040160405180910390fd5b5f83815260036020526040808220600981018054600560ff199091161790819055825163504d080b60e01b815292519193926101009091046001600160a01b03169163504d080b9160048082019286929091908290030181865afa158015610fcc573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610ff3919081019061256c565b90505f5b8151811015611154577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031682828151811061103c5761103c6126e5565b60200260200101515f01516001600160a01b03160361106e576040516304f6c78960e21b815260040160405180910390fd5b5f828281518110611081576110816126e5565b60200260200101515f01516001600160a01b03168383815181106110a7576110a76126e5565b6020026020010151602001516040516110c091906126f9565b5f604051808303815f865af19150503d805f81146110f9576040519150601f19603f3d011682016040523d82523d5f602084013e6110fe565b606091505b5050905080838381518110611115576111156126e5565b60200260200101515f01519061114a57604051633cb8c30160e01b81526001600160a01b0390911660048201526024016104c9565b5050600101610ff7565b5060405185907f712ae1383f79ac853f8d882153778e0260ef8f03b504e2866e0593e04d2b291f905f90a2506001949350505050565b5f42820361119c576104ea60106113b5565b6104ea6010836114ce565b601180545f91829190826111ba8361270f565b909155506040805161020081019091526007546101c082019081526008546101e083015260c0820190815260095460e0830152600a54610100830152600b54610120830152600c54610140830152600d54610160830152600e54610180830152600f546101a08301528152909150602081015f8152602001856001600160a01b03168152602001846001600160a01b0316815260200142815260200160405180604001604052805f81526020015f81525081525060035f8381526020019081526020015f205f820151815f015f820151815f015f820151815f01556020820151816001015550506020820151816002015560408201518160030155606082015181600401556080820151816005015560a0820151816006015560c0820151816007015560e0820151816008015550506020820151816009015f6101000a81548160ff0219169083600781111561131257611312612348565b0217905550604082810151600983018054610100600160a81b0319166101006001600160a01b03938416021790556060840151600a840180546001600160a01b0319169183169190911790556080840151600b84015560a0909301518051600c84015560200151600d90920191909155519085169082907faa9a4d6243341331785569c732ffe9c81a3e9c2aafa58faab1afe4797668433f905f90a39392505050565b5f6113bf82611bcc565b6001600160e01b031692915050565b335f9081526005602052604081206113e69084611c11565b506113f49050601084611c11565b5050601280545f91826114068361270f565b91905055905060405180608001604052808581526020016114274286611cbe565b81526001600160a01b0380881660208084018290525f6040948501819052868152600682528490208551815590850151600182015584840151600290910180546060909601511515600160a01b026001600160a81b031990961691909316179390931790555182907f35572b4263de54e794ffcb886cb01a64870892fe896854fd2ca93810d5c66f7e906114be9088815260200190565b60405180910390a3949350505050565b5f6114d882421190565b6114f55760405163e34cb3b360e01b815260040160405180910390fd5b61150861150183611cc9565b8490611cfd565b6001600160e01b03169392505050565b6040516001600160a01b03848116602483015283811660448301526064820183905261157f9186918216906323b872dd906084015b604051602081830303815290604052915060e01b6020820180516001600160e01b038381831617835250505050611d46565b50505050565b5f808061159185611bcc565b9050835f036115ad576001600160e01b031691508190506115f8565b5f6115b785611db2565b90506115d76115c542611cc9565b6115cf8385612727565b889190611de5565b508290506115e58282612727565b6001600160e01b03918216955016925050505b9250929050565b5f6104ea82600b0154835f0160020154611cbe565b60098101545f9060ff16600581600781111561163257611632612348565b14806106595750600681600781111561164d5761164d612348565b149392505050565b5f6104ea611662836115ff565b6003840154611cbe565b5f5f835f01600801545f036116865750600290505f6115f8565b600884015483101561169d575060019050806115f8565b5f6116b984865f0160060154670de0b6b3a76400006001611dff565b9050805f036116cf5760028092509250506115f8565b838111156116e5576002600392509250506115f8565b600c850154600d8601545f916116fa91612546565b90508181101561171357600160049350935050506115f8565b600c86015481900361172d575f60089350935050506115f8565b60078601545f906117519061174a90670de0b6b3a7640000612546565b6002611e41565b90505f6117698383670de0b6b3a76400006001611dff565b905082811115611784576002600695509550505050506115f8565b600c88015481106117a0576001600995509550505050506115f8565b505f97600a975095505050505050565b5f6104ea6117bd83611655565b6004840154611cbe565b5f6104ea6117d4836117b0565b6005840154611cbe565b5f6104ea611800600584600201546117f6919061275a565b8460030154611cbe565b8360040154611cbe565b5f60018260a0015110156118315760405163245ca84960e11b815260040160405180910390fd5b670de0b6b3a76400008260a00151111561185e57604051637a9fd76760e11b815260040160405180910390fd5b670de0b6b3a76400008260c00151111561188b576040516306e2083d60e41b815260040160405180910390fd5b60018260e0015110156118b15760405163505c925360e11b815260040160405180910390fd5b815160200151600111156118d85760405163ec4abc2f60e01b815260040160405180910390fd5b815151603c1115611918576040516302b2633f60e21b81526020600482015260096024820152684c6f636b44656c617960b81b60448201526064016104c9565b81515162278d00101561195a57604051637ac6b2f960e11b81526020600482015260096024820152684c6f636b44656c617960b81b60448201526064016104c9565b6020820151603c111561199e576040516302b2633f60e21b815260206004820152600b60248201526a566f74696e6744656c617960a81b60448201526064016104c9565b602082015162278d0010156119e457604051637ac6b2f960e11b815260206004820152600b60248201526a566f74696e6744656c617960a81b60448201526064016104c9565b6040820151603c1115611a2b576040516302b2633f60e21b815260206004820152600e60248201526d2b37ba34b733a23ab930ba34b7b760911b60448201526064016104c9565b604082015162278d001015611a7457604051637ac6b2f960e11b815260206004820152600e60248201526d2b37ba34b733a23ab930ba34b7b760911b60448201526064016104c9565b6060820151603c1115611abb576040516302b2633f60e21b815260206004820152600e60248201526d457865637574696f6e44656c617960901b60448201526064016104c9565b606082015162278d001015611b0457604051637ac6b2f960e11b815260206004820152600e60248201526d457865637574696f6e44656c617960901b60448201526064016104c9565b6080820151603c1115611b48576040516302b2633f60e21b815260206004820152600b60248201526a11dc9858d954195c9a5bd960aa1b60448201526064016104c9565b608082015162278d001015611b8e57604051637ac6b2f960e11b815260206004820152600b60248201526a11dc9858d954195c9a5bd960aa1b60448201526064016104c9565b506001919050565b6040516001600160a01b03838116602483015260448201839052611bc791859182169063a9059cbb9060640161154d565b505050565b80545f908015611c0957611bf283611be5600184612559565b5f91825260209091200190565b5464010000000090046001600160e01b0316610659565b5f9392505050565b5f8080611c1d85611bcc565b9050835f03611c39576001600160e01b031691508190506115f8565b5f611c4385611db2565b90503382826001600160e01b038082169083161015611c9757604051631186c4ab60e31b81526001600160a01b0390931660048401526001600160e01b0391821660248401521660448201526064016104c9565b505050611cb0611ca642611cc9565b6115cf838561276d565b508290506115e5828261276d565b5f6106598284612546565b5f63ffffffff821115611cf9576040516306dfcc6560e41b815260206004820152602481018390526044016104c9565b5090565b81545f9081611d0e85858385611e74565b90508015611d3c57611d2585611be5600184612559565b5464010000000090046001600160e01b0316610600565b505f949350505050565b5f5f60205f8451602086015f885af180611d65576040513d5f823e3d81fd5b50505f513d91508115611d7c578060011415611d89565b6001600160a01b0384163b155b1561157f57604051635274afe760e01b81526001600160a01b03851660048201526024016104c9565b5f6001600160e01b03821115611cf9576040516306dfcc6560e41b815260e06004820152602481018390526044016104c9565b5f80611df2858585611ecf565b915091505b935093915050565b5f611e2c611e0c83612017565b8015611e2757505f8480611e2257611e22612746565b868809115b151590565b611e37868686612043565b6106009190612546565b5f815f03611e5357611e5360126120f9565b816001840381611e6557611e65612746565b04600101831515029392505050565b5f5b81831015611ec7575f611e89848461210a565b5f8781526020902090915063ffffffff86169082015463ffffffff161115611eb357809250611ec1565b611ebe816001612546565b93505b50611e76565b509392505050565b82545f9081908015611fbe575f611eeb87611be5600185612559565b805490915063ffffffff8082169164010000000090046001600160e01b0316908816821115611f2d57604051632520601d60e01b815260040160405180910390fd5b8763ffffffff168263ffffffff1603611f6157825463ffffffff166401000000006001600160e01b03891602178355611fb0565b6040805180820190915263ffffffff808a1682526001600160e01b03808a1660208085019182528d54600181018f555f8f81529190912094519151909216640100000000029216919091179101555b9450859350611df792505050565b50506040805180820190915263ffffffff80851682526001600160e01b0380851660208085019182528854600181018a555f8a815291822095519251909316640100000000029190931617920191909155905081611df7565b5f600282600381111561202c5761202c612348565b612036919061278c565b60ff166001149050919050565b5f838302815f1985870982811083820303915050805f036120775783828161206d5761206d612746565b0492505050610659565b80841161208e5761208e60038515026011186120f9565b5f848688095f868103871696879004966002600389028118808a02820302808a02820302808a02820302808a02820302808a02820302808a02909103029181900381900460010186841190950394909402919094039290920491909117919091029150509392505050565b634e487b715f52806020526024601cfd5b5f612118600284841861275a565b61065990848416612546565b6040805161014081019091525f6101008201818152610120830191909152819081526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b6040518060c00160405280612187612124565b81526020015f81526020015f6001600160a01b031681526020015f6001600160a01b031681526020015f81526020016121d160405180604001604052805f81526020015f81525090565b905290565b6001600160a01b03811681146121ea575f5ffd5b50565b5f602082840312156121fd575f5ffd5b8135610659816121d6565b5f60208284031215612218575f5ffd5b5035919050565b5f5f60408385031215612230575f5ffd5b823561223b816121d6565b9150602083013561224b816121d6565b809150509250929050565b5f5f60408385031215612267575f5ffd5b8235612272816121d6565b946020939093013593505050565b5f5f5f60608486031215612292575f5ffd5b8335925060208401359150604084013580151581146122af575f5ffd5b809150509250925092565b8051805183526020810151602084015250602081015160408301526040810151606083015260608101516080830152608081015160a083015260a081015160c083015260c081015160e083015260e08101516101008301525050565b61012081016104ea82846122ba565b5f5f60408385031215612336575f5ffd5b82359150602083013561224b816121d6565b634e487b7160e01b5f52602160045260245ffd5b6008811061237857634e487b7160e01b5f52602160045260245ffd5b9052565b602081016104ea828461235c565b5f6101e08201905061239d8284516122ba565b60208301516123b061012084018261235c565b5060408301516001600160a01b03908116610140840152606084015116610160830152608083015161018083015260a09092015180516101a0830152602001516101c09091015290565b634e487b7160e01b5f52604160045260245ffd5b604051610100810167ffffffffffffffff81118282101715612432576124326123fa565b60405290565b6040805190810167ffffffffffffffff81118282101715612432576124326123fa565b604051601f8201601f1916810167ffffffffffffffff81118282101715612484576124846123fa565b604052919050565b5f8183036101208112801561249f575f5ffd5b506124a861240e565b60408212156124b5575f5ffd5b6124bd612438565b843581526020808601358183015290825260408086013591830191909152606080860135918301919091526080808601359183019190915260a0808601359183019190915260c0808601359183019190915260e080860135918301919091526101009094013593810193909352509092915050565b634e487b7160e01b5f52601160045260245ffd5b808201808211156104ea576104ea612532565b818103818111156104ea576104ea612532565b5f6020828403121561257c575f5ffd5b815167ffffffffffffffff811115612592575f5ffd5b8201601f810184136125a2575f5ffd5b805167ffffffffffffffff8111156125bc576125bc6123fa565b8060051b6125cc6020820161245b565b918252602081840181019290810190878411156125e7575f5ffd5b6020850192505b838310156126da57825167ffffffffffffffff81111561260c575f5ffd5b85016040818a03601f19011215612621575f5ffd5b612629612438565b6020820151612637816121d6565b8152604082015167ffffffffffffffff811115612652575f5ffd5b60208184010192505089601f830112612669575f5ffd5b815167ffffffffffffffff811115612683576126836123fa565b612696601f8201601f191660200161245b565b8181528b60208386010111156126aa575f5ffd5b8160208501602083015e5f60208383010152806020840152505080845250506020820191506020830192506125ee565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b5f82518060208501845e5f920191825250919050565b5f6001820161272057612720612532565b5060010190565b6001600160e01b0381811683821601908111156104ea576104ea612532565b634e487b7160e01b5f52601260045260245ffd5b5f8261276857612768612746565b500490565b6001600160e01b0382811682821603908111156104ea576104ea612532565b5f60ff83168061279e5761279e612746565b8060ff8416069150509291505056fea2646970667358221220f1b41db6f64d040a42c21569ad97e623aa90ef85fabb653d35528566521ee2c664736f6c634300081b0033";
4
+ export declare const GovernanceBytecode = "0x60a060405234801561000f575f5ffd5b50604051612ed5380380612ed583398101604081905261002e916105d3565b836001600160a01b03166080816001600160a01b031681525050825f5f6101000a8154816001600160a01b0302191690836001600160a01b031602179055508060075f820151815f015f820151815f01556020820151816001015550506020820151816002015560408201518160030155606082015181600401556080820151816005015560a0820151816006015560c0820151816007015560e0820151816008015590505061015c6007604051806101000160405290815f82016040518060400160405290815f820154815260200160018201548152505081526020016002820154815260200160038201548152602001600482015481526020016005820154815260200160068201548152602001600782015481526020016008820154815250506101c860201b60201c565b506002805460ff199081169091556001600160a01b0383165f818152600160208181526040928390208054909516909117909355519081527f5eea62661ac9a33be3f9320ecd60878cd5e92025ffec0f2e9969d2448b497eda910160405180910390a1505050506106c5565b5f60018260a0015110156101ef5760405163245ca84960e11b815260040160405180910390fd5b670de0b6b3a76400008260a00151111561021c57604051637a9fd76760e11b815260040160405180910390fd5b670de0b6b3a76400008260c001511115610249576040516306e2083d60e41b815260040160405180910390fd5b60018260e00151101561026f5760405163505c925360e11b815260040160405180910390fd5b815160200151600111156102965760405163ec4abc2f60e01b815260040160405180910390fd5b815151603c11156102db576040516302b2633f60e21b81526020600482015260096024820152684c6f636b44656c617960b81b60448201526064015b60405180910390fd5b81515162278d00101561031d57604051637ac6b2f960e11b81526020600482015260096024820152684c6f636b44656c617960b81b60448201526064016102d2565b6020820151603c1115610361576040516302b2633f60e21b815260206004820152600b60248201526a566f74696e6744656c617960a81b60448201526064016102d2565b602082015162278d0010156103a757604051637ac6b2f960e11b815260206004820152600b60248201526a566f74696e6744656c617960a81b60448201526064016102d2565b6040820151603c11156103ee576040516302b2633f60e21b815260206004820152600e60248201526d2b37ba34b733a23ab930ba34b7b760911b60448201526064016102d2565b604082015162278d00101561043757604051637ac6b2f960e11b815260206004820152600e60248201526d2b37ba34b733a23ab930ba34b7b760911b60448201526064016102d2565b6060820151603c111561047e576040516302b2633f60e21b815260206004820152600e60248201526d457865637574696f6e44656c617960901b60448201526064016102d2565b606082015162278d0010156104c757604051637ac6b2f960e11b815260206004820152600e60248201526d457865637574696f6e44656c617960901b60448201526064016102d2565b6080820151603c111561050b576040516302b2633f60e21b815260206004820152600b60248201526a11dc9858d954195c9a5bd960aa1b60448201526064016102d2565b608082015162278d00101561055157604051637ac6b2f960e11b815260206004820152600b60248201526a11dc9858d954195c9a5bd960aa1b60448201526064016102d2565b506001919050565b6001600160a01b038116811461056d575f5ffd5b50565b60405161010081016001600160401b038111828210171561059f57634e487b7160e01b5f52604160045260245ffd5b60405290565b604080519081016001600160401b038111828210171561059f57634e487b7160e01b5f52604160045260245ffd5b5f5f5f5f8486036101808112156105e8575f5ffd5b85516105f381610559565b602087015190955061060481610559565b604087015190945061061581610559565b9250605f1901610120811215610629575f5ffd5b610631610570565b604082121561063e575f5ffd5b6106466105a5565b60608881015182526080808a015160208085019190915292845260a0808b01519385019390935260c0808b0151604086015260e0808c0151938601939093526101008b0151918501919091526101208a015192840192909252610140890151918301919091526101609097015196810196909652509295919450929150565b6080516127e36106f25f395f81816102020152818161072201528181610e64015261100201526127e35ff3fe608060405234801561000f575f5ffd5b506004361061016d575f3560e01c80638a4fb16a116100d9578063da35c66411610093578063f944a3111161006e578063f944a31114610448578063fc8acba214610453578063fe0d94c114610466578063fe7f0e8b14610479575f5ffd5b8063da35c66414610419578063edb884e914610422578063f752f8b514610435575f5ffd5b80638a4fb16a146102de5780639080936f146103a1578063b907c0ea146103c1578063c3a50515146103d4578063c4bf0936146103e6578063c7f758a8146103f9575f5ffd5b80634800d97f1161012a5780634800d97f146101fd5780636a18ff7a1461023c5780636bd50cef1461024f5780636f13248d1461026457806371706cbe1461028f5780637f7bc23a14610298575f5ffd5b80630126795114610171578063083b42461461019757806330eb4bdd146101ba5780633b8f880d146101cd5780633d24e054146101e057806347e7ef24146101ea575b5f5ffd5b61018461017f3660046121ed565b61048c565b6040519081526020015b60405180910390f35b6101aa6101a5366004612208565b6104f0565b604051901515815260200161018e565b6101846101c836600461221f565b610586565b6101846101db366004612256565b610609565b6101e8610660565b005b6101e86101f8366004612256565b6106ce565b6102247f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b03909116815260200161018e565b6101aa61024a366004612280565b6107c0565b610257610973565b60405161018e9190612316565b6101aa6102723660046121ed565b6001600160a01b03165f9081526001602052604090205460ff1690565b61018460125481565b6102c96102a6366004612325565b600460209081525f92835260408084209091529082529020805460019091015482565b6040805192835260208301919091520161018e565b6103636102ec366004612208565b604080516080810182525f808252602082018190529181018290526060810191909152505f90815260066020908152604091829020825160808101845281548152600182015492810192909252600201546001600160a01b03811692820192909252600160a01b90910460ff161515606082015290565b60405161018e919081518152602080830151908201526040808301516001600160a01b03169082015260609182015115159181019190915260800190565b6103b46103af366004612208565b6109da565b60405161018e919061237c565b6101e86103cf3660046121ed565b610b36565b5f54610224906001600160a01b031681565b6101846103f4366004612256565b610bb4565b61040c610407366004612208565b610bc9565b60405161018e919061238a565b61018460115481565b6101e861043036600461248c565b610ce6565b6101e8610443366004612208565b610d99565b60025460ff166101aa565b6101e86104613660046121ed565b610e92565b6101aa610474366004612208565b610f23565b610184610487366004612208565b61118a565b5f805433906001600160a01b03168181146104d2576040516307aa341360e31b81526001600160a01b039283166004820152911660248201526044015b60405180910390fd5b50505f546104ea9083906001600160a01b03166111a7565b92915050565b5f8181526003602052604081206006600982015460ff16600781111561051857610518612348565b0361053657604051630595c07760e51b815260040160405180910390fd5b6006610541846109da565b600781111561055257610552612348565b14610570576040516308adbf2160e01b815260040160405180910390fd5b600901805460ff19166006179055506001919050565b335f908152600560205260408120819061059f906113b5565b600854909150338282818111156105e257604051631186c4ab60e31b81526001600160a01b039093166004840152602483019190915260448201526064016104c9565b50506007546105f59150859083906113ce565b5061060085306111a7565b95945050505050565b5f428203610638576001600160a01b0383165f908152600560205260409020610631906113b5565b90506104ea565b6001600160a01b0383165f90815260056020526040902061065990836114ce565b9392505050565b33308181146106955760405163f18e42a160e01b81526001600160a01b039283166004820152911660248201526044016104c9565b50506002805460ff191660011790556040517f8d67419becc56dd5daf39212ee5e2cb8d9c40cf1184863a77318db110bfc77d9905f90a1565b600254829060ff16806106f857506001600160a01b0381165f9081526001602052604090205460ff165b61071557604051636c26e61960e01b815260040160405180910390fd5b61074a6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016333085611518565b6001600160a01b0383165f90815260056020526040902061076b9083611585565b506107799050601083611585565b50506040518281526001600160a01b0384169033907f5548c837ab068cf56a2c2479df0882a4922fd203edb7517321831d95078c5f629060200160405180910390a3505050565b5f5f6107cb856109da565b905060018160078111156107e1576107e1612348565b146107ff57604051632d85b5cb60e01b815260040160405180910390fd5b5f85815260036020526040812061082d90610819906115ff565b335f908152600560205260409020906114ce565b5f878152600460209081526040808320338452909152812080546001820154939450909261085b9190612546565b6108659084612559565b9050338188818111156108a457604051631186c4ab60e31b81526001600160a01b039093166004840152602483019190915260448201526064016104c9565b5050505f888152600360205260409020600c0186156108f25787835f015f8282546108cf9190612546565b90915550508054889082905f906108e7908490612546565b909155506109259050565b87836001015f8282546109059190612546565b9250508190555087816001015f82825461091f9190612546565b90915550505b604080518815158152602081018a905233918b917fcbdf6214089cba887ecbf35a0b6a734589959c9763342c756bb2a80ca2bc9f6e910160405180910390a350600198975050505050505050565b61097b612124565b506040805161014081018252600754610100820190815260085461012083015281526009546020820152600a5491810191909152600b546060820152600c546080820152600d5460a0820152600e5460c0820152600f5460e082015290565b5f60115482108290610a02576040516320c68f5560e21b81526004016104c991815260200190565b505f828152600360205260409020610a1981611614565b15610a2b576009015460ff1692915050565b600a8101545f546001600160a01b03908116911614801590610a5a5750600a8101546001600160a01b03163014155b15610a685750600692915050565b42610a7b81610a76846115ff565b101590565b15610a8957505f9392505050565b610a9681610a7684611655565b15610aa5575060019392505050565b5f610aba610ab2846115ff565b6010906114ce565b90505f610ac7848361166c565b5090505f816002811115610add57610add612348565b14610aee5750600495945050505050565b610afb83610a76866117b0565b15610b0c5750600295945050505050565b610b1983610a76866117c7565b15610b2a5750600395945050505050565b50600795945050505050565b3330818114610b6b5760405163f18e42a160e01b81526001600160a01b039283166004820152911660248201526044016104c9565b50505f80546001600160a01b0319166001600160a01b038316908117825560405190917f58b9023fe926532b1c6a397a00102fcce3ac81725a232d9d235104cd1a28e43291a250565b5f6106598383610bc460076117de565b6113ce565b610bd1612174565b5f828152600360208181526040928390208351610200810190945280546101c0850190815260018201546101e086015260c08501908152600282015460e08601529281015461010085015260048101546101208501526005810154610140850152600681015461016085015260078082015461018086015260088201546101a0860152928452600981015490929184019160ff90911690811115610c7757610c77612348565b6007811115610c8857610c88612348565b815260098201546001600160a01b036101009091048116602080840191909152600a840154909116604080840191909152600b84015460608401528051808201909152600c8401548152600d90930154908301526080015292915050565b3330818114610d1b5760405163f18e42a160e01b81526001600160a01b039283166004820152911660248201526044016104c9565b5050610d268161180a565b5080518051600755602090810151600855810151600955604080820151600a556060820151600b556080820151600c5560a0820151600d5560c0820151600e5560e0820151600f555142907f7d096a764e5ea306d0946e3a05ca9ffd9ea0af82aecf12cf8eee26b2485f9a0c905f90a250565b5f8181526006602052604090206002810154600160a01b900460ff1615610dd3576040516321e3810d60e01b815260040160405180910390fd5b610de1428260010154111590565b60018201544291610e0e57604051630d02d71b60e21b8152600481019290925260248201526044016104c9565b505060028101805460ff60a01b1916600160a01b17905560405182907fc55414f0020bbb9a6427d371f8c17b59299e683de70d4e659e061bb9ba303d9f905f90a260028101548154610e8e916001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000811692911690611b96565b5050565b3330818114610ec75760405163f18e42a160e01b81526001600160a01b039283166004820152911660248201526044016104c9565b50506001600160a01b0381165f81815260016020818152604092839020805460ff191690921790915590519182527f5eea62661ac9a33be3f9320ecd60878cd5e92025ffec0f2e9969d2448b497eda910160405180910390a150565b5f5f610f2e836109da565b90506003816007811115610f4457610f44612348565b14610f625760405163b6ae35c160e01b815260040160405180910390fd5b5f83815260036020526040808220600981018054600560ff199091161790819055825163504d080b60e01b815292519193926101009091046001600160a01b03169163504d080b9160048082019286929091908290030181865afa158015610fcc573d5f5f3e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610ff3919081019061256c565b90505f5b8151811015611154577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031682828151811061103c5761103c6126e5565b60200260200101515f01516001600160a01b03160361106e576040516304f6c78960e21b815260040160405180910390fd5b5f828281518110611081576110816126e5565b60200260200101515f01516001600160a01b03168383815181106110a7576110a76126e5565b6020026020010151602001516040516110c091906126f9565b5f604051808303815f865af19150503d805f81146110f9576040519150601f19603f3d011682016040523d82523d5f602084013e6110fe565b606091505b5050905080838381518110611115576111156126e5565b60200260200101515f01519061114a57604051633cb8c30160e01b81526001600160a01b0390911660048201526024016104c9565b5050600101610ff7565b5060405185907f712ae1383f79ac853f8d882153778e0260ef8f03b504e2866e0593e04d2b291f905f90a2506001949350505050565b5f42820361119c576104ea60106113b5565b6104ea6010836114ce565b601180545f91829190826111ba8361270f565b909155506040805161020081019091526007546101c082019081526008546101e083015260c0820190815260095460e0830152600a54610100830152600b54610120830152600c54610140830152600d54610160830152600e54610180830152600f546101a08301528152909150602081015f8152602001856001600160a01b03168152602001846001600160a01b0316815260200142815260200160405180604001604052805f81526020015f81525081525060035f8381526020019081526020015f205f820151815f015f820151815f015f820151815f01556020820151816001015550506020820151816002015560408201518160030155606082015181600401556080820151816005015560a0820151816006015560c0820151816007015560e0820151816008015550506020820151816009015f6101000a81548160ff0219169083600781111561131257611312612348565b0217905550604082810151600983018054610100600160a81b0319166101006001600160a01b03938416021790556060840151600a840180546001600160a01b0319169183169190911790556080840151600b84015560a0909301518051600c84015560200151600d90920191909155519085169082907faa9a4d6243341331785569c732ffe9c81a3e9c2aafa58faab1afe4797668433f905f90a39392505050565b5f6113bf82611bcc565b6001600160e01b031692915050565b335f9081526005602052604081206113e69084611c11565b506113f49050601084611c11565b5050601280545f91826114068361270f565b91905055905060405180608001604052808581526020016114274286611cbe565b81526001600160a01b0380881660208084018290525f6040948501819052868152600682528490208551815590850151600182015584840151600290910180546060909601511515600160a01b026001600160a81b031990961691909316179390931790555182907f35572b4263de54e794ffcb886cb01a64870892fe896854fd2ca93810d5c66f7e906114be9088815260200190565b60405180910390a3949350505050565b5f6114d882421190565b6114f55760405163e34cb3b360e01b815260040160405180910390fd5b61150861150183611cc9565b8490611cfd565b6001600160e01b03169392505050565b6040516001600160a01b03848116602483015283811660448301526064820183905261157f9186918216906323b872dd906084015b604051602081830303815290604052915060e01b6020820180516001600160e01b038381831617835250505050611d46565b50505050565b5f808061159185611bcc565b9050835f036115ad576001600160e01b031691508190506115f8565b5f6115b785611db2565b90506115d76115c542611cc9565b6115cf8385612727565b889190611de5565b508290506115e58282612727565b6001600160e01b03918216955016925050505b9250929050565b5f6104ea82600b0154835f0160020154611cbe565b60098101545f9060ff16600581600781111561163257611632612348565b14806106595750600681600781111561164d5761164d612348565b149392505050565b5f6104ea611662836115ff565b6003840154611cbe565b5f5f835f01600801545f036116865750600290505f6115f8565b600884015483101561169d575060019050806115f8565b5f6116b984865f0160060154670de0b6b3a76400006001611dff565b9050805f036116cf5760028092509250506115f8565b838111156116e5576002600392509250506115f8565b600c850154600d8601545f916116fa91612546565b90508181101561171357600160049350935050506115f8565b600c86015481900361172d575f60089350935050506115f8565b60078601545f906117519061174a90670de0b6b3a7640000612546565b6002611e41565b90505f6117698383670de0b6b3a76400006001611dff565b905082811115611784576002600695509550505050506115f8565b600c88015481106117a0576001600995509550505050506115f8565b505f97600a975095505050505050565b5f6104ea6117bd83611655565b6004840154611cbe565b5f6104ea6117d4836117b0565b6005840154611cbe565b5f6104ea611800600584600201546117f6919061275a565b8460030154611cbe565b8360040154611cbe565b5f60018260a0015110156118315760405163245ca84960e11b815260040160405180910390fd5b670de0b6b3a76400008260a00151111561185e57604051637a9fd76760e11b815260040160405180910390fd5b670de0b6b3a76400008260c00151111561188b576040516306e2083d60e41b815260040160405180910390fd5b60018260e0015110156118b15760405163505c925360e11b815260040160405180910390fd5b815160200151600111156118d85760405163ec4abc2f60e01b815260040160405180910390fd5b815151603c1115611918576040516302b2633f60e21b81526020600482015260096024820152684c6f636b44656c617960b81b60448201526064016104c9565b81515162278d00101561195a57604051637ac6b2f960e11b81526020600482015260096024820152684c6f636b44656c617960b81b60448201526064016104c9565b6020820151603c111561199e576040516302b2633f60e21b815260206004820152600b60248201526a566f74696e6744656c617960a81b60448201526064016104c9565b602082015162278d0010156119e457604051637ac6b2f960e11b815260206004820152600b60248201526a566f74696e6744656c617960a81b60448201526064016104c9565b6040820151603c1115611a2b576040516302b2633f60e21b815260206004820152600e60248201526d2b37ba34b733a23ab930ba34b7b760911b60448201526064016104c9565b604082015162278d001015611a7457604051637ac6b2f960e11b815260206004820152600e60248201526d2b37ba34b733a23ab930ba34b7b760911b60448201526064016104c9565b6060820151603c1115611abb576040516302b2633f60e21b815260206004820152600e60248201526d457865637574696f6e44656c617960901b60448201526064016104c9565b606082015162278d001015611b0457604051637ac6b2f960e11b815260206004820152600e60248201526d457865637574696f6e44656c617960901b60448201526064016104c9565b6080820151603c1115611b48576040516302b2633f60e21b815260206004820152600b60248201526a11dc9858d954195c9a5bd960aa1b60448201526064016104c9565b608082015162278d001015611b8e57604051637ac6b2f960e11b815260206004820152600b60248201526a11dc9858d954195c9a5bd960aa1b60448201526064016104c9565b506001919050565b6040516001600160a01b03838116602483015260448201839052611bc791859182169063a9059cbb9060640161154d565b505050565b80545f908015611c0957611bf283611be5600184612559565b5f91825260209091200190565b5464010000000090046001600160e01b0316610659565b5f9392505050565b5f8080611c1d85611bcc565b9050835f03611c39576001600160e01b031691508190506115f8565b5f611c4385611db2565b90503382826001600160e01b038082169083161015611c9757604051631186c4ab60e31b81526001600160a01b0390931660048401526001600160e01b0391821660248401521660448201526064016104c9565b505050611cb0611ca642611cc9565b6115cf838561276d565b508290506115e5828261276d565b5f6106598284612546565b5f63ffffffff821115611cf9576040516306dfcc6560e41b815260206004820152602481018390526044016104c9565b5090565b81545f9081611d0e85858385611e74565b90508015611d3c57611d2585611be5600184612559565b5464010000000090046001600160e01b0316610600565b505f949350505050565b5f5f60205f8451602086015f885af180611d65576040513d5f823e3d81fd5b50505f513d91508115611d7c578060011415611d89565b6001600160a01b0384163b155b1561157f57604051635274afe760e01b81526001600160a01b03851660048201526024016104c9565b5f6001600160e01b03821115611cf9576040516306dfcc6560e41b815260e06004820152602481018390526044016104c9565b5f80611df2858585611ecf565b915091505b935093915050565b5f611e2c611e0c83612017565b8015611e2757505f8480611e2257611e22612746565b868809115b151590565b611e37868686612043565b6106009190612546565b5f815f03611e5357611e5360126120f9565b816001840381611e6557611e65612746565b04600101831515029392505050565b5f5b81831015611ec7575f611e89848461210a565b5f8781526020902090915063ffffffff86169082015463ffffffff161115611eb357809250611ec1565b611ebe816001612546565b93505b50611e76565b509392505050565b82545f9081908015611fbe575f611eeb87611be5600185612559565b805490915063ffffffff8082169164010000000090046001600160e01b0316908816821115611f2d57604051632520601d60e01b815260040160405180910390fd5b8763ffffffff168263ffffffff1603611f6157825463ffffffff166401000000006001600160e01b03891602178355611fb0565b6040805180820190915263ffffffff808a1682526001600160e01b03808a1660208085019182528d54600181018f555f8f81529190912094519151909216640100000000029216919091179101555b9450859350611df792505050565b50506040805180820190915263ffffffff80851682526001600160e01b0380851660208085019182528854600181018a555f8a815291822095519251909316640100000000029190931617920191909155905081611df7565b5f600282600381111561202c5761202c612348565b612036919061278c565b60ff166001149050919050565b5f838302815f1985870982811083820303915050805f036120775783828161206d5761206d612746565b0492505050610659565b80841161208e5761208e60038515026011186120f9565b5f848688095f868103871696879004966002600389028118808a02820302808a02820302808a02820302808a02820302808a02820302808a02909103029181900381900460010186841190950394909402919094039290920491909117919091029150509392505050565b634e487b715f52806020526024601cfd5b5f612118600284841861275a565b61065990848416612546565b6040805161014081019091525f6101008201818152610120830191909152819081526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f81525090565b6040518060c00160405280612187612124565b81526020015f81526020015f6001600160a01b031681526020015f6001600160a01b031681526020015f81526020016121d160405180604001604052805f81526020015f81525090565b905290565b6001600160a01b03811681146121ea575f5ffd5b50565b5f602082840312156121fd575f5ffd5b8135610659816121d6565b5f60208284031215612218575f5ffd5b5035919050565b5f5f60408385031215612230575f5ffd5b823561223b816121d6565b9150602083013561224b816121d6565b809150509250929050565b5f5f60408385031215612267575f5ffd5b8235612272816121d6565b946020939093013593505050565b5f5f5f60608486031215612292575f5ffd5b8335925060208401359150604084013580151581146122af575f5ffd5b809150509250925092565b8051805183526020810151602084015250602081015160408301526040810151606083015260608101516080830152608081015160a083015260a081015160c083015260c081015160e083015260e08101516101008301525050565b61012081016104ea82846122ba565b5f5f60408385031215612336575f5ffd5b82359150602083013561224b816121d6565b634e487b7160e01b5f52602160045260245ffd5b6008811061237857634e487b7160e01b5f52602160045260245ffd5b9052565b602081016104ea828461235c565b5f6101e08201905061239d8284516122ba565b60208301516123b061012084018261235c565b5060408301516001600160a01b03908116610140840152606084015116610160830152608083015161018083015260a09092015180516101a0830152602001516101c09091015290565b634e487b7160e01b5f52604160045260245ffd5b604051610100810167ffffffffffffffff81118282101715612432576124326123fa565b60405290565b6040805190810167ffffffffffffffff81118282101715612432576124326123fa565b604051601f8201601f1916810167ffffffffffffffff81118282101715612484576124846123fa565b604052919050565b5f8183036101208112801561249f575f5ffd5b506124a861240e565b60408212156124b5575f5ffd5b6124bd612438565b843581526020808601358183015290825260408086013591830191909152606080860135918301919091526080808601359183019190915260a0808601359183019190915260c0808601359183019190915260e080860135918301919091526101009094013593810193909352509092915050565b634e487b7160e01b5f52601160045260245ffd5b808201808211156104ea576104ea612532565b818103818111156104ea576104ea612532565b5f6020828403121561257c575f5ffd5b815167ffffffffffffffff811115612592575f5ffd5b8201601f810184136125a2575f5ffd5b805167ffffffffffffffff8111156125bc576125bc6123fa565b8060051b6125cc6020820161245b565b918252602081840181019290810190878411156125e7575f5ffd5b6020850192505b838310156126da57825167ffffffffffffffff81111561260c575f5ffd5b85016040818a03601f19011215612621575f5ffd5b612629612438565b6020820151612637816121d6565b8152604082015167ffffffffffffffff811115612652575f5ffd5b60208184010192505089601f830112612669575f5ffd5b815167ffffffffffffffff811115612683576126836123fa565b612696601f8201601f191660200161245b565b8181528b60208386010111156126aa575f5ffd5b8160208501602083015e5f60208383010152806020840152505080845250506020820191506020830192506125ee565b979650505050505050565b634e487b7160e01b5f52603260045260245ffd5b5f82518060208501845e5f920191825250919050565b5f6001820161272057612720612532565b5060010190565b6001600160e01b0381811683821601908111156104ea576104ea612532565b634e487b7160e01b5f52601260045260245ffd5b5f8261276857612768612746565b500490565b6001600160e01b0382811682821603908111156104ea576104ea612532565b5f60ff83168061279e5761279e612746565b8060ff8416069150509291505056fea2646970667358221220fbfaa98fd57ffe6b255ccacecb2a9dc7105625256ac7f358efe4bad69987a76764736f6c634300081b0033";
5
5
  /**
6
6
  * Governance link references.
7
7
  */
@@ -1 +1 @@
1
- {"version":3,"file":"GovernanceBytecode.d.ts","sourceRoot":"","sources":["../src/GovernanceBytecode.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,kBAAkB,2ouBAA2ouB,CAAC;AAC3quB;;GAEG;AACH,eAAO,MAAM,wBAAwB,IAAc,CAAC"}
1
+ {"version":3,"file":"GovernanceBytecode.d.ts","sourceRoot":"","sources":["../src/GovernanceBytecode.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,kBAAkB,i7uBAAi7uB,CAAC;AACj9uB;;GAEG;AACH,eAAO,MAAM,wBAAwB,IAAc,CAAC"}