@hyperlane-xyz/sdk 1.4.2 → 1.4.3-beta1

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 (207) hide show
  1. package/dist/HyperlaneApp.d.ts.map +1 -1
  2. package/dist/HyperlaneApp.js +2 -2
  3. package/dist/HyperlaneApp.js.map +1 -1
  4. package/dist/consts/chainMetadata.d.ts +2 -1
  5. package/dist/consts/chainMetadata.d.ts.map +1 -1
  6. package/dist/consts/chainMetadata.js +29 -28
  7. package/dist/consts/chainMetadata.js.map +1 -1
  8. package/dist/consts/environments/index.d.ts +38 -0
  9. package/dist/consts/environments/index.d.ts.map +1 -1
  10. package/dist/consts/environments/index.js +2 -2
  11. package/dist/consts/environments/index.js.map +1 -1
  12. package/dist/consts/environments/mainnet.json +27 -9
  13. package/dist/consts/environments/testnet.json +36 -18
  14. package/dist/contracts.d.ts +2 -2
  15. package/dist/contracts.d.ts.map +1 -1
  16. package/dist/contracts.js +12 -12
  17. package/dist/contracts.js.map +1 -1
  18. package/dist/core/HyperlaneCore.d.ts +2 -2
  19. package/dist/core/HyperlaneCore.d.ts.map +1 -1
  20. package/dist/core/HyperlaneCore.js +5 -5
  21. package/dist/core/HyperlaneCore.js.map +1 -1
  22. package/dist/core/HyperlaneCoreChecker.d.ts +0 -1
  23. package/dist/core/HyperlaneCoreChecker.d.ts.map +1 -1
  24. package/dist/core/HyperlaneCoreChecker.js +5 -44
  25. package/dist/core/HyperlaneCoreChecker.js.map +1 -1
  26. package/dist/core/HyperlaneCoreDeployer.d.ts +4 -5
  27. package/dist/core/HyperlaneCoreDeployer.d.ts.map +1 -1
  28. package/dist/core/HyperlaneCoreDeployer.js +2 -11
  29. package/dist/core/HyperlaneCoreDeployer.js.map +1 -1
  30. package/dist/core/TestCoreApp.js +1 -1
  31. package/dist/core/TestCoreApp.js.map +1 -1
  32. package/dist/core/testHyperlaneDeploy.hardhat-test.js +2 -2
  33. package/dist/core/testHyperlaneDeploy.hardhat-test.js.map +1 -1
  34. package/dist/core/types.d.ts +7 -7
  35. package/dist/core/types.d.ts.map +1 -1
  36. package/dist/core/types.js +0 -1
  37. package/dist/core/types.js.map +1 -1
  38. package/dist/deploy/HyperlaneAppChecker.d.ts +4 -2
  39. package/dist/deploy/HyperlaneAppChecker.d.ts.map +1 -1
  40. package/dist/deploy/HyperlaneAppChecker.js +53 -8
  41. package/dist/deploy/HyperlaneAppChecker.js.map +1 -1
  42. package/dist/deploy/HyperlaneDeployer.d.ts +8 -4
  43. package/dist/deploy/HyperlaneDeployer.d.ts.map +1 -1
  44. package/dist/deploy/HyperlaneDeployer.js +51 -15
  45. package/dist/deploy/HyperlaneDeployer.js.map +1 -1
  46. package/dist/deploy/proxy.d.ts +13 -4
  47. package/dist/deploy/proxy.d.ts.map +1 -1
  48. package/dist/deploy/proxy.js +1 -1
  49. package/dist/deploy/proxy.js.map +1 -1
  50. package/dist/deploy/types.d.ts +18 -2
  51. package/dist/deploy/types.d.ts.map +1 -1
  52. package/dist/deploy/types.js +2 -0
  53. package/dist/deploy/types.js.map +1 -1
  54. package/dist/deploy/verify/ContractVerifier.d.ts.map +1 -1
  55. package/dist/deploy/verify/ContractVerifier.js +3 -4
  56. package/dist/deploy/verify/ContractVerifier.js.map +1 -1
  57. package/dist/gas/HyperlaneIgp.d.ts +2 -2
  58. package/dist/gas/HyperlaneIgp.d.ts.map +1 -1
  59. package/dist/gas/HyperlaneIgp.js.map +1 -1
  60. package/dist/gas/HyperlaneIgpChecker.d.ts +2 -6
  61. package/dist/gas/HyperlaneIgpChecker.d.ts.map +1 -1
  62. package/dist/gas/HyperlaneIgpChecker.js +16 -14
  63. package/dist/gas/HyperlaneIgpChecker.js.map +1 -1
  64. package/dist/gas/HyperlaneIgpDeployer.d.ts +2 -2
  65. package/dist/gas/HyperlaneIgpDeployer.d.ts.map +1 -1
  66. package/dist/gas/HyperlaneIgpDeployer.js +28 -12
  67. package/dist/gas/HyperlaneIgpDeployer.js.map +1 -1
  68. package/dist/gas/contracts.d.ts +3 -2
  69. package/dist/gas/contracts.d.ts.map +1 -1
  70. package/dist/gas/contracts.js +2 -6
  71. package/dist/gas/contracts.js.map +1 -1
  72. package/dist/gas/token-prices.d.ts +1 -1
  73. package/dist/gas/types.d.ts +10 -7
  74. package/dist/gas/types.d.ts.map +1 -1
  75. package/dist/gas/types.js.map +1 -1
  76. package/dist/hook/HyperlaneHookDeployer.d.ts +4 -4
  77. package/dist/hook/HyperlaneHookDeployer.d.ts.map +1 -1
  78. package/dist/hook/HyperlaneHookDeployer.js +1 -1
  79. package/dist/hook/HyperlaneHookDeployer.js.map +1 -1
  80. package/dist/hook/types.d.ts +4 -4
  81. package/dist/hook/types.d.ts.map +1 -1
  82. package/dist/index.d.ts +4 -7
  83. package/dist/index.d.ts.map +1 -1
  84. package/dist/index.js +4 -21
  85. package/dist/index.js.map +1 -1
  86. package/dist/ism/HyperlaneIsmFactory.d.ts +3 -3
  87. package/dist/ism/HyperlaneIsmFactory.d.ts.map +1 -1
  88. package/dist/ism/HyperlaneIsmFactory.js +83 -40
  89. package/dist/ism/HyperlaneIsmFactory.js.map +1 -1
  90. package/dist/ism/HyperlaneIsmFactoryDeployer.d.ts.map +1 -1
  91. package/dist/ism/HyperlaneIsmFactoryDeployer.js +2 -2
  92. package/dist/ism/HyperlaneIsmFactoryDeployer.js.map +1 -1
  93. package/dist/ism/types.d.ts +3 -3
  94. package/dist/ism/types.d.ts.map +1 -1
  95. package/dist/metadata/agentConfig.d.ts +7 -2
  96. package/dist/metadata/agentConfig.d.ts.map +1 -1
  97. package/dist/metadata/agentConfig.js +12 -3
  98. package/dist/metadata/agentConfig.js.map +1 -1
  99. package/dist/metadata/agentConfig.test.d.ts +2 -0
  100. package/dist/metadata/agentConfig.test.d.ts.map +1 -0
  101. package/dist/metadata/agentConfig.test.js +33 -0
  102. package/dist/metadata/agentConfig.test.js.map +1 -0
  103. package/dist/metadata/chainMetadata.test.js +2 -1
  104. package/dist/metadata/chainMetadata.test.js.map +1 -1
  105. package/dist/metadata/chainMetadataTypes.d.ts +1 -10
  106. package/dist/metadata/chainMetadataTypes.d.ts.map +1 -1
  107. package/dist/metadata/chainMetadataTypes.js +3 -12
  108. package/dist/metadata/chainMetadataTypes.js.map +1 -1
  109. package/dist/metadata/deploymentArtifacts.d.ts +3 -3
  110. package/dist/middleware/account/InterchainAccountChecker.d.ts.map +1 -1
  111. package/dist/middleware/account/InterchainAccountChecker.js +2 -2
  112. package/dist/middleware/account/InterchainAccountChecker.js.map +1 -1
  113. package/dist/middleware/account/InterchainAccountDeployer.d.ts +12 -6
  114. package/dist/middleware/account/InterchainAccountDeployer.d.ts.map +1 -1
  115. package/dist/middleware/account/InterchainAccountDeployer.js +30 -46
  116. package/dist/middleware/account/InterchainAccountDeployer.js.map +1 -1
  117. package/dist/middleware/account/contracts.d.ts +3 -2
  118. package/dist/middleware/account/contracts.d.ts.map +1 -1
  119. package/dist/middleware/account/contracts.js +2 -5
  120. package/dist/middleware/account/contracts.js.map +1 -1
  121. package/dist/middleware/liquidity-layer/LiquidityLayerApp.d.ts.map +1 -1
  122. package/dist/middleware/liquidity-layer/LiquidityLayerApp.js +3 -3
  123. package/dist/middleware/liquidity-layer/LiquidityLayerApp.js.map +1 -1
  124. package/dist/middleware/liquidity-layer/LiquidityLayerRouterDeployer.d.ts +2 -2
  125. package/dist/middleware/liquidity-layer/LiquidityLayerRouterDeployer.d.ts.map +1 -1
  126. package/dist/middleware/liquidity-layer/LiquidityLayerRouterDeployer.js +8 -6
  127. package/dist/middleware/liquidity-layer/LiquidityLayerRouterDeployer.js.map +1 -1
  128. package/dist/middleware/liquidity-layer/contracts.d.ts +3 -2
  129. package/dist/middleware/liquidity-layer/contracts.d.ts.map +1 -1
  130. package/dist/middleware/liquidity-layer/contracts.js +2 -6
  131. package/dist/middleware/liquidity-layer/contracts.js.map +1 -1
  132. package/dist/middleware/liquidity-layer/liquidity-layer.hardhat-test.js +3 -4
  133. package/dist/middleware/liquidity-layer/liquidity-layer.hardhat-test.js.map +1 -1
  134. package/dist/middleware/query/InterchainQueryDeployer.d.ts.map +1 -1
  135. package/dist/middleware/query/InterchainQueryDeployer.js +3 -0
  136. package/dist/middleware/query/InterchainQueryDeployer.js.map +1 -1
  137. package/dist/middleware/query/contracts.d.ts +3 -2
  138. package/dist/middleware/query/contracts.d.ts.map +1 -1
  139. package/dist/middleware/query/contracts.js +2 -4
  140. package/dist/middleware/query/contracts.js.map +1 -1
  141. package/dist/middleware/query/queries.hardhat-test.js +1 -1
  142. package/dist/middleware/query/queries.hardhat-test.js.map +1 -1
  143. package/dist/providers/MultiProvider.d.ts +2 -2
  144. package/dist/providers/MultiProvider.d.ts.map +1 -1
  145. package/dist/providers/MultiProvider.js +6 -7
  146. package/dist/providers/MultiProvider.js.map +1 -1
  147. package/dist/providers/RetryProvider.js +3 -3
  148. package/dist/providers/RetryProvider.js.map +1 -1
  149. package/dist/router/GasRouterDeployer.d.ts +2 -2
  150. package/dist/router/GasRouterDeployer.d.ts.map +1 -1
  151. package/dist/router/GasRouterDeployer.js.map +1 -1
  152. package/dist/router/HyperlaneRouterChecker.d.ts +0 -1
  153. package/dist/router/HyperlaneRouterChecker.d.ts.map +1 -1
  154. package/dist/router/HyperlaneRouterChecker.js +13 -9
  155. package/dist/router/HyperlaneRouterChecker.js.map +1 -1
  156. package/dist/router/HyperlaneRouterDeployer.d.ts +2 -2
  157. package/dist/router/HyperlaneRouterDeployer.d.ts.map +1 -1
  158. package/dist/router/HyperlaneRouterDeployer.js +17 -8
  159. package/dist/router/HyperlaneRouterDeployer.js.map +1 -1
  160. package/dist/router/ProxiedRouterChecker.d.ts +3 -2
  161. package/dist/router/ProxiedRouterChecker.d.ts.map +1 -1
  162. package/dist/router/ProxiedRouterChecker.js +20 -2
  163. package/dist/router/ProxiedRouterChecker.js.map +1 -1
  164. package/dist/router/ProxiedRouterDeployer.d.ts +2 -2
  165. package/dist/router/ProxiedRouterDeployer.d.ts.map +1 -1
  166. package/dist/router/ProxiedRouterDeployer.js +19 -6
  167. package/dist/router/ProxiedRouterDeployer.js.map +1 -1
  168. package/dist/router/RouterApps.d.ts +3 -3
  169. package/dist/router/RouterApps.d.ts.map +1 -1
  170. package/dist/router/RouterApps.js +3 -3
  171. package/dist/router/RouterApps.js.map +1 -1
  172. package/dist/router/types.d.ts +12 -7
  173. package/dist/router/types.d.ts.map +1 -1
  174. package/dist/router/types.js +6 -1
  175. package/dist/router/types.js.map +1 -1
  176. package/dist/test/testUtils.d.ts +4 -4
  177. package/dist/test/testUtils.d.ts.map +1 -1
  178. package/dist/test/testUtils.js +12 -4
  179. package/dist/test/testUtils.js.map +1 -1
  180. package/dist/utils/filter.d.ts +3 -0
  181. package/dist/utils/filter.d.ts.map +1 -0
  182. package/dist/utils/filter.js +13 -0
  183. package/dist/utils/filter.js.map +1 -0
  184. package/dist/utils/wagmi.d.ts.map +1 -1
  185. package/dist/utils/wagmi.js +2 -2
  186. package/dist/utils/wagmi.js.map +1 -1
  187. package/package.json +6 -5
  188. package/dist/utils/ids.d.ts +0 -20
  189. package/dist/utils/ids.d.ts.map +0 -1
  190. package/dist/utils/ids.js +0 -47
  191. package/dist/utils/ids.js.map +0 -1
  192. package/dist/utils/number.d.ts +0 -32
  193. package/dist/utils/number.d.ts.map +0 -1
  194. package/dist/utils/number.js +0 -59
  195. package/dist/utils/number.js.map +0 -1
  196. package/dist/utils/objects.d.ts +0 -17
  197. package/dist/utils/objects.d.ts.map +0 -1
  198. package/dist/utils/objects.js +0 -77
  199. package/dist/utils/objects.js.map +0 -1
  200. package/dist/utils/time.d.ts +0 -8
  201. package/dist/utils/time.d.ts.map +0 -1
  202. package/dist/utils/time.js +0 -15
  203. package/dist/utils/time.js.map +0 -1
  204. package/dist/utils/utils.test.d.ts +0 -2
  205. package/dist/utils/utils.test.d.ts.map +0 -1
  206. package/dist/utils/utils.test.js +0 -41
  207. package/dist/utils/utils.test.js.map +0 -1
@@ -1,19 +1,19 @@
1
1
  import { Mailbox } from '@hyperlane-xyz/core';
2
- import type { types } from '@hyperlane-xyz/utils';
2
+ import type { Address } from '@hyperlane-xyz/utils';
3
+ import { UpgradeConfig } from '../deploy/proxy';
3
4
  import type { CheckerViolation } from '../deploy/types';
4
5
  import { IsmConfig } from '../ism/types';
5
6
  import { ChainName } from '../types';
6
7
  export declare type CoreConfig = {
7
8
  defaultIsm: IsmConfig;
8
- owner: types.Address;
9
- upgradeTimelockDelay?: number;
9
+ owner: Address;
10
10
  remove?: boolean;
11
+ upgrade?: UpgradeConfig;
11
12
  };
12
13
  export declare enum CoreViolationType {
13
14
  Mailbox = "Mailbox",
14
15
  ConnectionManager = "ConnectionManager",
15
- ValidatorAnnounce = "ValidatorAnnounce",
16
- TimelockController = "TimelockController"
16
+ ValidatorAnnounce = "ValidatorAnnounce"
17
17
  }
18
18
  export declare enum MailboxViolationType {
19
19
  DefaultIsm = "DefaultIsm"
@@ -24,13 +24,13 @@ export interface MailboxViolation extends CheckerViolation {
24
24
  mailboxType: MailboxViolationType;
25
25
  }
26
26
  export interface MailboxMultisigIsmViolation extends MailboxViolation {
27
- actual: types.Address;
27
+ actual: Address;
28
28
  expected: IsmConfig;
29
29
  }
30
30
  export interface ValidatorAnnounceViolation extends CheckerViolation {
31
31
  type: CoreViolationType.ValidatorAnnounce;
32
32
  chain: ChainName;
33
- validator: types.Address;
33
+ validator: Address;
34
34
  actual: boolean;
35
35
  expected: boolean;
36
36
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAElD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAErC,oBAAY,UAAU,GAAG;IACvB,UAAU,EAAE,SAAS,CAAC;IACtB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC;IACrB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF,oBAAY,iBAAiB;IAC3B,OAAO,YAAY;IACnB,iBAAiB,sBAAsB;IACvC,iBAAiB,sBAAsB;IACvC,kBAAkB,uBAAuB;CAC1C;AAED,oBAAY,oBAAoB;IAC9B,UAAU,eAAe;CAC1B;AAED,MAAM,WAAW,gBAAiB,SAAQ,gBAAgB;IACxD,IAAI,EAAE,iBAAiB,CAAC,OAAO,CAAC;IAChC,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,EAAE,oBAAoB,CAAC;CACnC;AAED,MAAM,WAAW,2BAA4B,SAAQ,gBAAgB;IACnE,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC;IACtB,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,MAAM,WAAW,0BAA2B,SAAQ,gBAAgB;IAClE,IAAI,EAAE,iBAAiB,CAAC,iBAAiB,CAAC;IAC1C,KAAK,EAAE,SAAS,CAAC;IACjB,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC;IACzB,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;CACnB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAEpD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAErC,oBAAY,UAAU,GAAG;IACvB,UAAU,EAAE,SAAS,CAAC;IACtB,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,aAAa,CAAC;CACzB,CAAC;AAEF,oBAAY,iBAAiB;IAC3B,OAAO,YAAY;IACnB,iBAAiB,sBAAsB;IACvC,iBAAiB,sBAAsB;CACxC;AAED,oBAAY,oBAAoB;IAC9B,UAAU,eAAe;CAC1B;AAED,MAAM,WAAW,gBAAiB,SAAQ,gBAAgB;IACxD,IAAI,EAAE,iBAAiB,CAAC,OAAO,CAAC;IAChC,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,EAAE,oBAAoB,CAAC;CACnC;AAED,MAAM,WAAW,2BAA4B,SAAQ,gBAAgB;IACnE,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,MAAM,WAAW,0BAA2B,SAAQ,gBAAgB;IAClE,IAAI,EAAE,iBAAiB,CAAC,iBAAiB,CAAC;IAC1C,KAAK,EAAE,SAAS,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;CACnB"}
@@ -6,7 +6,6 @@ var CoreViolationType;
6
6
  CoreViolationType["Mailbox"] = "Mailbox";
7
7
  CoreViolationType["ConnectionManager"] = "ConnectionManager";
8
8
  CoreViolationType["ValidatorAnnounce"] = "ValidatorAnnounce";
9
- CoreViolationType["TimelockController"] = "TimelockController";
10
9
  })(CoreViolationType = exports.CoreViolationType || (exports.CoreViolationType = {}));
11
10
  var MailboxViolationType;
12
11
  (function (MailboxViolationType) {
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":";;;AAcA,IAAY,iBAKX;AALD,WAAY,iBAAiB;IAC3B,wCAAmB,CAAA;IACnB,4DAAuC,CAAA;IACvC,4DAAuC,CAAA;IACvC,8DAAyC,CAAA;AAC3C,CAAC,EALW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAK5B;AAED,IAAY,oBAEX;AAFD,WAAY,oBAAoB;IAC9B,iDAAyB,CAAA;AAC3B,CAAC,EAFW,oBAAoB,GAApB,4BAAoB,KAApB,4BAAoB,QAE/B"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":";;;AAeA,IAAY,iBAIX;AAJD,WAAY,iBAAiB;IAC3B,wCAAmB,CAAA;IACnB,4DAAuC,CAAA;IACvC,4DAAuC,CAAA;AACzC,CAAC,EAJW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAI5B;AAED,IAAY,oBAEX;AAFD,WAAY,oBAAoB;IAC9B,iDAAyB,CAAA;AAC3B,CAAC,EAFW,oBAAoB,GAApB,4BAAoB,KAApB,4BAAoB,QAE/B"}
@@ -1,8 +1,9 @@
1
1
  import { Ownable } from '@hyperlane-xyz/core';
2
- import type { types } from '@hyperlane-xyz/utils';
2
+ import { Address } from '@hyperlane-xyz/utils';
3
3
  import { HyperlaneApp } from '../HyperlaneApp';
4
4
  import { MultiProvider } from '../providers/MultiProvider';
5
5
  import { ChainMap, ChainName } from '../types';
6
+ import { UpgradeConfig } from './proxy';
6
7
  import { CheckerViolation } from './types';
7
8
  export declare abstract class HyperlaneAppChecker<App extends HyperlaneApp<any>, Config> {
8
9
  readonly multiProvider: MultiProvider;
@@ -14,12 +15,13 @@ export declare abstract class HyperlaneAppChecker<App extends HyperlaneApp<any>,
14
15
  check(): Promise<void[]>;
15
16
  addViolation(violation: CheckerViolation): void;
16
17
  checkProxiedContracts(chain: ChainName): Promise<void>;
18
+ checkUpgrade(chain: ChainName, upgradeConfig: UpgradeConfig): Promise<void>;
17
19
  private removeBytecodeMetadata;
18
20
  checkBytecode(chain: ChainName, name: string, address: string, expectedBytecodeHashes: string[], modifyBytecodePriorToHash?: (bytecode: string) => string): Promise<void>;
19
21
  ownables(chain: ChainName): Promise<{
20
22
  [key: string]: Ownable;
21
23
  }>;
22
- checkOwnership(chain: ChainName, owner: types.Address, ownableOverrides?: Record<string, types.Address>): Promise<void>;
24
+ protected checkOwnership(chain: ChainName, owner: Address, ownableOverrides?: Record<string, Address>): Promise<void>;
23
25
  expectViolations(violationCounts: Record<string, number>): void;
24
26
  expectEmpty(): void;
25
27
  }
@@ -1 +1 @@
1
- {"version":3,"file":"HyperlaneAppChecker.d.ts","sourceRoot":"","sources":["../../src/deploy/HyperlaneAppChecker.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAGlD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAI/C,OAAO,EAEL,gBAAgB,EAIjB,MAAM,SAAS,CAAC;AAEjB,8BAAsB,mBAAmB,CACvC,GAAG,SAAS,YAAY,CAAC,GAAG,CAAC,EAC7B,MAAM;IAEN,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IACtC,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC;IAClB,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IACrC,QAAQ,CAAC,UAAU,EAAE,gBAAgB,EAAE,CAAC;gBAGtC,aAAa,EAAE,aAAa,EAC5B,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC;IAQ7B,QAAQ,CAAC,UAAU,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAE9C,KAAK,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;IAiB9B,YAAY,CAAC,SAAS,EAAE,gBAAgB,GAAG,IAAI;IAIzC,qBAAqB,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IA6B5D,OAAO,CAAC,sBAAsB;IAOxB,aAAa,CACjB,KAAK,EAAE,SAAS,EAChB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,sBAAsB,EAAE,MAAM,EAAE,EAChC,yBAAyB,GAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,MAAiB,GACjE,OAAO,CAAC,IAAI,CAAC;IAiBV,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC;IAK/D,cAAc,CAClB,KAAK,EAAE,SAAS,EAChB,KAAK,EAAE,KAAK,CAAC,OAAO,EACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,GAC/C,OAAO,CAAC,IAAI,CAAC;IAmBhB,gBAAgB,CAAC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI;IAgB/D,WAAW,IAAI,IAAI;CAIpB"}
1
+ {"version":3,"file":"HyperlaneAppChecker.d.ts","sourceRoot":"","sources":["../../src/deploy/HyperlaneAppChecker.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAsB,MAAM,qBAAqB,CAAC;AAClE,OAAO,EACL,OAAO,EAKR,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE/C,OAAO,EAAE,aAAa,EAAuB,MAAM,SAAS,CAAC;AAC7D,OAAO,EAGL,gBAAgB,EAKjB,MAAM,SAAS,CAAC;AAEjB,8BAAsB,mBAAmB,CACvC,GAAG,SAAS,YAAY,CAAC,GAAG,CAAC,EAC7B,MAAM;IAEN,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IACtC,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC;IAClB,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IACrC,QAAQ,CAAC,UAAU,EAAE,gBAAgB,EAAE,CAAC;gBAGtC,aAAa,EAAE,aAAa,EAC5B,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC;IAQ7B,QAAQ,CAAC,UAAU,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAE9C,KAAK,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;IAiB9B,YAAY,CAAC,SAAS,EAAE,gBAAgB,GAAG,IAAI;IAIzC,qBAAqB,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IA6BtD,YAAY,CAChB,KAAK,EAAE,SAAS,EAChB,aAAa,EAAE,aAAa,GAC3B,OAAO,CAAC,IAAI,CAAC;IAoDhB,OAAO,CAAC,sBAAsB;IAOxB,aAAa,CACjB,KAAK,EAAE,SAAS,EAChB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,sBAAsB,EAAE,MAAM,EAAE,EAChC,yBAAyB,GAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,MAAiB,GACjE,OAAO,CAAC,IAAI,CAAC;IAiBV,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC;cAKrD,cAAc,CAC5B,KAAK,EAAE,SAAS,EAChB,KAAK,EAAE,OAAO,EACd,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACzC,OAAO,CAAC,IAAI,CAAC;IAmBhB,gBAAgB,CAAC,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI;IAgB/D,WAAW,IAAI,IAAI;CAIpB"}
@@ -13,7 +13,6 @@ exports.HyperlaneAppChecker = void 0;
13
13
  const utils_1 = require("ethers/lib/utils");
14
14
  const utils_2 = require("@hyperlane-xyz/utils");
15
15
  const contracts_1 = require("../contracts");
16
- const objects_1 = require("../utils/objects");
17
16
  const proxy_1 = require("./proxy");
18
17
  const types_1 = require("./types");
19
18
  class HyperlaneAppChecker {
@@ -47,11 +46,11 @@ class HyperlaneAppChecker {
47
46
  }
48
47
  const provider = this.multiProvider.getProvider(chain);
49
48
  const contracts = this.app.getContracts(chain);
50
- yield (0, objects_1.promiseObjAll)((0, objects_1.objMap)(contracts, (name, contract) => __awaiter(this, void 0, void 0, function* () {
49
+ yield (0, utils_2.promiseObjAll)((0, utils_2.objMap)(contracts, (name, contract) => __awaiter(this, void 0, void 0, function* () {
51
50
  if (yield (0, proxy_1.isProxy)(provider, contract.address)) {
52
51
  // Check the ProxiedContract's admin matches expectation
53
52
  const actualAdmin = yield (0, proxy_1.proxyAdmin)(provider, contract.address);
54
- if (!utils_2.utils.eqAddress(actualAdmin, expectedAdmin)) {
53
+ if (!(0, utils_2.eqAddress)(actualAdmin, expectedAdmin)) {
55
54
  this.addViolation({
56
55
  type: types_1.ViolationType.ProxyAdmin,
57
56
  chain,
@@ -64,6 +63,52 @@ class HyperlaneAppChecker {
64
63
  })));
65
64
  });
66
65
  }
66
+ checkUpgrade(chain, upgradeConfig) {
67
+ return __awaiter(this, void 0, void 0, function* () {
68
+ const timelockController = this.app.getContracts(chain)
69
+ .timelockController;
70
+ if (!timelockController) {
71
+ throw new Error(`Checking upgrade config for ${chain} with no timelock provided`);
72
+ }
73
+ const minDelay = (yield timelockController.getMinDelay()).toNumber();
74
+ if (minDelay !== upgradeConfig.timelock.delay) {
75
+ const violation = {
76
+ type: types_1.ViolationType.TimelockController,
77
+ chain,
78
+ actual: minDelay,
79
+ expected: upgradeConfig.timelock.delay,
80
+ contract: timelockController,
81
+ };
82
+ this.addViolation(violation);
83
+ }
84
+ const roleIds = {
85
+ executor: yield timelockController.EXECUTOR_ROLE(),
86
+ proposer: yield timelockController.PROPOSER_ROLE(),
87
+ canceller: yield timelockController.CANCELLER_ROLE(),
88
+ admin: yield timelockController.TIMELOCK_ADMIN_ROLE(),
89
+ };
90
+ const accountHasRole = yield (0, utils_2.promiseObjAll)((0, utils_2.objMap)(upgradeConfig.timelock.roles, (role, account) => __awaiter(this, void 0, void 0, function* () {
91
+ return ({
92
+ hasRole: yield timelockController.hasRole(roleIds[role], account),
93
+ account,
94
+ });
95
+ })));
96
+ for (const [role, { hasRole, account }] of Object.entries(accountHasRole)) {
97
+ if (!hasRole) {
98
+ const violation = {
99
+ type: types_1.ViolationType.AccessControl,
100
+ chain,
101
+ account,
102
+ actual: false,
103
+ expected: true,
104
+ contract: timelockController,
105
+ role,
106
+ };
107
+ this.addViolation(violation);
108
+ }
109
+ }
110
+ });
111
+ }
67
112
  removeBytecodeMetadata(bytecode) {
68
113
  // https://docs.soliditylang.org/en/v0.8.17/metadata.html#encoding-of-the-metadata-hash-in-the-bytecode
69
114
  // Remove solc metadata from bytecode
@@ -99,7 +144,7 @@ class HyperlaneAppChecker {
99
144
  for (const [name, contract] of Object.entries(ownableContracts)) {
100
145
  const expectedOwner = (_a = ownableOverrides === null || ownableOverrides === void 0 ? void 0 : ownableOverrides[name]) !== null && _a !== void 0 ? _a : owner;
101
146
  const actual = yield contract.owner();
102
- if (!utils_2.utils.eqAddress(actual, expectedOwner)) {
147
+ if (!(0, utils_2.eqAddress)(actual, expectedOwner)) {
103
148
  const violation = {
104
149
  chain,
105
150
  name,
@@ -115,19 +160,19 @@ class HyperlaneAppChecker {
115
160
  }
116
161
  expectViolations(violationCounts) {
117
162
  // Every type should have exactly the number of expected matches.
118
- (0, objects_1.objMap)(violationCounts, (type, count) => {
163
+ (0, utils_2.objMap)(violationCounts, (type, count) => {
119
164
  const actual = this.violations.filter((v) => v.type === type).length;
120
- utils_2.utils.assert(actual == count, `Expected ${count} ${type} violations, got ${actual}`);
165
+ (0, utils_2.assert)(actual == count, `Expected ${count} ${type} violations, got ${actual}`);
121
166
  });
122
167
  this.violations
123
168
  .filter((v) => !(v.type in violationCounts))
124
169
  .map((v) => {
125
- utils_2.utils.assert(false, `Unexpected violation: ${JSON.stringify(v)}`);
170
+ (0, utils_2.assert)(false, `Unexpected violation: ${JSON.stringify(v)}`);
126
171
  });
127
172
  }
128
173
  expectEmpty() {
129
174
  const count = this.violations.length;
130
- utils_2.utils.assert(count === 0, `Found ${count} violations`);
175
+ (0, utils_2.assert)(count === 0, `Found ${count} violations`);
131
176
  }
132
177
  }
133
178
  exports.HyperlaneAppChecker = HyperlaneAppChecker;
@@ -1 +1 @@
1
- {"version":3,"file":"HyperlaneAppChecker.js","sourceRoot":"","sources":["../../src/deploy/HyperlaneAppChecker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HyperlaneAppChecker.js","sourceRoot":"","sources":["../../src/deploy/HyperlaneAppChecker.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,18 @@
1
1
  import { Debugger } from 'debug';
2
2
  import { Contract, ethers } from 'ethers';
3
- import { HyperlaneConnectionClient, Ownable, ProxyAdmin, TransparentUpgradeableProxy } from '@hyperlane-xyz/core';
4
- import { types } from '@hyperlane-xyz/utils';
3
+ import { HyperlaneConnectionClient, Ownable, ProxyAdmin, TimelockController, TransparentUpgradeableProxy } from '@hyperlane-xyz/core';
4
+ import { Address } from '@hyperlane-xyz/utils';
5
5
  import { HyperlaneAddressesMap, HyperlaneContracts, HyperlaneContractsMap, HyperlaneFactories } from '../contracts';
6
+ import { HyperlaneIsmFactory } from '../ism/HyperlaneIsmFactory';
6
7
  import { MultiProvider } from '../providers/MultiProvider';
7
8
  import { ConnectionClientConfig } from '../router/types';
8
9
  import { ChainMap, ChainName } from '../types';
10
+ import { UpgradeConfig } from './proxy';
9
11
  import { ContractVerificationInput } from './verify/types';
10
12
  export interface DeployerOptions {
11
13
  logger?: Debugger;
12
14
  chainTimeoutMs?: number;
15
+ ismFactory?: HyperlaneIsmFactory;
13
16
  }
14
17
  export declare abstract class HyperlaneDeployer<Config, Factories extends HyperlaneFactories> {
15
18
  protected readonly multiProvider: MultiProvider;
@@ -35,7 +38,8 @@ export declare abstract class HyperlaneDeployer<Config, Factories extends Hyperl
35
38
  protected changeAdmin(chain: ChainName, proxy: TransparentUpgradeableProxy, admin: string): Promise<void>;
36
39
  protected upgradeAndInitialize<C extends ethers.Contract>(chain: ChainName, proxy: TransparentUpgradeableProxy, implementation: C, initializeArgs: Parameters<C['initialize']>): Promise<void>;
37
40
  protected deployProxy<C extends ethers.Contract>(chain: ChainName, implementation: C, proxyAdmin: string, initializeArgs?: Parameters<C['initialize']>): Promise<C>;
38
- protected writeCache<K extends keyof Factories>(chain: ChainName, contractName: K, address: types.Address): void;
41
+ deployTimelock(chain: ChainName, timelockConfig: UpgradeConfig['timelock']): Promise<TimelockController>;
42
+ protected writeCache<K extends keyof Factories>(chain: ChainName, contractName: K, address: Address): void;
39
43
  protected readCache<F extends ethers.ContractFactory>(chain: ChainName, factory: F, contractName: string): Awaited<ReturnType<F['deploy']>> | undefined;
40
44
  /**
41
45
  * Deploys the Implementation and Proxy for a given contract
@@ -43,7 +47,7 @@ export declare abstract class HyperlaneDeployer<Config, Factories extends Hyperl
43
47
  */
44
48
  deployProxiedContract<K extends keyof Factories>(chain: ChainName, contractName: K, proxyAdmin: string, constructorArgs: Parameters<Factories[K]['deploy']>, initializeArgs?: Parameters<HyperlaneContracts<Factories>[K]['initialize']>): Promise<HyperlaneContracts<Factories>[K]>;
45
49
  mergeWithExistingVerificationInputs(existingInputsMap: ChainMap<ContractVerificationInput[]>): ChainMap<ContractVerificationInput[]>;
46
- protected transferOwnershipOfContracts(chain: ChainName, owner: types.Address, ownables: {
50
+ protected transferOwnershipOfContracts(chain: ChainName, owner: Address, ownables: {
47
51
  [key: string]: Ownable;
48
52
  }): Promise<ethers.ContractReceipt[]>;
49
53
  }
@@ -1 +1 @@
1
- {"version":3,"file":"HyperlaneDeployer.d.ts","sourceRoot":"","sources":["../../src/deploy/HyperlaneDeployer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HyperlaneDeployer.d.ts","sourceRoot":"","sources":["../../src/deploy/HyperlaneDeployer.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,7 @@ const debug_1 = require("debug");
14
14
  const ethers_1 = require("ethers");
15
15
  const core_1 = require("@hyperlane-xyz/core");
16
16
  const utils_1 = require("@hyperlane-xyz/utils");
17
+ const HyperlaneIsmFactory_1 = require("../ism/HyperlaneIsmFactory");
17
18
  const proxy_1 = require("./proxy");
18
19
  const utils_2 = require("./verify/utils");
19
20
  class HyperlaneDeployer {
@@ -39,7 +40,6 @@ class HyperlaneDeployer {
39
40
  }
40
41
  deploy(configMap) {
41
42
  return __awaiter(this, void 0, void 0, function* () {
42
- yield this.checkConfig(configMap);
43
43
  const configChains = Object.keys(configMap);
44
44
  const targetChains = this.multiProvider.intersect(configChains, true).intersection;
45
45
  this.logger(`Start deploy to ${targetChains}`);
@@ -51,7 +51,7 @@ class HyperlaneDeployer {
51
51
  this.startingBlockNumbers[chain] = yield this.multiProvider
52
52
  .getProvider(chain)
53
53
  .getBlockNumber();
54
- yield utils_1.utils.runWithTimeout(this.chainTimeoutMs, () => __awaiter(this, void 0, void 0, function* () {
54
+ yield (0, utils_1.runWithTimeout)(this.chainTimeoutMs, () => __awaiter(this, void 0, void 0, function* () {
55
55
  this.deployedContracts[chain] = yield this.deployContracts(chain, configMap[chain]);
56
56
  }));
57
57
  }
@@ -61,7 +61,7 @@ class HyperlaneDeployer {
61
61
  runIf(chain, address, fn, label = 'address') {
62
62
  return __awaiter(this, void 0, void 0, function* () {
63
63
  const signer = yield this.multiProvider.getSignerAddress(chain);
64
- if (utils_1.utils.eqAddress(address, signer)) {
64
+ if ((0, utils_1.eqAddress)(address, signer)) {
65
65
  return fn();
66
66
  }
67
67
  else {
@@ -96,23 +96,46 @@ class HyperlaneDeployer {
96
96
  return __awaiter(this, void 0, void 0, function* () {
97
97
  this.logger(`Initializing connection client (if not already) on ${local}...`);
98
98
  yield this.runIfOwner(local, connectionClient, () => __awaiter(this, void 0, void 0, function* () {
99
+ var _a;
100
+ const txOverrides = this.multiProvider.getTransactionOverrides(local);
99
101
  // set mailbox if not already set (and configured)
100
102
  if (config.mailbox !== (yield connectionClient.mailbox())) {
101
103
  this.logger(`Set mailbox on (${local})`);
102
- yield this.multiProvider.handleTx(local, connectionClient.setMailbox(config.mailbox));
104
+ yield this.multiProvider.handleTx(local, connectionClient.setMailbox(config.mailbox, txOverrides));
103
105
  }
104
106
  // set interchain gas paymaster if not already set (and configured)
105
107
  if (config.interchainGasPaymaster !==
106
108
  (yield connectionClient.interchainGasPaymaster())) {
107
109
  this.logger(`Set interchain gas paymaster on ${local}`);
108
- yield this.multiProvider.handleTx(local, connectionClient.setInterchainGasPaymaster(config.interchainGasPaymaster));
110
+ yield this.multiProvider.handleTx(local, connectionClient.setInterchainGasPaymaster(config.interchainGasPaymaster, txOverrides));
109
111
  }
110
- // set interchain security module if not already set (and configured)
111
- if (config.interchainSecurityModule &&
112
- config.interchainSecurityModule !==
113
- (yield connectionClient.interchainSecurityModule())) {
114
- this.logger(`Set interchain security module on ${local}`);
115
- yield this.multiProvider.handleTx(local, connectionClient.setInterchainSecurityModule(config.interchainSecurityModule));
112
+ let currentIsm = yield connectionClient.interchainSecurityModule();
113
+ // in case the above returns zero address, fetch the defaultISM from the mailbox
114
+ if (currentIsm === ethers_1.ethers.constants.AddressZero) {
115
+ const mailbox = core_1.Mailbox__factory.connect(config.mailbox, connectionClient.signer);
116
+ currentIsm = yield mailbox.defaultIsm();
117
+ }
118
+ if (config.interchainSecurityModule) {
119
+ // set interchain security module if not already set (and configured)
120
+ let configuredIsm;
121
+ if (typeof config.interchainSecurityModule === 'string') {
122
+ configuredIsm = config.interchainSecurityModule;
123
+ }
124
+ else if ((_a = this.options) === null || _a === void 0 ? void 0 : _a.ismFactory) {
125
+ const matches = yield (0, HyperlaneIsmFactory_1.moduleMatchesConfig)(local, currentIsm, config.interchainSecurityModule, this.multiProvider, this.options.ismFactory.chainMap[local]);
126
+ if (matches) {
127
+ // when the ISM recursively matches the IsmConfig, we don't need to deploy a new ISM
128
+ this.logger(`ISM matches config for chain ${local}, skipping deploy`);
129
+ return;
130
+ }
131
+ const ism = yield this.options.ismFactory.deploy(local, config.interchainSecurityModule);
132
+ configuredIsm = ism.address;
133
+ }
134
+ else {
135
+ throw new Error('No ISM factory provided');
136
+ }
137
+ this.logger(`Set interchain security module on ${local} at ${configuredIsm}`);
138
+ yield this.multiProvider.handleTx(local, connectionClient.setInterchainSecurityModule(configuredIsm, txOverrides));
116
139
  }
117
140
  }));
118
141
  this.logger(`Connection client on ${local} initialized...`);
@@ -152,7 +175,7 @@ class HyperlaneDeployer {
152
175
  changeAdmin(chain, proxy, admin) {
153
176
  return __awaiter(this, void 0, void 0, function* () {
154
177
  const actualAdmin = yield (0, proxy_1.proxyAdmin)(this.multiProvider.getProvider(chain), proxy.address);
155
- if (utils_1.utils.eqAddress(admin, actualAdmin)) {
178
+ if ((0, utils_1.eqAddress)(admin, actualAdmin)) {
156
179
  this.logger(`Admin set correctly, skipping admin change`);
157
180
  return;
158
181
  }
@@ -164,7 +187,7 @@ class HyperlaneDeployer {
164
187
  upgradeAndInitialize(chain, proxy, implementation, initializeArgs) {
165
188
  return __awaiter(this, void 0, void 0, function* () {
166
189
  const current = yield proxy.callStatic.implementation();
167
- if (utils_1.utils.eqAddress(implementation.address, current)) {
190
+ if ((0, utils_1.eqAddress)(implementation.address, current)) {
168
191
  this.logger(`Implementation set correctly, skipping upgrade`);
169
192
  return;
170
193
  }
@@ -189,6 +212,19 @@ class HyperlaneDeployer {
189
212
  return implementation.attach(proxy.address);
190
213
  });
191
214
  }
215
+ deployTimelock(chain, timelockConfig) {
216
+ return __awaiter(this, void 0, void 0, function* () {
217
+ const timelock = yield this.deployContractFromFactory(chain, new core_1.TimelockController__factory(), 'timelockController',
218
+ // delay, [proposers], [executors], admin
219
+ [
220
+ timelockConfig.delay,
221
+ [timelockConfig.roles.proposer],
222
+ [timelockConfig.roles.executor],
223
+ ethers_1.ethers.constants.AddressZero,
224
+ ]);
225
+ return timelock;
226
+ });
227
+ }
192
228
  writeCache(chain, contractName, address) {
193
229
  if (!this.cachedAddresses[chain]) {
194
230
  this.cachedAddresses[chain] = {};
@@ -198,7 +234,7 @@ class HyperlaneDeployer {
198
234
  readCache(chain, factory, contractName) {
199
235
  var _a;
200
236
  const cachedAddress = (_a = this.cachedAddresses[chain]) === null || _a === void 0 ? void 0 : _a[contractName];
201
- const hit = !!cachedAddress;
237
+ const hit = !!cachedAddress && cachedAddress !== ethers_1.ethers.constants.AddressZero;
202
238
  const contractAddress = hit ? cachedAddress : ethers_1.ethers.constants.AddressZero;
203
239
  const contract = factory
204
240
  .attach(contractAddress)
@@ -245,7 +281,7 @@ class HyperlaneDeployer {
245
281
  for (const contractName of Object.keys(ownables)) {
246
282
  const ownable = ownables[contractName];
247
283
  const currentOwner = yield ownable.owner();
248
- if (!utils_1.utils.eqAddress(currentOwner, owner)) {
284
+ if (!(0, utils_1.eqAddress)(currentOwner, owner)) {
249
285
  this.logger(`Transferring ownership of ${contractName} to ${owner} on ${chain}`);
250
286
  const receipt = yield this.runIfOwner(chain, ownable, () => this.multiProvider.handleTx(chain, ownable.transferOwnership(owner, this.multiProvider.getTransactionOverrides(chain))));
251
287
  if (receipt)
@@ -1 +1 @@
1
- {"version":3,"file":"HyperlaneDeployer.js","sourceRoot":"","sources":["../../src/deploy/HyperlaneDeployer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HyperlaneDeployer.js","sourceRoot":"","sources":["../../src/deploy/HyperlaneDeployer.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,15 @@
1
1
  import { ethers } from 'ethers';
2
- import type { types } from '@hyperlane-xyz/utils';
3
- export declare function proxyImplementation(provider: ethers.providers.Provider, proxy: types.Address): Promise<types.Address>;
4
- export declare function proxyAdmin(provider: ethers.providers.Provider, proxy: types.Address): Promise<types.Address>;
5
- export declare function isProxy(provider: ethers.providers.Provider, proxy: types.Address): Promise<boolean>;
2
+ import { Address } from '@hyperlane-xyz/utils';
3
+ export declare type UpgradeConfig = {
4
+ timelock: {
5
+ delay: number;
6
+ roles: {
7
+ executor: Address;
8
+ proposer: Address;
9
+ };
10
+ };
11
+ };
12
+ export declare function proxyImplementation(provider: ethers.providers.Provider, proxy: Address): Promise<Address>;
13
+ export declare function proxyAdmin(provider: ethers.providers.Provider, proxy: Address): Promise<Address>;
14
+ export declare function isProxy(provider: ethers.providers.Provider, proxy: Address): Promise<boolean>;
6
15
  //# sourceMappingURL=proxy.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"proxy.d.ts","sourceRoot":"","sources":["../../src/deploy/proxy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAGlD,wBAAsB,mBAAmB,CACvC,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,EACnC,KAAK,EAAE,KAAK,CAAC,OAAO,GACnB,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAOxB;AAED,wBAAsB,UAAU,CAC9B,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,EACnC,KAAK,EAAE,KAAK,CAAC,OAAO,GACnB,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAOxB;AAED,wBAAsB,OAAO,CAC3B,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,EACnC,KAAK,EAAE,KAAK,CAAC,OAAO,GACnB,OAAO,CAAC,OAAO,CAAC,CAGlB"}
1
+ {"version":3,"file":"proxy.d.ts","sourceRoot":"","sources":["../../src/deploy/proxy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAAE,OAAO,EAAa,MAAM,sBAAsB,CAAC;AAE1D,oBAAY,aAAa,GAAG;IAC1B,QAAQ,EAAE;QACR,KAAK,EAAE,MAAM,CAAC;QAEd,KAAK,EAAE;YACL,QAAQ,EAAE,OAAO,CAAC;YAClB,QAAQ,EAAE,OAAO,CAAC;SACnB,CAAC;KACH,CAAC;CACH,CAAC;AAEF,wBAAsB,mBAAmB,CACvC,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,EACnC,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,OAAO,CAAC,CAOlB;AAED,wBAAsB,UAAU,CAC9B,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,EACnC,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,OAAO,CAAC,CAOlB;AAED,wBAAsB,OAAO,CAC3B,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ,EACnC,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,OAAO,CAAC,CAGlB"}
@@ -11,7 +11,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.isProxy = exports.proxyAdmin = exports.proxyImplementation = void 0;
13
13
  const ethers_1 = require("ethers");
14
- const utils_1 = require("@hyperlane-xyz/utils/dist/src/utils");
14
+ const utils_1 = require("@hyperlane-xyz/utils");
15
15
  function proxyImplementation(provider, proxy) {
16
16
  return __awaiter(this, void 0, void 0, function* () {
17
17
  // Hardcoded storage slot for implementation per EIP-1967
@@ -1 +1 @@
1
- {"version":3,"file":"proxy.js","sourceRoot":"","sources":["../../src/deploy/proxy.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,mCAAgC;AAGhC,+DAAgE;AAEhE,SAAsB,mBAAmB,CACvC,QAAmC,EACnC,KAAoB;;QAEpB,yDAAyD;QACzD,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,YAAY,CAC9C,KAAK,EACL,oEAAoE,CACrE,CAAC;QACF,OAAO,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;IACzD,CAAC;CAAA;AAVD,kDAUC;AAED,SAAsB,UAAU,CAC9B,QAAmC,EACnC,KAAoB;;QAEpB,gDAAgD;QAChD,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,YAAY,CAC9C,KAAK,EACL,oEAAoE,CACrE,CAAC;QACF,OAAO,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;IACzD,CAAC;CAAA;AAVD,gCAUC;AAED,SAAsB,OAAO,CAC3B,QAAmC,EACnC,KAAoB;;QAEpB,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAChD,OAAO,CAAC,IAAA,iBAAS,EAAC,KAAK,EAAE,eAAM,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IACzD,CAAC;CAAA;AAND,0BAMC"}
1
+ {"version":3,"file":"proxy.js","sourceRoot":"","sources":["../../src/deploy/proxy.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,mCAAgC;AAEhC,gDAA0D;AAa1D,SAAsB,mBAAmB,CACvC,QAAmC,EACnC,KAAc;;QAEd,yDAAyD;QACzD,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,YAAY,CAC9C,KAAK,EACL,oEAAoE,CACrE,CAAC;QACF,OAAO,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;IACzD,CAAC;CAAA;AAVD,kDAUC;AAED,SAAsB,UAAU,CAC9B,QAAmC,EACnC,KAAc;;QAEd,gDAAgD;QAChD,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,YAAY,CAC9C,KAAK,EACL,oEAAoE,CACrE,CAAC;QACF,OAAO,eAAM,CAAC,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;IACzD,CAAC;CAAA;AAVD,gCAUC;AAED,SAAsB,OAAO,CAC3B,QAAmC,EACnC,KAAc;;QAEd,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAChD,OAAO,CAAC,IAAA,iBAAS,EAAC,KAAK,EAAE,eAAM,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IACzD,CAAC;CAAA;AAND,0BAMC"}
@@ -1,5 +1,5 @@
1
1
  import type { Contract } from 'ethers';
2
- import type { Ownable } from '@hyperlane-xyz/core';
2
+ import type { AccessControl, Ownable, TimelockController } from '@hyperlane-xyz/core';
3
3
  import type { ChainName } from '../types';
4
4
  export interface CheckerViolation {
5
5
  chain: ChainName;
@@ -12,7 +12,9 @@ export declare enum ViolationType {
12
12
  Owner = "Owner",
13
13
  NotDeployed = "NotDeployed",
14
14
  BytecodeMismatch = "BytecodeMismatch",
15
- ProxyAdmin = "ProxyAdmin"
15
+ ProxyAdmin = "ProxyAdmin",
16
+ TimelockController = "TimelockController",
17
+ AccessControl = "AccessControl"
16
18
  }
17
19
  export interface OwnerViolation extends CheckerViolation {
18
20
  type: ViolationType.Owner;
@@ -25,6 +27,20 @@ export interface ProxyAdminViolation extends CheckerViolation {
25
27
  type: ViolationType.ProxyAdmin;
26
28
  name: string;
27
29
  }
30
+ export interface TimelockControllerViolation extends CheckerViolation {
31
+ type: ViolationType.TimelockController;
32
+ actual: number;
33
+ expected: number;
34
+ contract: TimelockController;
35
+ }
36
+ export interface AccessControlViolation extends CheckerViolation {
37
+ type: ViolationType.AccessControl;
38
+ role: string;
39
+ account: string;
40
+ actual: boolean;
41
+ expected: boolean;
42
+ contract: AccessControl;
43
+ }
28
44
  export interface NotDeployedViolation extends CheckerViolation {
29
45
  type: ViolationType.NotDeployed;
30
46
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/deploy/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAEvC,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAEnD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE1C,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,SAAS,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,GAAG,CAAC;IACd,MAAM,EAAE,GAAG,CAAC;IACZ,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB;AAED,oBAAY,aAAa;IACvB,KAAK,UAAU;IACf,WAAW,gBAAgB;IAC3B,gBAAgB,qBAAqB;IACrC,UAAU,eAAe;CAC1B;AAED,MAAM,WAAW,cAAe,SAAQ,gBAAgB;IACtD,IAAI,EAAE,aAAa,CAAC,KAAK,CAAC;IAC1B,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,mBAAoB,SAAQ,gBAAgB;IAC3D,IAAI,EAAE,aAAa,CAAC,UAAU,CAAC;IAC/B,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,oBAAqB,SAAQ,gBAAgB;IAC5D,IAAI,EAAE,aAAa,CAAC,WAAW,CAAC;CACjC;AAED,MAAM,WAAW,yBAA0B,SAAQ,gBAAgB;IACjE,IAAI,EAAE,aAAa,CAAC,gBAAgB,CAAC;IACrC,IAAI,EAAE,MAAM,CAAC;CACd"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/deploy/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAEvC,OAAO,KAAK,EACV,aAAa,EACb,OAAO,EACP,kBAAkB,EACnB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE1C,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,SAAS,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,GAAG,CAAC;IACd,MAAM,EAAE,GAAG,CAAC;IACZ,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB;AAED,oBAAY,aAAa;IACvB,KAAK,UAAU;IACf,WAAW,gBAAgB;IAC3B,gBAAgB,qBAAqB;IACrC,UAAU,eAAe;IACzB,kBAAkB,uBAAuB;IACzC,aAAa,kBAAkB;CAChC;AAED,MAAM,WAAW,cAAe,SAAQ,gBAAgB;IACtD,IAAI,EAAE,aAAa,CAAC,KAAK,CAAC;IAC1B,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,mBAAoB,SAAQ,gBAAgB;IAC3D,IAAI,EAAE,aAAa,CAAC,UAAU,CAAC;IAC/B,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,2BAA4B,SAAQ,gBAAgB;IACnE,IAAI,EAAE,aAAa,CAAC,kBAAkB,CAAC;IACvC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,kBAAkB,CAAC;CAC9B;AAED,MAAM,WAAW,sBAAuB,SAAQ,gBAAgB;IAC9D,IAAI,EAAE,aAAa,CAAC,aAAa,CAAC;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,aAAa,CAAC;CACzB;AAED,MAAM,WAAW,oBAAqB,SAAQ,gBAAgB;IAC5D,IAAI,EAAE,aAAa,CAAC,WAAW,CAAC;CACjC;AAED,MAAM,WAAW,yBAA0B,SAAQ,gBAAgB;IACjE,IAAI,EAAE,aAAa,CAAC,gBAAgB,CAAC;IACrC,IAAI,EAAE,MAAM,CAAC;CACd"}
@@ -7,5 +7,7 @@ var ViolationType;
7
7
  ViolationType["NotDeployed"] = "NotDeployed";
8
8
  ViolationType["BytecodeMismatch"] = "BytecodeMismatch";
9
9
  ViolationType["ProxyAdmin"] = "ProxyAdmin";
10
+ ViolationType["TimelockController"] = "TimelockController";
11
+ ViolationType["AccessControl"] = "AccessControl";
10
12
  })(ViolationType = exports.ViolationType || (exports.ViolationType = {}));
11
13
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/deploy/types.ts"],"names":[],"mappings":";;;AAcA,IAAY,aAKX;AALD,WAAY,aAAa;IACvB,gCAAe,CAAA;IACf,4CAA2B,CAAA;IAC3B,sDAAqC,CAAA;IACrC,0CAAyB,CAAA;AAC3B,CAAC,EALW,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAKxB"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/deploy/types.ts"],"names":[],"mappings":";;;AAkBA,IAAY,aAOX;AAPD,WAAY,aAAa;IACvB,gCAAe,CAAA;IACf,4CAA2B,CAAA;IAC3B,sDAAqC,CAAA;IACrC,0CAAyB,CAAA;IACzB,0DAAyC,CAAA;IACzC,gDAA+B,CAAA;AACjC,CAAC,EAPW,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAOxB"}
@@ -1 +1 @@
1
- {"version":3,"file":"ContractVerifier.d.ts","sourceRoot":"","sources":["../../../src/deploy/verify/ContractVerifier.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAS,MAAM,OAAO,CAAC;AAMxC,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAExD,OAAO,EACL,eAAe,EACf,yBAAyB,EACzB,iBAAiB,EAClB,MAAM,SAAS,CAAC;AAiBjB,qBAAa,gBAAiB,SAAQ,YAAY,CAAC,iBAAiB,CAAC;IAKjE,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,aAAa;IAC/C,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC;IAC5C,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,MAAM;IAC1C,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,eAAe;IAPrD,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC;gBAGzB,kBAAkB,EAAE,QAAQ,CAAC,iBAAiB,CAAC,EAC5B,aAAa,EAAE,aAAa,EAC5B,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,EACzB,eAAe,EAAE,MAAM,EAAE,kDAAkD;IAC3E,eAAe,EAAE,eAAe;IAMrD,MAAM,CAAC,OAAO,WAAgB,GAAG,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;IAMhE,WAAW,CACf,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,iBAAiB,GACxB,OAAO,CAAC,IAAI,CAAC;YAOF,UAAU;YA6DV,iBAAiB;IAoBzB,WAAW,CACf,KAAK,EAAE,SAAS,EAChB,KAAK,EAAE,yBAAyB,GAC/B,OAAO,CAAC,IAAI,CAAC;IAkCV,oBAAoB,CACxB,KAAK,EAAE,SAAS,EAChB,KAAK,EAAE,yBAAyB,GAC/B,OAAO,CAAC,IAAI,CAAC;IAuCV,cAAc,CAClB,KAAK,EAAE,SAAS,EAChB,KAAK,EAAE,yBAAyB,GAC/B,OAAO,CAAC,IAAI,CAAC;CAoBjB"}
1
+ {"version":3,"file":"ContractVerifier.d.ts","sourceRoot":"","sources":["../../../src/deploy/verify/ContractVerifier.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAS,MAAM,OAAO,CAAC;AAKxC,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAExD,OAAO,EACL,eAAe,EACf,yBAAyB,EACzB,iBAAiB,EAClB,MAAM,SAAS,CAAC;AAiBjB,qBAAa,gBAAiB,SAAQ,YAAY,CAAC,iBAAiB,CAAC;IAKjE,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,aAAa;IAC/C,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC;IAC5C,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,MAAM;IAC1C,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,eAAe;IAPrD,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC;gBAGzB,kBAAkB,EAAE,QAAQ,CAAC,iBAAiB,CAAC,EAC5B,aAAa,EAAE,aAAa,EAC5B,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,EACzB,eAAe,EAAE,MAAM,EAAE,kDAAkD;IAC3E,eAAe,EAAE,eAAe;IAMrD,MAAM,CAAC,OAAO,WAAgB,GAAG,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;IAMhE,WAAW,CACf,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,iBAAiB,GACxB,OAAO,CAAC,IAAI,CAAC;YAOF,UAAU;YA6DV,iBAAiB;IAoBzB,WAAW,CACf,KAAK,EAAE,SAAS,EAChB,KAAK,EAAE,yBAAyB,GAC/B,OAAO,CAAC,IAAI,CAAC;IAkCV,oBAAoB,CACxB,KAAK,EAAE,SAAS,EAChB,KAAK,EAAE,yBAAyB,GAC/B,OAAO,CAAC,IAAI,CAAC;IAuCV,cAAc,CAClB,KAAK,EAAE,SAAS,EAChB,KAAK,EAAE,yBAAyB,GAC/B,OAAO,CAAC,IAAI,CAAC;CAoBjB"}