@layerzerolabs/protocol-stellar-v2 0.2.20 → 0.2.22

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 (198) hide show
  1. package/.turbo/turbo-build.log +783 -802
  2. package/.turbo/turbo-lint.log +320 -157
  3. package/.turbo/turbo-test.log +1414 -1457
  4. package/Cargo.lock +109 -108
  5. package/Cargo.toml +32 -18
  6. package/contracts/common-macros/Cargo.toml +7 -7
  7. package/contracts/common-macros/src/auth.rs +18 -37
  8. package/contracts/common-macros/src/contract_ttl.rs +2 -2
  9. package/contracts/common-macros/src/lib.rs +27 -10
  10. package/contracts/common-macros/src/lz_contract.rs +38 -7
  11. package/contracts/common-macros/src/storage.rs +251 -292
  12. package/contracts/common-macros/src/tests/snapshots/common_macros__tests__auth__snapshot_generated_multisig_code.snap +6 -12
  13. package/contracts/common-macros/src/tests/snapshots/common_macros__tests__auth__snapshot_generated_ownable_code.snap +12 -17
  14. package/contracts/common-macros/src/tests/snapshots/common_macros__tests__ttl_configurable__snapshot_generated_ttl_configurable_code.snap +2 -7
  15. package/contracts/common-macros/src/tests/snapshots/common_macros__tests__upgradeable__snapshot_generated_upgradeable_code.snap +20 -9
  16. package/contracts/common-macros/src/tests/upgradeable.rs +26 -4
  17. package/contracts/common-macros/src/ttl_configurable.rs +2 -10
  18. package/contracts/common-macros/src/ttl_extendable.rs +2 -10
  19. package/contracts/common-macros/src/upgradeable.rs +56 -15
  20. package/contracts/common-macros/src/utils.rs +0 -9
  21. package/contracts/endpoint-v2/src/lib.rs +3 -2
  22. package/contracts/endpoint-v2/src/tests/endpoint_v2/clear.rs +2 -2
  23. package/contracts/endpoint-v2/src/tests/endpoint_v2/lz_receive_alert.rs +3 -3
  24. package/contracts/endpoint-v2/src/tests/endpoint_v2/send.rs +4 -4
  25. package/contracts/endpoint-v2/src/tests/endpoint_v2/set_delegate.rs +17 -5
  26. package/contracts/endpoint-v2/src/tests/endpoint_v2/set_zro.rs +4 -4
  27. package/contracts/endpoint-v2/src/tests/endpoint_v2/verify.rs +2 -2
  28. package/contracts/endpoint-v2/src/tests/message_lib_manager/register_library.rs +2 -2
  29. package/contracts/endpoint-v2/src/tests/message_lib_manager/set_default_receive_lib_timeout.rs +6 -6
  30. package/contracts/endpoint-v2/src/tests/message_lib_manager/set_default_receive_library.rs +67 -37
  31. package/contracts/endpoint-v2/src/tests/message_lib_manager/set_default_send_library.rs +5 -5
  32. package/contracts/endpoint-v2/src/tests/message_lib_manager/set_receive_library.rs +44 -54
  33. package/contracts/endpoint-v2/src/tests/message_lib_manager/set_receive_library_timeout.rs +7 -7
  34. package/contracts/endpoint-v2/src/tests/message_lib_manager/set_send_library.rs +8 -8
  35. package/contracts/endpoint-v2/src/tests/messaging_channel/burn.rs +3 -3
  36. package/contracts/endpoint-v2/src/tests/messaging_channel/nilify.rs +4 -4
  37. package/contracts/endpoint-v2/src/tests/messaging_channel/skip.rs +3 -3
  38. package/contracts/endpoint-v2/src/tests/messaging_composer/clear_compose.rs +2 -2
  39. package/contracts/endpoint-v2/src/tests/messaging_composer/lz_compose_alert.rs +3 -3
  40. package/contracts/endpoint-v2/src/tests/messaging_composer/send_compose.rs +2 -2
  41. package/contracts/layerzero-views/Cargo.toml +0 -1
  42. package/contracts/layerzero-views/src/layerzero_view.rs +1 -13
  43. package/contracts/macro-integration-tests/Cargo.toml +5 -15
  44. package/contracts/macro-integration-tests/tests/runtime/oapp/mod.rs +48 -0
  45. package/contracts/macro-integration-tests/tests/runtime/oapp/oapp_core.rs +170 -0
  46. package/contracts/macro-integration-tests/tests/runtime/oapp/options_type3.rs +154 -0
  47. package/contracts/macro-integration-tests/tests/runtime/oapp/receiver.rs +338 -0
  48. package/contracts/macro-integration-tests/tests/runtime/oapp/sender.rs +435 -0
  49. package/contracts/macro-integration-tests/tests/runtime.rs +1 -0
  50. package/contracts/macro-integration-tests/tests/ui/oapp/fail/custom_wrong_value.rs +8 -0
  51. package/contracts/macro-integration-tests/tests/ui/oapp/fail/custom_wrong_value.stderr +5 -0
  52. package/contracts/macro-integration-tests/tests/ui/oapp/fail/missing_lz_receive_internal.rs +8 -0
  53. package/contracts/macro-integration-tests/tests/ui/oapp/fail/missing_lz_receive_internal.stderr +71 -0
  54. package/contracts/macro-integration-tests/tests/ui/oapp/fail/non_struct_input.rs +10 -0
  55. package/contracts/macro-integration-tests/tests/ui/oapp/fail/non_struct_input.stderr +5 -0
  56. package/contracts/macro-integration-tests/tests/ui/oapp/fail/unknown_custom_option.rs +8 -0
  57. package/contracts/macro-integration-tests/tests/ui/oapp/fail/unknown_custom_option.stderr +5 -0
  58. package/contracts/macro-integration-tests/tests/ui/oapp/fail/wrong_key.rs +8 -0
  59. package/contracts/macro-integration-tests/tests/ui/oapp/fail/wrong_key.stderr +5 -0
  60. package/contracts/macro-integration-tests/tests/ui/oapp/pass/custom_all.rs +38 -0
  61. package/contracts/macro-integration-tests/tests/ui/oapp/pass/custom_single_trait.rs +96 -0
  62. package/contracts/macro-integration-tests/tests/ui/oapp/pass/minimal_contract.rs +64 -0
  63. package/contracts/macro-integration-tests/tests/ui/oapp/pass/struct_with_fields.rs +46 -0
  64. package/contracts/macro-integration-tests/tests/ui/ownable/fail/only_auth_missing_env.stderr +8 -0
  65. package/contracts/macro-integration-tests/tests/ui/ownable/pass/namespacing_and_imports.rs +1 -1
  66. package/contracts/macro-integration-tests/tests/ui/ownable/pass/only_auth_env_param_variants.rs +1 -1
  67. package/contracts/macro-integration-tests/tests/ui_oapp.rs +11 -0
  68. package/contracts/message-libs/message-lib-common/Cargo.toml +0 -1
  69. package/contracts/message-libs/message-lib-common/src/errors.rs +1 -1
  70. package/contracts/message-libs/treasury/Cargo.toml +0 -2
  71. package/contracts/message-libs/treasury/src/tests/treasury_tests.rs +2 -2
  72. package/contracts/message-libs/uln-302/src/tests/receive_uln302/effective_receive_uln_config.rs +2 -2
  73. package/contracts/message-libs/uln-302/src/tests/receive_uln302/set_default_receive_uln_configs.rs +2 -2
  74. package/contracts/message-libs/uln-302/src/tests/receive_uln302/verify.rs +2 -2
  75. package/contracts/message-libs/uln-302/src/tests/send_uln302/effective_executor_config.rs +2 -2
  76. package/contracts/message-libs/uln-302/src/tests/send_uln302/effective_send_uln_config.rs +2 -2
  77. package/contracts/message-libs/uln-302/src/tests/send_uln302/send.rs +7 -27
  78. package/contracts/message-libs/uln-302/src/tests/send_uln302/set_default_executor_configs.rs +2 -2
  79. package/contracts/message-libs/uln-302/src/tests/send_uln302/set_default_send_uln_configs.rs +2 -2
  80. package/contracts/oapps/counter/Cargo.toml +4 -6
  81. package/contracts/oapps/counter/integration_tests/utils.rs +19 -12
  82. package/contracts/oapps/oapp/src/errors.rs +1 -1
  83. package/contracts/oapps/oapp/src/interfaces/mod.rs +3 -0
  84. package/contracts/oapps/oapp/src/interfaces/oapp_msg_inspector.rs +47 -0
  85. package/contracts/oapps/oapp/src/lib.rs +1 -0
  86. package/contracts/oapps/oapp/src/macro_tests/test_macros.rs +4 -4
  87. package/contracts/oapps/oapp/src/oapp_core.rs +5 -5
  88. package/contracts/oapps/oapp/src/oapp_options_type3.rs +12 -4
  89. package/contracts/oapps/oapp/src/oapp_receiver.rs +14 -9
  90. package/contracts/oapps/oapp/src/tests/mod.rs +4 -4
  91. package/contracts/oapps/oapp/src/tests/{test_oapp_core.rs → oapp_core.rs} +4 -4
  92. package/contracts/oapps/oapp/src/tests/{test_oapp_options_type3.rs → oapp_options_type3.rs} +3 -4
  93. package/contracts/oapps/oapp-macros/Cargo.toml +8 -4
  94. package/contracts/oapps/oapp-macros/src/generators.rs +9 -34
  95. package/contracts/oapps/oapp-macros/src/lib.rs +3 -0
  96. package/contracts/oapps/oapp-macros/src/tests/mod.rs +2 -0
  97. package/contracts/oapps/oapp-macros/src/tests/oapp.rs +88 -0
  98. package/contracts/oapps/oapp-macros/src/tests/parse_custom_impls.rs +86 -0
  99. package/contracts/oapps/oapp-macros/src/tests/snapshots/oapp_macros__tests__oapp__snapshot_generate_oapp.snap +103 -0
  100. package/contracts/oapps/oft/integration-tests/utils.rs +28 -8
  101. package/contracts/oapps/oft/src/extensions/oft_fee.rs +136 -74
  102. package/contracts/oapps/oft/src/extensions/pausable.rs +44 -10
  103. package/contracts/oapps/oft/src/extensions/rate_limiter.rs +170 -130
  104. package/contracts/oapps/oft/src/oft.rs +19 -12
  105. package/contracts/oapps/oft/src/oft_types/lock_unlock.rs +1 -1
  106. package/contracts/oapps/oft/src/oft_types/mint_burn.rs +1 -1
  107. package/contracts/oapps/oft-core/Cargo.toml +1 -4
  108. package/contracts/oapps/oft-core/integration-tests/setup.rs +2 -2
  109. package/contracts/oapps/oft-core/integration-tests/utils.rs +21 -3
  110. package/contracts/oapps/oft-core/src/errors.rs +3 -2
  111. package/contracts/oapps/oft-core/src/events.rs +6 -0
  112. package/contracts/oapps/oft-core/src/lib.rs +1 -1
  113. package/contracts/oapps/oft-core/src/oft_core.rs +115 -60
  114. package/contracts/oapps/oft-core/src/storage.rs +7 -3
  115. package/contracts/oapps/oft-core/src/tests/mod.rs +1 -0
  116. package/contracts/oapps/oft-core/src/tests/test_decimals.rs +37 -2
  117. package/contracts/oapps/oft-core/src/tests/test_lz_receive.rs +2 -2
  118. package/contracts/oapps/oft-core/src/tests/test_msg_inspector.rs +323 -0
  119. package/contracts/oapps/oft-core/src/tests/test_send.rs +2 -2
  120. package/contracts/oapps/oft-core/src/tests/test_utils.rs +59 -14
  121. package/contracts/utils/Cargo.toml +0 -1
  122. package/contracts/utils/src/errors.rs +1 -1
  123. package/contracts/utils/src/multisig.rs +17 -8
  124. package/contracts/utils/src/ownable.rs +6 -6
  125. package/contracts/utils/src/testing_utils.rs +124 -54
  126. package/contracts/utils/src/tests/multisig.rs +12 -12
  127. package/contracts/utils/src/tests/ownable.rs +6 -6
  128. package/contracts/utils/src/tests/testing_utils.rs +50 -167
  129. package/contracts/utils/src/tests/ttl_configurable.rs +5 -5
  130. package/contracts/utils/src/tests/upgradeable.rs +1 -1
  131. package/contracts/utils/src/ttl_configurable.rs +10 -4
  132. package/contracts/utils/src/upgradeable.rs +5 -5
  133. package/contracts/workers/dvn/Cargo.toml +5 -6
  134. package/contracts/workers/dvn/src/dvn.rs +2 -12
  135. package/contracts/workers/dvn-fee-lib/Cargo.toml +1 -1
  136. package/contracts/workers/dvn-fee-lib/src/dvn_fee_lib.rs +37 -19
  137. package/contracts/workers/dvn-fee-lib/src/lib.rs +12 -2
  138. package/contracts/workers/dvn-fee-lib/src/tests/dvn_fee_lib.rs +15 -13
  139. package/contracts/workers/executor/Cargo.toml +3 -0
  140. package/contracts/workers/executor/src/executor.rs +2 -12
  141. package/contracts/workers/executor/src/lib.rs +2 -2
  142. package/contracts/workers/executor/src/tests/auth.rs +394 -0
  143. package/contracts/workers/executor/src/tests/executor.rs +410 -0
  144. package/contracts/workers/executor/src/tests/mod.rs +3 -0
  145. package/contracts/workers/executor/src/tests/setup.rs +250 -0
  146. package/contracts/workers/executor-fee-lib/Cargo.toml +5 -0
  147. package/contracts/workers/executor-fee-lib/src/executor_fee_lib.rs +1 -12
  148. package/contracts/workers/executor-fee-lib/src/lib.rs +8 -2
  149. package/contracts/workers/executor-helper/Cargo.toml +0 -1
  150. package/contracts/workers/price-feed/Cargo.toml +5 -0
  151. package/contracts/workers/price-feed/src/lib.rs +9 -4
  152. package/contracts/workers/price-feed/src/price_feed.rs +1 -11
  153. package/contracts/workers/worker/src/errors.rs +1 -1
  154. package/contracts/workers/worker/src/tests/setup.rs +1 -1
  155. package/contracts/workers/worker/src/tests/worker.rs +55 -41
  156. package/contracts/workers/worker/src/worker.rs +34 -25
  157. package/docs/error-spec.md +55 -0
  158. package/docs/layerzero-v2-on-stellar.md +447 -0
  159. package/docs/oapp-guide.md +212 -0
  160. package/docs/oft-guide.md +314 -0
  161. package/package.json +3 -3
  162. package/sdk/.turbo/turbo-test.log +260 -257
  163. package/sdk/dist/generated/bml.d.ts +3 -3
  164. package/sdk/dist/generated/bml.js +4 -4
  165. package/sdk/dist/generated/counter.d.ts +295 -295
  166. package/sdk/dist/generated/counter.js +43 -43
  167. package/sdk/dist/generated/dvn.d.ts +91 -91
  168. package/sdk/dist/generated/dvn.js +24 -24
  169. package/sdk/dist/generated/dvn_fee_lib.d.ts +92 -92
  170. package/sdk/dist/generated/dvn_fee_lib.js +25 -25
  171. package/sdk/dist/generated/endpoint.d.ts +99 -99
  172. package/sdk/dist/generated/endpoint.js +16 -16
  173. package/sdk/dist/generated/executor.d.ts +91 -91
  174. package/sdk/dist/generated/executor.js +24 -24
  175. package/sdk/dist/generated/executor_fee_lib.d.ts +92 -92
  176. package/sdk/dist/generated/executor_fee_lib.js +25 -25
  177. package/sdk/dist/generated/executor_helper.d.ts +3 -3
  178. package/sdk/dist/generated/executor_helper.js +4 -4
  179. package/sdk/dist/generated/layerzero_view.d.ts +186 -186
  180. package/sdk/dist/generated/layerzero_view.js +35 -35
  181. package/sdk/dist/generated/oft.d.ts +366 -352
  182. package/sdk/dist/generated/oft.js +74 -79
  183. package/sdk/dist/generated/price_feed.d.ts +198 -198
  184. package/sdk/dist/generated/price_feed.js +39 -39
  185. package/sdk/dist/generated/sml.d.ts +99 -99
  186. package/sdk/dist/generated/sml.js +16 -16
  187. package/sdk/dist/generated/treasury.d.ts +99 -99
  188. package/sdk/dist/generated/treasury.js +16 -16
  189. package/sdk/dist/generated/uln302.d.ts +99 -99
  190. package/sdk/dist/generated/uln302.js +16 -16
  191. package/sdk/dist/generated/upgrader.d.ts +3 -3
  192. package/sdk/dist/generated/upgrader.js +3 -3
  193. package/sdk/package.json +1 -1
  194. package/sdk/test/suites/localnet.ts +84 -20
  195. package/contracts/ERROR_SPEC.md +0 -51
  196. package/contracts/endpoint-v2/ARCHITECTURE.md +0 -233
  197. /package/contracts/oapps/oapp/src/tests/{test_oapp_receiver.rs → oapp_receiver.rs} +0 -0
  198. /package/contracts/oapps/oapp/src/tests/{test_oapp_sender.rs → oapp_sender.rs} +0 -0
@@ -6,41 +6,19 @@ export * as contract from '@stellar/stellar-sdk/contract';
6
6
  export * as rpc from '@stellar/stellar-sdk/rpc';
7
7
  /**
8
8
  * Embedded WASM bytecode (base64-encoded)
9
- * Size: 33910 bytes (33.12 KB)
9
+ * Size: 33995 bytes (33.20 KB)
10
10
  */
11
- export declare const WASM_BASE64 = "AGFzbQEAAAABlgEaYAR+fn5+AX5gAn5+AX5gA35+fgF+YAF+AX5gAAF+YAN/f38AYAF/AX5gAn9/AGACfn4Bf2ACf34AYAN/fn4AYAABf2ABfwBgAX8Bf2AAAGACfn8AYAF+AGACfn8BfmAEf39/fwF+YAV/f39+fgBgAn9/AX5gBX5/f39/AGABfgF/YAJ+fgBgBH9+fn8AYAV/fn5+fgACowEbAWwBNwAAAWwBMQABAWwBXwACAWEBMAADAWkBNgABAWwBMgABAXgBMQABAXYBMwADAXYBMQABAWIBOAADAWwBNgADAWIBMAADAWkBXwADAWkBMAADAWkBMwABAWkBNQADAWkBNAADAXYBZwABAWIBagABAW0BOQACAW0BYQAAAXgBMAABAXgBMwAEAXgBOAAEAWwBMAABAWwBOAABAXgBNQADA3FwBQYHCAkKAQsMBw0LBg4EBAwPDgwQBgwBEQkSBQkKBgcQDAQBBwcQABMTDQcMDgwKBAMECQEUAwMDAxUBEAcBCQEDFgQMBAwDCAkBCQsGBAcUBAQBBAQDFwEOCgQOBAMMAwQHBA4FCQUGBwUYGBkZGQUDAQARBiEEfwFBgIDAAAt/AEGshMAAC38AQc+GwAALfwBB0IbAAAsHpwUkBm1lbW9yeQIACmF1dGhvcml6ZXIAPQ1fX2NvbnN0cnVjdG9yAD4TZXN0aW1hdGVfZmVlX2J5X2VpZABCFm5hdGl2ZV90b2tlbl9wcmljZV91c2QASwlnZXRfcHJpY2UATBtnZXRfcHJpY2VfcmF0aW9fZGVub21pbmF0b3IATRFzZXRfcHJpY2VfdXBkYXRlcgBPG3NldF9wcmljZV9yYXRpb19kZW5vbWluYXRvcgBSIHNldF9hcmJpdHJ1bV9jb21wcmVzc2lvbl9wZXJjZW50AFMVc2V0X2VpZF90b19tb2RlbF90eXBlAFQJc2V0X3ByaWNlAFYWc2V0X3ByaWNlX2Zvcl9hcmJpdHJ1bQBZGnNldF9uYXRpdmVfdG9rZW5fcHJpY2VfdXNkAFsQaXNfcHJpY2VfdXBkYXRlcgBcHGFyYml0cnVtX2NvbXByZXNzaW9uX3BlcmNlbnQAXhJhcmJpdHJ1bV9wcmljZV9leHQAYBFlaWRfdG9fbW9kZWxfdHlwZQBiD3NldF90dGxfY29uZmlncwBlC3R0bF9jb25maWdzAGkSZnJlZXplX3R0bF9jb25maWdzAGwVaXNfdHRsX2NvbmZpZ3NfZnJvemVuAG0TZXh0ZW5kX2luc3RhbmNlX3R0bABuBW93bmVyAG8NcGVuZGluZ19vd25lcgBwEnRyYW5zZmVyX293bmVyc2hpcABxGnByb3Bvc2Vfb3duZXJzaGlwX3RyYW5zZmVyAHMQYWNjZXB0X293bmVyc2hpcAB2EnJlbm91bmNlX293bmVyc2hpcAB4B3VwZ3JhZGUAeQdtaWdyYXRlAHsGZnJlZXplAHwJaXNfZnJvemVuAH4BXwMBCl9fZGF0YV9lbmQDAgtfX2hlYXBfYmFzZQMDCrKBAXAlACAAEJyAgIAAQgEgAa1CIIZCBIQgAq1CIIZCBIQQgICAgAAaC4QDAgF/AX4jgICAgABBEGsiASSAgICAAAJAAkACQAJAAkACQAJAAkACQAJAIAAoAgAOBwABAgMEBQYACyABQYCAwIAAQRUQtoCAgAAgASgCAA0HIAEgASkDCBC3gICAAAwGCyABQZWAwIAAQQwQtoCAgAAgASgCAA0GIAEgASkDCCAAKQMIELiAgIAADAULIAFBoYDAgABBERC2gICAACABKAIADQUgASABKQMIIAA1AgRCIIZCBIQQuICAgAAMBAsgAUGygMCAAEEQELaAgIAAIAEoAgANBCABIAEpAwgQt4CAgAAMAwsgAUHCgMCAAEEOELaAgIAAIAEoAgANAyABIAEpAwgQt4CAgAAMAgsgAUHQgMCAAEEaELaAgIAAIAEoAgANAiABIAEpAwgQt4CAgAAMAQsgAUHqgMCAAEEOELaAgIAAIAEoAgANASABIAEpAwggADUCBEIghkIEhBC4gICAAAsgASkDCCECIAEpAwBQDQELAAsgAUEQaiSAgICAACACC40BAgF/AX4jgICAgABBIGsiAiSAgICAAAJAAkACQCABEJyAgIAAIgNCAhCegICAAA0AQgAhAwwBCyACIANCAhCBgICAABCfgICAACACKAIAQQFGDQEgAikDECEDIAAgAikDGDcDGCAAIAM3AxBCASEDCyAAIAM3AwAgAEIANwMIIAJBIGokgICAgAAPCwALDwAgACABEJiAgIAAQgFRC3sCAX8BfgJAAkACQCABp0H/AXEiAkHEAEYNACACQQpHDQFCACEDIABCADcDGCAAIAFCCIg3AxAMAgsgARCPgICAACEDIAEQkICAgAAhASAAIAM3AxggACABNwMQQgAhAwwBCyAAQoOQgICAATcDCEIBIQMLIAAgAzcDAAsdACAAEJyAgIAAIAEgAhChgICAAEICEIKAgIAAGgtDAQF/I4CAgIAAQRBrIgIkgICAgAAgAiAAIAEQyoCAgAACQCACKAIAQQFHDQAACyACKQMIIQEgAkEQaiSAgICAACABC1gBAn8jgICAgABBEGsiACSAgICAACAAQQRqEKOAgIAAAkAgACgCBEEBRw0AIAAoAgggACgCDBCkgICAAAtBABClgICAACEBIABBEGokgICAgAAgAUH9AXELDAAgAEEBEISBgIAACxsAIACtQiCGQgSEIAGtQiCGQgSEEJmAgIAAGgtHAgF/AX5BAiEBAkAgABCDgYCAACICQgIQnoCAgABFDQBBASEBAkACQCACQgIQgYCAgACnQf8BcQ4CAQIACwALQQAhAQsgAQuLAQICfwF+I4CAgIAAQRBrIgAkgICAgAAgAEEEahCjgICAAAJAIAAoAgRBAUcNACAAKAIIIAAoAgwQpICAgAALQQAhAQJAQQAQp4CAgAAiAkICEJ6AgIAARQ0AQQEhAQJAAkAgAkICEIGAgIAAp0H/AXEOAgECAAsAC0EAIQELIABBEGokgICAgAAgAQvCAQIBfwF+I4CAgIAAQRBrIgEkgICAgAACQAJAAkACQAJAAkAgAEH/AXEOAwABAgALIAFBrobAgABBBhC2gICAACABKAIADQMgASABKQMIELeAgIAADAILIAFBtIbAgABBCBC2gICAACABKAIADQIgASABKQMIELeAgIAADAELIAFBvIbAgABBChC2gICAACABKAIADQEgASABKQMIELeAgIAACyABKQMIIQIgASkDAFANAQsACyABQRBqJICAgIAAIAILDwAQqYCAgAAQg4CAgAAaC2YCAX8BfiOAgICAAEEQayIAJICAgIAAIAAQo4CAgAACQCAAKAIAQQFHDQAgACgCBCAAKAIIEKSAgIAACyAAEKuAgIAAIAApAwghASAAKQMAQYoIEKyAgIAAIABBEGokgICAgAAgAQtKAgF/AX4jgICAgABBEGsiACSAgICAACAAEKuAgIAAIAApAwghASAAKQMAQYoIEKyAgIAAIAEQg4CAgAAaIABBEGokgICAgAAgAQtQAQF/I4CAgIAAQRBrIgEkgICAgAAgAUEEahCjgICAAAJAIAEoAgRBAUcNACABKAIIIAEoAgwQpICAgAALIAAQsYCAgAAgAUEQaiSAgICAAAspAAJAIACnQQFxRQ0ADwsgAUH6d2qtQiCGQoOAgIDggAF8EK+AgIAAAAtCAQF/I4CAgIAAQRBrIgAkgICAgAAgABCugICAAAJAIAApAwBQDQBCg4CAgLCBARCvgICAAAALIABBEGokgICAgAALkwECAX8CfiOAgICAAEEQayIBJICAgIAAIAFBBGoQo4CAgAACQCABKAIEQQFHDQAgASgCCCABKAIMEKSAgIAAC0IAIQICQAJAQQEQsICAgAAiA0IAEJ6AgIAARQ0AIANCABCBgICAACICQv8Bg0LNAFINASAAIAI3AwhCASECCyAAIAI3AwAgAUEQaiSAgICAAA8LAAsLACAAEJqAgIAAGguSAQIBfwF+I4CAgIAAQRBrIgEkgICAgAACQAJAAkACQCAAQQFxRQ0AIAFBwYXAgABBDBC2gICAACABKAIADQIgASABKQMIELeAgIAADAELIAFBvIXAgABBBRC2gICAACABKAIADQEgASABKQMIELeAgIAACyABKQMIIQIgASkDAFANAQsACyABQRBqJICAgIAAIAILTQECfkIAIQECQAJAQQAQsICAgAAiAkICEJ6AgIAARQ0AIAJCAhCBgICAACIBQv8Bg0LNAFINASAAIAE3AwhCASEBCyAAIAE3AwAPCwALDQAgAUICIACnQQFxGwtpAQF/I4CAgIAAQSBrIgIkgICAgAAgAkEQaiAAELSAgIAAAkAgAigCEEEBRw0AAAsgAiACKQMYNwMIIAIgAa1CIIZCBIQ3AwBBuILAgABBAiACQQIQtYCAgAAhACACQSBqJICAgIAAIAALOwACQAJAIAFC//////////8AVg0AIAFCCIZCBoQhAQwBCyABEIyAgIAAIQELIABCADcDACAAIAE3AwgLLgACQCABIANGDQAACyAArUIghkIEhCACrUIghkIEhCABrUIghkIEhBCTgICAAAtRAgF/AX4jgICAgABBEGsiAySAgICAACADIAEgAhCAgYCAAEIBIQQCQCADKAIADQAgACADKQMINwMIQgAhBAsgACAENwMAIANBEGokgICAgAALRAEB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QoCAgIAwWg0AIAJCIIghAiABQRRqELyAgIAAIAEoAhQNAQwCCwALIAEgASgCGCABKAIcEJuAgIAACyACpyEACyABQSBqJICAgIAAIAALoQICAX8BfiOAgICAAEHAAGsiAiSAgICAACACQRBqEKOAgIAAAkAgAigCEEEBRw0AIAIoAhQgAigCGBCkgICAAAsgAkECNgIAIAIgATYCBAJAAkACQCACEJyAgIAAIgNCARCegICAAEUNACACQRBqIANCARCBgICAABDOgICAACACKAIQQQFxRQ0BAAsgAEIANwMIIABCADcDAAwBCyAAIAIpAyA3AxAgAEEoaiACQRBqQShqKQMANwMAIABBIGogAkEQakEgaikDADcDACAAQRhqIAJBEGpBGGopAwA3AwAgAEIANwMIIABCATcDACACQRBqELyAgIAAIAIoAhBBAUcNACACIAIoAhQgAigCGBCbgICAAAsgAkHAAGokgICAgAAL+gMEAX8FfgF/An4jgICAgABBoAFrIgEkgICAgAAgAUGAAWoQo4CAgAACQCABKAKAAUEBRw0AIAEoAoQBIAEoAogBEKSAgIAACyABQQA2AnAgAUGAAWogAUHwAGoQnYCAgAAgASkDmAEhAiABKQOQASEDIAEpA4ABIQRCCiEFQgEhBkEUIQdCACEIQgAhCQJAAkADQAJAIAdBAUsNACABQcAAaiAIQgAgBUIAEIqBgIAAIAFB0ABqIAlCACAGQgAQioGAgAAgAUHgAGogBkIAIAVCABCKgYCAACAIQgBSIAlCAFJxIAEpA0hCAFJyIAEpA1hCAFJyIAEpA2giBSABKQNAIAEpA1B8fCIJIAVUckUNAgwDCwJAIAdBAXFFDQAgAUEQaiAIQgAgBUIAEIqBgIAAIAFBIGogCUIAIAZCABCKgYCAACABQTBqIAZCACAFQgAQioGAgAAgCEIAUiAJQgBScSABKQMYQgBSciABKQMoQgBSciABKQM4IgYgASkDECABKQMgfHwiCCAGVHINAyABKQMwIQYLIAEgBSAJIAUgCRCKgYCAACAHQQF2IQcgASkDCCEJIAEpAwAhBQwACwsgASkDYCEFIAAgAiAJIASnQQFxIgcbNwMIIAAgAyAFIAcbNwMAIAFBoAFqJICAgIAADwsQyICAgAAACwkAEP+AgIAAAAuKAQMBfwF+AX8jgICAgABBMGsiASSAgICAACABQRBqEKOAgIAAAkAgASgCEEEBRw0AIAEoAhQgASgCGBCkgICAAAsgAUEENgIAIAFBEGogARCdgICAACABKQMgIQIgACABKQMoQgAgASgCEEEBcSIDGzcDCCAAIAJCACADGzcDACABQTBqJICAgIAAC0YAAkACQCABQv//////////AFYgAkIAUiACUBsNACABQgiGQgqEIQIMAQsgAiABEI6AgIAAIQILIABCADcDACAAIAI3AwgLPgIBfwF+I4CAgIAAQRBrIgAkgICAgAAgABDJgICAACAAKQMAIAApAwgQoYCAgAAhASAAQRBqJICAgIAAIAELeQEBfyOAgICAAEHAAGsiASSAgICAAAJAIABC/wGDQgRSDQAgASAAQiCIpxDGgICAAAJAAkAgASgCAEEBcQ0AQgIhAAwBCyABQTBqIAFBEGoQuoCAgAAgASgCMEEBcQ0BIAEpAzghAAsgAUHAAGokgICAgAAgAA8LAAs+AgF/AX4jgICAgABBEGsiACSAgICAACAAEMeAgIAAIAApAwAgACkDCBChgICAACEBIABBEGokgICAgAAgAQuBAgICfwN+I4CAgIAAQcAAayICJICAgIAAQQAhAwJAA0AgA0EYRg0BIAJBCGogA2pCAjcDACADQQhqIQMMAAsLQgAhBEIBIQUCQCABQv8Bg0LMAFINACABQcCDwIAAQQMgAkEIakEDENWAgIAAIAIpAwgiAUL/AYNCBFINACACQSBqIAIpAxAQ5ICAgAAgAigCIA0AIAIpAyghBiACQSBqIAIpAxgQn4CAgAAgAigCIEEBRg0AIAIpAzAhBCAAIAIpAzg3AxggACAENwMQIAAgAUIgiKc2AiggACAGNwMgQgAhBUIAIQQLIAAgBTcDACAAIAQ3AwggAkHAAGokgICAgAAL8gEBAn8jgICAgABBEGsiAiSAgICAAAJAIABC/wGDQs0AUg0AQQEgAadB/wFxIgNBAEdBAXQgA0EBRhsiA0ECRg0AEKiAgIAAIAIQo4CAgAACQCACKAIAQQFHDQAgAigCBCACKAIIEKSAgIAACwJAAkAgA0EBcQ0AIAJBATYCACACIAA3AwggAhCcgICAAEIBEIWAgIAAGgwBCyAAELuAgIAAC0H4gMCAAEERENCAgIAAENGAgIAAIQEgAiAANwMIIAIgA603AwAgAUGYgcCAAEECIAJBAhC1gICAABCGgICAABogAkEQaiSAgICAAEICDwsAC0UCAX8BfiOAgICAAEEQayICJICAgIAAIAIgACABEICBgIAAAkAgAigCAEEBRw0AAAsgAikDCCEDIAJBEGokgICAgAAgAwtjAwF/AX4BfyOAgICAAEEQayIBJICAgIAAIAEgADcDAEICIQJBASEDAkADQCADRQ0BIANBf2ohAyAAIQIMAAsLIAEgAjcDCCABQQhqQQEQ64CAgAAhACABQRBqJICAgIAAIAALowECAX8BfiOAgICAAEEgayIBJICAgIAAIAEgABCfgICAAAJAAkAgASgCAEEBRg0AIAEpAxghACABKQMQIQIQqICAgAAgARCjgICAAAJAIAEoAgBBAUcNACABKAIEIAEoAggQpICAgAALIAIgAIRCAFENASABQQA2AgAgASACIAAQoICAgAAgAUEgaiSAgICAAEICDwsAC0KDgICAEBCvgICAAAALiQECAX8BfiOAgICAAEEgayIBJICAgIAAIAEgABCfgICAAAJAIAEoAgBBAUYNACABKQMYIQAgASkDECECEKiAgIAAIAEQo4CAgAACQCABKAIAQQFHDQAgASgCBCABKAIIEKSAgIAACyABQQU2AgAgASACIAAQoICAgAAgAUEgaiSAgICAAEICDwsAC5cDBQF/A34BfwF+AX8jgICAgABBIGsiASSAgICAAAJAIABC/wGDQssAUg0AEKiAgIAAIAEQo4CAgAACQCABKAIAQQFHDQAgASgCBCABKAIIEKSAgIAACyAAEIeAgIAAQiCIIQJCACEDA0ACQAJAAkAgAyACUQ0AIAAgA0IghkIEhBCIgICAACEEQQAhBQJAA0AgBUEQRg0BIAEgBWpCAjcDACAFQQhqIQUMAAsLQQMhBSAEQv8Bg0LMAFINASAEQYiDwIAAQQIgAUECENWAgIAAIAEpAwAiBEL/AYNCBFINASABKQMIIgZC/wGDQgRSDQIgBEIgiKchByAGQiCIpyIFQQMgBUEDSRshBQwCCyABQSBqJICAgIAAQgIPCwsCQCADQv////8PUQ0AIAVBA0YNACABQQY2AgAgASAHNgIEIAEQnICAgAAgBa1CIIZCBIRCARCCgICAABogAUEUahC8gICAAAJAIAEoAhRBAUcNACABIAEoAhggASgCHBCbgICAAAsgA0IBfCEDDAELCxDIgICAAAALAAsxAAJAIAIgBEYNAAALIAAgAa1CIIZCBIQgA61CIIZCBIQgAq1CIIZCBIQQlICAgAAaC6gEBQF/AX4CfwF+BH8jgICAgABBgAFrIgIkgICAgAACQAJAIABC/wGDQs0AUg0AIAFC/wGDQssAUg0AIAJB0ABqEKOAgIAAAkAgAigCUEEBRw0AIAIoAlQgAigCWBCkgICAAAsgABDXgICAACABEIeAgIAAQiCIIQNCACEAIAJB0ABqQRBqIgRBCGohBQJAA0AgACADUQ0BIAEgAEIghkIEhBCIgICAACEGQQAhBwJAA0AgB0EQRg0BIAJBwABqIAdqQgI3AwAgB0EIaiEHDAALC0EBIQgCQAJAIAZC/wGDQswAUQ0ADAELIAZBzILAgABBAiACQcAAakECENWAgIAAIAIpA0AiBkL/AYNCBFINACACQdAAaiACKQNIEM6AgIAAIAIoAlAiCEEBcQ0AIAZCIIinIQcgAkEgakEYaiAEQRhqKQMANwMAIAJBIGpBEGogBEEQaikDADcDACACIAQpAwA3AyAgAiAFKQMANwMoCyAAQv////8PUQ0DIAJBGGoiCSACQSBqQRhqKQMANwMAIAJBEGoiCiACQSBqQRBqKQMANwMAIAIgAikDKDcDCCACIAIpAyA3AwAgCEEBcQ0DIAJB0ABqQRhqIAkpAwA3AwAgBCAKKQMANwMAIAIgAikDCDcDWCACIAIpAwA3A1AgAiAHNgJwIAcgAkHQAGoQ2ICAgAAgAEIBfCEADAALCyACQYABaiSAgICAAEICDwsACxDIgICAAAALbQEBfyOAgICAAEEQayIBJICAgIAAIAAQg4CAgAAaIAEQq4CAgAACQAJAAkAgASgCAEEBRw0AIAEpAwggABDjgICAAA0BCyAAEN2AgIAARQ0BCyABQRBqJICAgIAADwtCg4CAgMAAEK+AgIAAAAuCAgIBfwF+I4CAgIAAQcAAayICJICAgIAAIAJBAjYCACACIAA2AgQgAhCcgICAACABELmAgIAAQgEQgoCAgAAaIAJBMGoQvICAgAACQCACKAIwQQFHDQAgAiACKAI0IAIoAjgQm4CAgAALIAJBEGogAUEQaikDADcDACACQRhqIAFBGGopAwA3AwAgAiABKQMANwMAIAIgAUEIaikDADcDCCACIAA2AiBBqIHAgABBDRDQgICAABDRgICAACEDIAIgAhC5gICAADcDOCACIACtQiCGQgSENwMwIANBxIHAgABBAiACQTBqQQIQtYCAgAAQhoCAgAAaIAJBwABqJICAgIAAC+QDAwJ/AX4BfyOAgICAAEGQAWsiAiSAgICAAAJAIABC/wGDQs0AUg0AQQAhAwJAA0AgA0EYRg0BIAJByABqIANqQgI3AwAgA0EIaiEDDAALCyABQv8Bg0LMAFINACABQeSCwIAAQQMgAkHIAGpBAxDVgICAACACKQNIIgRC/wGDQgRSDQAgAiACKQNQENqAgIAAIAIoAgBBAUYNACACKAIQIQMgAikDCCEBIAJB4ABqIAIpA1gQzoCAgAAgAigCYEEBcQ0AIAJBGGogAkGIAWopAwA3AwAgAkEQaiACQYABaikDADcDACACIAIpA3A3AwAgAiACQeAAakEYaikDADcDCCACIARCIIinIgU2AjAgAiADNgIoIAIgATcDICACQeAAahCjgICAAAJAIAIoAmBBAUcNACACKAJkIAIoAmgQpICAgAALIAAQ14CAgAAgBSACENiAgIAAIAJBAzYCYCACQeAAahCcgICAACABIAMQs4CAgABCAhCCgICAABpB1IHAgABBGhDQgICAABDRgICAACEAIAEgAxCzgICAACEBIAIgBa1CIIZCBIQ3A2ggAiABNwNgIABBgILAgABBAiACQeAAakECELWAgIAAEIaAgIAAGiACQZABaiSAgICAAEICDwsAC7gBAgJ/AX4jgICAgABBIGsiAiSAgICAAEEAIQMCQANAIANBEEYNASACIANqQgI3AwAgA0EIaiEDDAALC0IBIQQCQCABQv8Bg0LMAFINACABQbiCwIAAQQIgAkECENWAgIAAIAIpAwAiAUL/AYNCBFINACACQRBqIAIpAwgQ5ICAgAAgAigCEA0AIAIpAxghBCAAIAFCIIinNgIQIAAgBDcDCEIAIQQLIAAgBDcDACACQSBqJICAgIAAC5cBAgF/AX4jgICAgABBIGsiAiSAgICAAAJAIABC/wGDQs0AUg0AIAIgARCfgICAACACKAIAQQFGDQAgAikDGCEBIAIpAxAhAyACEKOAgIAAAkAgAigCAEEBRw0AIAIoAgQgAigCCBCkgICAAAsgABDXgICAACACQQQ2AgAgAiADIAEQoICAgAAgAkEgaiSAgICAAEICDwsACxsAAkAgAEL/AYNCzQBRDQAACyAAEN2AgIAArQuUAQECfyOAgICAAEEgayIBJICAgIAAIAEQo4CAgAACQCABKAIAQQFHDQAgASgCBCABKAIIEKSAgIAACyABQQE2AgAgASAANwMIAkAgARCcgICAAEIBEJ6AgIAAIgJFDQAgAUEUahC8gICAACABKAIUQQFHDQAgASABKAIYIAEoAhwQm4CAgAALIAFBIGokgICAgAAgAgs+AgF/AX4jgICAgABBEGsiACSAgICAACAAEN+AgIAAIAApAwAgACkDCBChgICAACEBIABBEGokgICAgAAgAQuKAQMBfwF+AX8jgICAgABBMGsiASSAgICAACABQRBqEKOAgIAAAkAgASgCEEEBRw0AIAEoAhQgASgCGBCkgICAAAsgAUEFNgIAIAFBEGogARCdgICAACABKQMgIQIgACABKQMoQgAgASgCEEEBcSIDGzcDCCAAIAJCLyADGzcDACABQTBqJICAgIAACz4CAX8BfiOAgICAAEEQayIAJICAgIAAIAAQ4YCAgAAgACkDACAAKAIIELOAgIAAIQEgAEEQaiSAgICAACABC7oBAwF/AX4BfyOAgICAAEEwayIBJICAgIAAIAFBGGoQo4CAgAACQCABKAIYQQFHDQAgASgCHCABKAIgEKSAgIAACyABQQM2AggCQAJAAkAgAUEIahCcgICAACICQgIQnoCAgAANAEIAIQJBACEDDAELIAFBGGogAkICEIGAgIAAENqAgIAAIAEoAhhBAUYNASABKAIoIQMgASkDICECCyAAIAM2AgggACACNwMAIAFBMGokgICAgAAPCwALJAACQCAAQv8Bg0IEUQ0AAAsgAEIgiKcQxYCAgACtQiCGQgSECw0AIAAgARCVgICAAFALXQIBfwF+AkACQCABp0H/AXEiAkHAAEYNAAJAIAJBBkYNAEIBIQNCg5CAgIABIQEMAgsgAUIIiCEBQgAhAwwBC0IAIQMgARCNgICAACEBCyAAIAM3AwAgACABNwMIC94EAQV/I4CAgIAAQdAAayICJICAgIAAIAJBKGogABDmgICAAAJAIAIoAihBAkYNACACQQhqQQhqIAJBKGpBCGoiAygCADYCACACIAIpAig3AwggAkEoaiABEOaAgIAAIAIoAihBAkYNACACQRhqQQhqIAMoAgA2AgAgAiACKQIoNwMYIAJBKGoQo4CAgAACQCACKAIoQQFHDQAgAigCLCACKAIwEKSAgIAACxCogICAAAJAAkACQBCmgICAAA0AEOeAgIAAIgNBgPuAAyADQYD7gANJGyEEIAIgAkEYajYCLCACIAJBCGo2AihBACEDA0AgA0EIRg0DAkAgAkEoaiADaigCACIFKAIAQQFxRQ0AIAUoAggiBiAESw0DIAUoAgQgBksNAwsgA0EEaiEDDAALC0KDgICA0P8AEK+AgIAAAAtCg4CAgMD/ABCvgICAAAALAkACQCACKAIIQQFHDQAgAigCDCACKAIQEL+AgIAADAELQQEQp4CAgABCAhCFgICAABoLAkACQCACKAIYQQFHDQAgAigCHCACKAIgEMCAgIAADAELQQIQp4CAgABCAhCFgICAABoLIAJBKGpBCGogAkEIakEIaigCADYCACACQTxqIAJBGGpBCGooAgA2AgAgAiACKQMINwMoIAIgAikDGDcCNEHohcCAAEEPENCAgIAAENGAgIAAIQAgAkEoahDogICAACEBIAIgAkE0ahDogICAADcDSCACIAE3A0AgAEGMhsCAAEECIAJBwABqQQIQtYCAgAAQhoCAgAAaIAJB0ABqJICAgIAAQgIPCwALaAEBfyOAgICAAEEQayICJICAgIAAAkACQCABQgJRDQAgAkEEaiABEIGBgIAAAkAgAigCBEUNACAAQQI2AgAMAgsgACACKQIINwIEIABBATYCAAwBCyAAQQA2AgALIAJBEGokgICAgAALMwECfhCWgICAACEAAkAQl4CAgABCIIgiASAAQiCIIgBUDQAgAacgAKdrDwsQyICAgAAAC0MCAX8BfiOAgICAAEEQayIBJICAgIAAIAEgABDqgICAAAJAIAEoAgBBAUcNAAALIAEpAwghAiABQRBqJICAgIAAIAILwgECAn8BfiOAgICAAEHAAGsiACSAgICAACAAQQhqEKOAgIAAAkAgACgCCEEBRw0AIAAoAgwgACgCEBCkgICAAAsgAEEIahCjgICAACAAQRRqIgEQvICAgAAgAEEwaiAAQQhqEOqAgIAAAkACQCAAKAIwDQAgACkDOCECIABBMGogARDqgICAACAAKAIwQQFHDQELAAsgACAAKQM4NwMoIAAgAjcDICAAQSBqQQIQ64CAgAAhAiAAQcAAaiSAgICAACACCzAAAkAgASgCAEEBRw0AIAAgASgCBCABKAIIEIKBgIAADwsgAEIANwMAIABCAjcDCAsaACAArUIghkIEhCABrUIghkIEhBCRgICAAAuqAQEBfyOAgICAAEEgayIAJICAgIAAIABBDGoQo4CAgAACQCAAKAIMQQFHDQAgACgCECAAKAIUEKSAgIAACxCogICAAAJAEKaAgIAARQ0AQoOAgIDg/wAQr4CAgAAAC0EAEKeAgIAAQgFCAhCCgICAABpBnIbAgABBEhDQgICAABDRgICAAEEEQQAgAEEYakEAELWAgIAAEIaAgIAAGiAAQSBqJICAgIAAQgILCQAQpoCAgACtCzEAAkAgAEL/AYNCBFINACABQv8Bg0IEUg0AIABCIIinIAFCIIinEKSAgIAAQgIPCwALPgIBfwF+I4CAgIAAQRBrIgAkgICAgAAgABCrgICAACAAKQMAIAApAwgQsoCAgAAhASAAQRBqJICAgIAAIAELPgIBfwF+I4CAgIAAQRBrIgAkgICAgAAgABCugICAACAAKQMAIAApAwgQsoCAgAAhASAAQRBqJICAgIAAIAELfQIBfwF+I4CAgIAAQRBrIgEkgICAgAACQCAAQv8Bg0LNAFINACABQQRqEKOAgIAAAkAgASgCBEEBRw0AIAEoAgggASgCDBCkgICAAAsQqoCAgAAhAhCtgICAACAAEMGAgIAAIAIgABDygICAACABQRBqJICAgIAAQgIPCwALYQIBfwF+I4CAgIAAQRBrIgIkgICAgABBtYTAgABBFRDQgICAABDRgICAACEDIAIgADcDCCACIAE3AwAgA0HchMCAAEECIAJBAhC1gICAABCGgICAABogAkEQaiSAgICAAAvcAgIBfwJ+I4CAgIAAQSBrIgIkgICAgAACQAJAAkAgAEL/AYNCzQBSDQAgAUL/AYNCBFINACACQQhqEKOAgIAAAkAgAigCCEEBRw0AIAIoAgwgAigCEBCkgICAAAsQqoCAgAAhAwJAAkAgAUL/////D1YNACACQQhqEK6AgIAAIAIpAxAhASACKQMIQYgIEKyAgIAAIAEgABDjgICAAEUNAxD0gICAAAwBCxDngICAACABQiCIp0kNA0EBIABCABD1gICAAEEBELCAgIAAQgAgAUKEgICAcIMiASABEICAgIAAGkHshMCAAEEWENCAgIAAENGAgIAAIQQgAiABNwMYIAIgAzcDECACIAA3AwggBEGIhcCAAEEDIAJBCGpBAxC1gICAABCGgICAABoLIAJBIGokgICAgABCAg8LAAtCg4CAgOCAARCvgICAAAALQoOAgIDwgAEQr4CAgAAACxMAQQEQsICAgABCABCFgICAABoLFQAgABCwgICAACABIAIQgoCAgAAaC6cBAgF/An4jgICAgABBEGsiACSAgICAACAAEKOAgIAAAkAgACgCAEEBRw0AIAAoAgQgACgCCBCkgICAAAsgABCugICAACAAKQMIIQEgACkDAEGICBCsgICAACABEIOAgIAAGiAAELGAgIAAAkAgACgCAA0AEPeAgIAAAAsgACkDCCECEPSAgIAAIAEQwYCAgAAgAiABEPKAgIAAIABBEGokgICAgABCAgsJABDIgICAAAALoAECAX8CfiOAgICAAEEQayIAJICAgIAAIAAQo4CAgAACQCAAKAIAQQFHDQAgACgCBCAAKAIIEKSAgIAACxCqgICAACEBEK2AgIAAQQAQsICAgABCAhCFgICAABpBoIXAgABBExDQgICAABDRgICAACECIAAgATcDACACQbSFwIAAQQEgAEEBELWAgIAAEIaAgIAAGiAAQRBqJICAgIAAQgILpQEBAX8jgICAgABBEGsiASSAgICAAAJAAkAgAEL/AYNCyABSDQAgABCJgICAAEKAgICAcINCgICAgIAEUg0AIAFBBGoQo4CAgAACQCABKAIEQQFHDQAgASgCCCABKAIMEKSAgIAACxCogICAABCigICAAA0BQQEQ+oCAgAAgABCKgICAABogAUEQaiSAgICAAEICDwsAC0KDgICAwIMBEK+AgIAAAAsMAEEBIAAQ/YCAgAALrQEBAX8jgICAgABBEGsiASSAgICAAAJAAkACQCAAQv8Bg0LIAFINACABQQRqEKOAgIAAAkAgASgCBEEBRw0AIAEoAgggASgCDBCkgICAAAsQqICAgABBARClgICAAEH9AXFFDQEgABCLgICAAEL/AYNCAlINAkEAEPqAgIAAIAFBEGokgICAgABCAg8LAAtCg4CAgLCDARCvgICAAAALQoOAgICggwEQr4CAgAAAC1oBAX8jgICAgABBEGsiACSA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ABAAEgAAALUAEAAHAAAAZ2FzX3Blcl9sMV9jYWxsZGF0YV9ieXRlZ2FzX3Blcl9sMl90eAAAABABEAAYAAAAKAEQAA0AAABlaWQASAEQAAMAAAC8ABAABQAAAGV4dGVuZAAASAEQAAMAAABcARAABgAAALwAEAAFAAAAbW9kZWxfdHlwZQAAtQAQAAcAAAB8ARAACgAAAGdhc19wZXJfYnl0ZWdhc19wcmljZV9pbl91bml0cHJpY2VfcmF0aW+YARAADAAAAKQBEAARAAAAtQEQAAsAAABuYXRpdmVfcHJpY2VfdXNkcHJpY2VfcmF0aW9fZGVub21pbmF0b3J0b3RhbF9nYXNfZmVl2AEQABAAAAC1ARAACwAAAOgBEAAXAAAA/wEQAA0AAAB0aHJlc2hvbGRvd25lcnNoaXBfdHJhbnNmZXJyZWRuZXdfb3duZXJvbGRfb3duZXJKAhAACQAAAFMCEAAJAAAAb3duZXJzaGlwX3RyYW5zZmVycmluZ3R0bAAAAEoCEAAJAAAAUwIQAAkAAACCAhAAAwAAAG93bmVyc2hpcF9yZW5vdW5jZWQAUwIQAAkAAABPd25lclBlbmRpbmdPd25lcmV4dGVuZF90bwAAzQIQAAkAAAAsAhAACQAAAHR0bF9jb25maWdzX3NldGluc3RhbmNlcGVyc2lzdGVudAAAAPcCEAAIAAAA/wIQAAoAAAB0dGxfY29uZmlnc19mcm96ZW5Gcm96ZW5JbnN0YW5jZVBlcnNpc3RlbnRNaWdyYXRpbmcAp3YOY29udHJhY3RzcGVjdjAAAAACAAAAAAAAAAAAAAAQUHJpY2VGZWVkU3RvcmFnZQAAAAcAAAAAAAAAAAAAABVQcmljZVJhdGlvRGVub21pbmF0b3IAAAAAAAABAAAAAAAAAAxQcmljZVVwZGF0ZXIAAAABAAAAEwAAAAEAAAAAAAAAEURlZmF1bHRNb2RlbFByaWNlAAAAAAAAAQAAAAQAAAAAAAAAAAAAABBBcmJpdHJ1bVByaWNlRXh0AAAAAAAAAAAAAAAOTmF0aXZlUHJpY2VVU0QAAAAAAAAAAAAAAAAAGkFyYml0cnVtQ29tcHJlc3Npb25QZXJjZW50AAAAAAABAAAAAAAAAA5FaWRUb01vZGVsVHlwZQAAAAAAAQAAAAQAAAAEAAAAAAAAAAAAAAAOUHJpY2VGZWVkRXJyb3IAAAAAAAUAAAAAAAAAEkludmFsaWREZW5vbWluYXRvcgAAAAAAAQAAAAAAAAAHTm9QcmljZQAAAAACAAAAAAAAAAxOb3RBbk9wU3RhY2sAAAADAAAAAAAAABBPbmx5UHJpY2VVcGRhdGVyAAAABAAAAAAAAAAIT3ZlcmZsb3cAAAAFAAAABQAAAAAAAAAAAAAAD1ByaWNlVXBkYXRlclNldAAAAAABAAAAEXByaWNlX3VwZGF0ZXJfc2V0AAAAAAAAAgAAAAAAAAAHdXBkYXRlcgAAAAATAAAAAAAAAAAAAAAGYWN0aXZlAAAAAAABAAAAAAAAAAIAAAAFAAAAAAAAAAAAAAAMUHJpY2VVcGRhdGVkAAAAAQAAAA1wcmljZV91cGRhdGVkAAAAAAAAAgAAAAAAAAAHZHN0X2VpZAAAAAAEAAAAAAAAAAAAAAAFcHJpY2UAAAAAAAfQAAAABVByaWNlAAAAAAAAAAAAAAIAAAAFAAAAAAAAAAAAAAAXQXJiaXRydW1QcmljZUV4dFVwZGF0ZWQAAAAAAQAAABphcmJpdHJ1bV9wcmljZV9leHRfdXBkYXRlZAAAAAAAAgAAAAAAAAAHZHN0X2VpZAAAAAAEAAAAAAAAAAAAAAASYXJiaXRydW1fcHJpY2VfZXh0AAAAAAfQAAAAEEFyYml0cnVtUHJpY2VFeHQAAAAAAAAAAgAAAAAAAAAAAAAACmF1dGhvcml6ZXIAAAAAAAAAAAABAAAAEwAAAAAAAAAAAAAADV9fY29uc3RydWN0b3IAAAAAAAACAAAAAAAAAAVvd25lcgAAAAAAABMAAAAAAAAADXByaWNlX3VwZGF0ZXIAAAAAAAATAAAAAAAAAAAAAABkRXN0aW1hdGUgZmVlIHdpdGggZGV0YWlsZWQgYnJlYWtkb3duIGJ5IGVuZHBvaW50IElECkNvcnJlc3BvbmRzIHRvIGVzdGltYXRlRmVlQnlFaWQgaW4gUHJpY2VGZWVkLnNvbAAAABNlc3RpbWF0ZV9mZWVfYnlfZWlkAAAAAAQAAAAAAAAAB2ZlZV9saWIAAAAAEwAAAAAAAAAHZHN0X2VpZAAAAAAEAAAAAAAAAA1jYWxsZGF0YV9zaXplAAAAAAAABAAAAAAAAAADZ2FzAAAAAAoAAAABAAAH0AAAAAtGZWVFc3RpbWF0ZQAAAAAAAAAAIUdldCB0aGUgbmF0aXZlIHRva2VuIHByaWNlIGluIFVTRAAAAAAAABZuYXRpdmVfdG9rZW5fcHJpY2VfdXNkAAAAAAAAAAAAAQAAAAoAAAAAAAAAJEdldCB0aGUgcHJpY2UgZm9yIGEgZGVzdGluYXRpb24gRUlELgAAAAlnZXRfcHJpY2UAAAAAAAABAAAAAAAAAAdkc3RfZWlkAAAAAAQAAAABAAAD6AAAB9AAAAAFUHJpY2UAAAAAAAAAAAAAIEdldCB0aGUgcHJpY2UgcmF0aW8gZGVub21pbmF0b3IuAAAAG2dldF9wcmljZV9yYXRpb19kZW5vbWluYXRvcgAAAAAAAAAAAQAAAAoAAAAAAAAAJVNldCBwcmljZSB1cGRhdGVyIHN0YXR1cyAob3duZXIgb25seSkAAAAAAAARc2V0X3ByaWNlX3VwZGF0ZXIAAAAAAAACAAAAAAAAAAd1cGRhdGVyAAAAABMAAAAAAAAABmFjdGl2ZQAAAAAAAQAAAAAAAAAAAAAALFNldCB0aGUgcHJpY2UgcmF0aW8gZGVub21pbmF0b3IgKG93bmVyIG9ubHkpAAAAG3NldF9wcmljZV9yYXRpb19kZW5vbWluYXRvcgAAAAABAAAAAAAAAAtkZW5vbWluYXRvcgAAAAAKAAAAAAAAAAAAAAA0U2V0IHRoZSBBcmJpdHJ1bSBjb21wcmVzc2lvbiBwZXJjZW50YWdlIChvd25lciBvbmx5KQAAACBzZXRfYXJiaXRydW1fY29tcHJlc3Npb25fcGVyY2VudAAAAAEAAAAAAAAAE2NvbXByZXNzaW9uX3BlcmNlbnQAAAAACgAAAAAAAAAAAAAAOFNldCB0aGUgZmVlIG1vZGVsIHR5cGUgZm9yIGRlc3RpbmF0aW9uIEVJRHMgKG93bmVyIG9ubHkpAAAAFXNldF9laWRfdG9fbW9kZWxfdHlwZQAAAAAAAAEAAAAAAAAABnBhcmFtcwAAAAAD6gAAB9AAAAAWU2V0RWlkVG9Nb2RlbFR5cGVQYXJhbQAAAAAAAAAAAAAAAAA9U2V0IHByaWNlcyBmb3IgbXVsdGlwbGUgZGVzdGluYXRpb25zIChwcmljZSB1cGRhdGVyIG9yIG93bmVyKQAAAAAAAAlzZXRfcHJpY2UAAAAAAAACAAAAAAAAAA1wcmljZV91cGRhdGVyAAAAAAAAEwAAAAAAAAAGcHJpY2VzAAAAAAPqAAAH0AAAAAtVcGRhdGVQcmljZQAAAAAAAAAAAAAAAHJTZXQgcHJpY2UgZm9yIEFyYml0cnVtIHdpdGggZXh0ZW5zaW9uIChwcmljZSB1cGRhdGVyIG9yIG93bmVyKQpDb3JyZXNwb25kcyB0byBzZXRQcmljZUZvckFyYml0cnVtIGluIFByaWNlRmVlZC5zb2wAAAAAABZzZXRfcHJpY2VfZm9yX2FyYml0cnVtAAAAAAACAAAAAAAAAA1wcmljZV91cGRhdGVyAAAAAAAAEwAAAAAAAAAGdXBkYXRlAAAAAAfQAAAADlVwZGF0ZVByaWNlRXh0AAAAAAAAAAAAAAAAALRTZXQgdGhlIG5hdGl2ZSB0b2tlbiBwcmljZSBpbiBVU0QgKHByaWNlIHVwZGF0ZXIgb3Igb3duZXIpLgoKS2VwdCBhcyBhIHN0YW5kYWxvbmUgY29udHJhY3QgZnVuY3Rpb24gKG5vdCBwYXJ0IG9mIHRoZSBjYW5vbmljYWwgYGZlZV9saWJfaW50ZXJmYWNlczo6SUxheWVyWmVyb1ByaWNlRmVlZGAgaW50ZXJmYWNlKS4AAAAac2V0X25hdGl2ZV90b2tlbl9wcmljZV91c2QAAAAAAAIAAAAAAAAADXByaWNlX3VwZGF0ZXIAAAAAAAATAAAAAAAAABZuYXRpdmVfdG9rZW5fcHJpY2VfdXNkAAAAAAAKAAAAAAAAAAAAAAAuQ2hlY2sgaWYgYW4gYWRkcmVzcyBpcyBhbiBhY3RpdmUgcHJpY2UgdXBkYXRlcgAAAAAAEGlzX3ByaWNlX3VwZGF0ZXIAAAABAAAAAAAAAAd1cGRhdGVyAAAAABMAAAABAAAAAQAAAAAAAAAkR2V0IHRoZSBBcmJpdHJ1bSBjb21wcmVzc2lvbiBwZXJjZW50AAAAHGFyYml0cnVtX2NvbXByZXNzaW9uX3BlcmNlbnQAAAAAAAAAAQAAAAoAAAAAAAAAIEdldCB0aGUgQXJiaXRydW0gcHJpY2UgZXh0ZW5zaW9uAAAAEmFyYml0cnVtX3ByaWNlX2V4dAAAAAAAAAAAAAEAAAfQAAAAEEFyYml0cnVtUHJpY2VFeHQAAAAAAAAAKEdldCB0aGUgbW9kZWwgdHlwZSBmb3IgYSBkZXN0aW5hdGlvbiBFSUQAAAARZWlkX3RvX21vZGVsX3R5cGUAAAAAAAABAAAAAAAAAAdkc3RfZWlkAAAAAAQAAAABAAAH0AAAAAlNb2RlbFR5cGUAAAAAAAABAAAAIUFyYml0cnVtLXNwZWNpZmljIHByaWNlIGV4dGVuc2lvbgAAAAAAAAAAAAAQQXJiaXRydW1QcmljZUV4dAAAAAIAAABBR2FzIGNvc3QgcGVyIGJ5dGUgb2YgTDEgY2FsbGRhdGEgKGZvciBBcmJpdHJ1bSdzIEwxIGRhdGEgcG9zdGluZykAAAAAAAAYZ2FzX3Blcl9sMV9jYWxsZGF0YV9ieXRlAAAABAAAAB9HYXMgb3ZlcmhlYWQgcGVyIEwyIHRyYW5zYWN0aW9uAAAAAA1nYXNfcGVyX2wyX3R4AAAAAAAABgAAAAEAAAAlUGFyYW1ldGVyIGZvciB1cGRhdGluZyBhIHNpbmdsZSBwcmljZQAAAAAAAAAAAAALVXBkYXRlUHJpY2UAAAAAAgAAABdEZXN0aW5hdGlvbiBlbmRwb2ludCBJRAAAAAADZWlkAAAAAAQAAAAlUHJpY2UgaW5mb3JtYXRpb24gZm9yIHRoZSBkZXN0aW5hdGlvbgAAAAAAAAVwcmljZQAAAAAAB9AAAAAFUHJpY2UAAAAAAAABAAAANFBhcmFtZXRlciBmb3IgdXBkYXRpbmcgQXJiaXRydW0gcHJpY2Ugd2l0aCBleHRlbnNpb24AAAAAAAAADlVwZGF0ZVByaWNlRXh0AAAAAAADAAAAOERlc3RpbmF0aW9uIGVuZHBvaW50IElEIChzaG91bGQgYmUgYW4gQXJiaXRydW0gZW5kcG9pbnQpAAAAA2VpZAAAAAAEAAAAI0FyYml0cnVtLXNwZWNpZmljIHByaWNpbmcgZXh0ZW5zaW9uAAAAAAZleHRlbmQAAAAAB9AAAAAQQXJiaXRydW1QcmljZUV4dAAAACVQcmljZSBpbmZvcm1hdGlvbiBmb3IgdGhlIGRlc3RpbmF0aW9uAAAAAAAABXByaWNlAAAAAAAH0AAAAAVQcmljZQAAAAAAAAMAAAAwRmVlIG1vZGVsIHR5cGUgZm9yIGRpZmZlcmVudCBjaGFpbiBhcmNoaXRlY3R1cmVzAAAAAAAAAAlNb2RlbFR5cGUAAAAAAAADAAAAAAAAAAdEZWZhdWx0AAAAAAAAAAAAAAAACEFyYlN0YWNrAAAAAQAAAAAAAAAHT3BTdGFjawAAAAACAAAAAQAAAC9QYXJhbWV0ZXIgZm9yIHNldHRpbmcgRUlEIHRvIG1vZGVsIHR5cGUgbWFwcGluZwAAAAAAAAAAFlNldEVpZFRvTW9kZWxUeXBlUGFyYW0AAAAAAAIAAAAXRGVzdGluYXRpb24gZW5kcG9pbnQgSUQAAAAAB2RzdF9laWQAAAAABAAAACNGZWUgbW9kZWwgdHlwZSBmb3IgdGhpcyBkZXN0aW5hdGlvbgAAAAAKbW9kZWxfdHlwZQAAAAAH0AAAAAlNb2RlbFR5cGUAAAAAAAAAAAABj1NldHMgVFRMIGNvbmZpZ3MgZm9yIGluc3RhbmNlIGFuZCBwZXJzaXN0ZW50IHN0b3JhZ2UuCgotIGBOb25lYCB2YWx1ZXMgcmVtb3ZlIHRoZSBjb3JyZXNwb25kaW5nIGNvbmZpZyAoZGlzYWJsZXMgYXV0by1leHRlbnNpb24gZm9yIHRoYXQgdHlwZSkKLSBWYWxpZGF0ZXMgdGhhdCBgdGhyZXNob2xkIDw9IGV4dGVuZF90byA8PSBNQVhfVFRMYAoKIyBBcmd1bWVudHMKLSBgaW5zdGFuY2VgIC0gVFRMIGNvbmZpZyBmb3IgaW5zdGFuY2Ugc3RvcmFnZQotIGBwZXJzaXN0ZW50YCAtIFRUTCBjb25maWcgZm9yIHBlcnNpc3RlbnQgc3RvcmFnZQoKIyBQYW5pY3MKLSBgVHRsQ29uZmlnRnJvemVuYCBpZiBjb25maWdzIGFyZSBmcm96ZW4KLSBgSW52YWxpZFR0bENvbmZpZ2AgaWYgdmFsaWRhdGlvbiBmYWlscwAAAAAPc2V0X3R0bF9jb25maWdzAAAAAAIAAAAAAAAACGluc3RhbmNlAAAD6AAAB9AAAAAJVHRsQ29uZmlnAAAAAAAAAAAAAApwZXJzaXN0ZW50AAAAAAPoAAAH0AAAAAlUdGxDb25maWcAAAAAAAAAAAAAAAAAAEhSZXR1cm5zIHRoZSBjdXJyZW50IFRUTCBjb25maWdzIGFzIChpbnN0YW5jZV9jb25maWcsIHBlcnNpc3RlbnRfY29uZmlnKS4AAAALdHRsX2NvbmZpZ3MAAAAAAAAAAAEAAAPtAAAAAgAAA+gAAAfQAAAACVR0bENvbmZpZwAAAAAAA+gAAAfQAAAACVR0bENvbmZpZwAAAAAAAAAAAADhUGVybWFuZW50bHkgZnJlZXplcyBUVEwgY29uZmlncywgcHJldmVudGluZyBhbnkgZnV0dXJlIG1vZGlmaWNhdGlvbnMuCgpUaGlzIGlzIGlycmV2ZXJzaWJsZSBhbmQgcHJvdmlkZXMgaW1tdXRhYmlsaXR5IGd1YXJhbnRlZXMgdG8gdXNlcnMuCkVtaXRzIGBUdGxDb25maWdzRnJvemVuYCBldmVudC4KCiMgUGFuaWNzCi0gYFR0bENvbmZpZ0FscmVhZHlGcm96ZW5gIGlmIGFscmVhZHkgZnJvemVuAAAAAAAAEmZyZWV6ZV90dGxfY29uZmlncwAAAAAAAAAAAAAAAAAAAAAAJ1JldHVybnMgd2hldGhlciBUVEwgY29uZmlncyBhcmUgZnJvemVuLgAAAAAVaXNfdHRsX2NvbmZpZ3NfZnJvemVuAAAAAAAAAAAAAAEAAAABAAAAAAAAAKVFeHRlbmRzIHRoZSBpbnN0YW5jZSBUVEwuCgojIEFyZ3VtZW50cwoKKiBgdGhyZXNob2xkYCAtIFRoZSB0aHJlc2hvbGQgdG8gZXh0ZW5kIHRoZSBUVEwgKGlmIGN1cnJlbnQgVFRMIGlzIGJlbG93IHRoaXMsIGV4dGVuZCkuCiogYGV4dGVuZF90b2AgLSBUaGUgVFRMIHRvIGV4dGVuZCB0by4AAAAAAAATZXh0ZW5kX2luc3RhbmNlX3R0bAAAAAACAAAAAAAAAAl0aHJlc2hvbGQAAAAAAAAEAAAAAAAAAAlleHRlbmRfdG8AAAAAAAAEAAAAAAAAAAAAAAA+UmV0dXJucyB0aGUgY3VycmVudCBvd25lciBhZGRyZXNzLCBvciBOb25lIGlmIG5vIG93bmVyIGlzIHNldC4AAAAAAAVvd25lcgAAAAAAAAAAAAABAAAD6AAAABMAAAAAAAAAWVJldHVybnMgdGhlIHBlbmRpbmcgb3duZXIgYWRkcmVzcyBmb3IgMi1zdGVwIHRyYW5zZmVyLCBvciBOb25lIGlmIG5vIHRyYW5zZmVyIGlzIHBlbmRpbmcuAAAAAAAADXBlbmRpbmdfb3duZXIAAAAAAAAAAAAAAQAAA+gAAAATAAAAAAAAAStUcmFuc2ZlcnMgb3duZXJzaGlwIGltbWVkaWF0ZWx5IHRvIGEgbmV3IGFkZHJlc3MuCgpVc2Ugd2l0aCBjYXV0aW9uIC0gaWYgeW91IHRyYW5zZmVyIHRvIGEgd3JvbmcgYWRkcmVzcywgb3duZXJzaGlwIGlzIGxvc3QgZm9yZXZlci4KQ29uc2lkZXIgdXNpbmcgYHByb3Bvc2Vfb3duZXJzaGlwX3RyYW5zZmVyYCBpbnN0ZWFkLgoKIyBQYW5pY3MKLSBgT3duZXJOb3RTZXRgIGlmIG5vIG93bmVyIGlzIGN1cnJlbnRseSBzZXQKLSBgVHJhbnNmZXJJblByb2dyZXNzYCBpZiBhIDItc3RlcCB0cmFuc2ZlciBpcyBpbiBwcm9ncmVzcwAAAAASdHJhbnNmZXJfb3duZXJzaGlwAAAAAAABAAAAAAAAAAluZXdfb3duZXIAAAAAAAATAAAAAAAAAAAAAAJcUHJvcG9zZXMgYW4gb3duZXJzaGlwIHRyYW5zZmVyIHRvIGEgbmV3IGFkZHJlc3MuCgpUaGUgbmV3IG93bmVyIG11c3QgY2FsbCBgYWNjZXB0X293bmVyc2hpcCgpYCB3aXRoaW4gYHR0bGAgbGVkZ2Vycwp0byBjb21wbGV0ZSB0aGUgdHJhbnNmZXIuIFRoZSBwZW5kaW5nIHRyYW5zZmVyIHdpbGwgYXV0b21hdGljYWxseSBleHBpcmUgYWZ0ZXIuCgojIEFyZ3VtZW50cwotIGBuZXdfb3duZXJgIC0gVGhlIHByb3Bvc2VkIG5ldyBvd25lcgotIGB0dGxgIC0gTnVtYmVyIG9mIGxlZGdlcnMgdGhlIG5ldyBvd25lciBoYXMgdG8gYWNjZXB0LgpVc2UgYDBgIHRvIGNhbmNlbCBhIHBlbmRpbmcgdHJhbnNmZXIgKG5ld19vd25lciBtdXN0IG1hdGNoIHBlbmRpbmcpLgoKIyBQYW5pY3MKLSBgT3duZXJOb3RTZXRgIGlmIG5vIG93bmVyIGlzIGN1cnJlbnRseSBzZXQKLSBgTm9QZW5kaW5nVHJhbnNmZXJgIHdoZW4gY2FuY2VsbGluZyBhbmQgbm8gcGVuZGluZyB0cmFuc2ZlciBleGlzdHMKLSBgSW52YWxpZFR0bGAgaWYgdHRsIGV4Y2VlZHMgbWF4IFRUTAotIGBJbnZhbGlkUGVuZGluZ093bmVyYCB3aGVuIGNhbmNlbGxpbmcgd2l0aCB3cm9uZyBuZXdfb3duZXIgYWRkcmVzcwAAABpwcm9wb3NlX293bmVyc2hpcF90cmFuc2ZlcgAAAAAAAgAAAAAAAAAJbmV3X293bmVyAAAAAAAAEwAAAAAAAAADdHRsAAAAAAQAAAAAAAAAAAAAALlBY2NlcHRzIGEgcGVuZGluZyAyLXN0ZXAgb3duZXJzaGlwIHRyYW5zZmVyLgoKTXVzdCBiZSBjYWxsZWQgYnkgdGhlIHBlbmRpbmcgb3duZXIgYmVmb3JlIHRoZSBUVEwgZXhwaXJlcy4KCiMgUGFuaWNzCi0gYE5vUGVuZGluZ1RyYW5zZmVyYCBpZiB0aGVyZSBpcyBubyBwZW5kaW5nIHRyYW5zZmVyIChvciBpdCBleHBpcmVkKQAAAAAAABBhY2NlcHRfb3duZXJzaGlwAAAAAAAAAAAAAAAAAAAApFBlcm1hbmVudGx5IHJlbm91bmNlcyBvd25lcnNoaXAuCgojIFBhbmljcwotIGBPd25lck5vdFNldGAgaWYgbm8gb3duZXIgaXMgY3VycmVudGx5IHNldAotIGBUcmFuc2ZlckluUHJvZ3Jlc3NgIGlmIGEgMi1zdGVwIHRyYW5zZmVyIGlzIGluIHByb2dyZXNzIChjYW5jZWwgaXQgZmlyc3QpAAAAEnJlbm91bmNlX293bmVyc2hpcAAAAAAAAAAAAAAAAAAAAAAAlVRoZSB0eXBlIG9mIGRhdGEgcmVxdWlyZWQgZm9yIG1pZ3JhdGlvbi4KVXBncmFkZXMgdGhlIGNvbnRyYWN0IHRvIG5ldyBXQVNNIGJ5dGVjb2RlLgpTZXRzIGEgbWlncmF0aW9uIGZsYWcgdGhhdCBtdXN0IGJlIGNsZWFyZWQgYnkgY2FsbGluZyBgbWlncmF0ZWAuAAAAAAAAB3VwZ3JhZGUAAAAAAQAAAAAAAAANbmV3X3dhc21faGFzaAAAAAAAA+4AAAAgAAAAAAAAAAAAAAB2UnVucyBtaWdyYXRpb24gbG9naWMgYWZ0ZXIgYW4gdXBncmFkZS4KQ2FuIG9ubHkgYmUgY2FsbGVkIHdoZW4gdGhlIG1pZ3JhdGlvbiBmbGFnIGlzIHNldCBieSBhIHByZXZpb3VzIGB1cGdyYWRlYCBjYWxsLgAAAAAAB21pZ3JhdGUAAAAAAQAAAAAAAAAObWlncmF0aW9uX2RhdGEAAAAAAA4AAAAAAAAAAAAAAF5QZXJtYW5lbnRseSBmcmVlemVzIHRoZSBjb250cmFjdCwgcHJldmVudGluZyBhbnkgZnV0dXJlIHVwZ3JhZGVzLgpUaGlzIGFjdGlvbiBpcyBpcnJldmVyc2libGUuAAAAAAAGZnJlZXplAAAAAAAAAAAAAAAAAAAAAAA7UmV0dXJucyB3aGV0aGVyIHRoZSBjb250cmFjdCBpcyBmcm96ZW4gKHVwZ3JhZGVzIGRpc2FibGVkKS4AAAAACWlzX2Zyb3plbgAAAAAAAAAAAAABAAAAAQAAAAEAAADhUGFyYW1ldGVycyBmb3IgRFZOIGZlZSBjYWxjdWxhdGlvbi4KCkNvbnRhaW5zIGFsbCBpbnB1dHMgbmVlZGVkIGJ5IHRoZSBmZWUgbGlicmFyeSB0byBjYWxjdWxhdGUgdmVyaWZpY2F0aW9uIGZlZXMKZm9yIGNyb3NzLWNoYWluIG1lc3NhZ2VzLiBJbmNsdWRlcyBtZXNzYWdlIHBhcmFtZXRlcnMsIGNvbW1vbiBjb25maWd1cmF0aW9uLAphbmQgZGVzdGluYXRpb24tc3BlY2lmaWMgc2V0dGluZ3MuAAAAAAAAAAAAAAxEdm5GZWVQYXJhbXMAAAAKAAAAJ051bWJlciBvZiBibG9jayBjb25maXJtYXRpb25zIHJlcXVpcmVkLgAAAAANY29uZmlybWF0aW9ucwAAAAAAAAYAAABMRGVmYXVsdCBmZWUgbXVsdGlwbGllciBpbiBiYXNpcyBwb2ludHMgKHVzZWQgaWYgbm8gZHN0LXNwZWNpZmljIG11bHRpcGxpZXIpLgAAABZkZWZhdWx0X211bHRpcGxpZXJfYnBzAAAAAAAEAAAAK0Rlc3RpbmF0aW9uIGVuZHBvaW50IElEIChjaGFpbiBpZGVudGlmaWVyKS4AAAAAB2RzdF9laWQAAAAABAAAACNNaW5pbXVtIGZlZSBtYXJnaW4gaW4gVVNEIChzY2FsZWQpLgAAAAAQZmxvb3JfbWFyZ2luX3VzZAAAAAoAAAEQPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KRGVzdGluYXRpb24tU3BlY2lmaWMgQ29uZmlndXJhdGlvbgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpHYXMgZXN0aW1hdGUgZm9yIHZlcmlmaWNhdGlvbiBvbiBkZXN0aW5hdGlvbiBjaGFpbi4AAAADZ2FzAAAAAAoAAABGRGVzdGluYXRpb24tc3BlY2lmaWMgZmVlIG11bHRpcGxpZXIgaW4gYmFzaXMgcG9pbnRzICgwID0gdXNlIGRlZmF1bHQpLgAAAAAADm11bHRpcGxpZXJfYnBzAAAAAAAEAAAAC0RWTiBvcHRpb25zAAAAAAdvcHRpb25zAAAAAA4AAAEQPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KQ29tbW9uIENvbmZpZ3VyYXRpb24KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUHJpY2UgZmVlZCBjb250cmFjdCBhZGRyZXNzIGZvciBnYXMgcHJpY2UgYW5kIGV4Y2hhbmdlIHJhdGUgZGF0YS4AAAAKcHJpY2VfZmVlZAAAAAAAEwAAACdOdW1iZXIgb2YgcmVxdWlyZWQgc2lnbmF0dXJlcyAocXVvcnVtKS4AAAAABnF1b3J1bQAAAAAABAAAAOU9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpNZXNzYWdlIFBhcmFtZXRlcnMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KVGhlIE9BcHAgc2VuZGVyIGFkZHJlc3MuAAAAAAAABnNlbmRlcgAAAAAAEwAAAAEAAADjUGFyYW1ldGVycyBmb3IgZXhlY3V0b3IgZmVlIGNhbGN1bGF0aW9uLgoKQ29udGFpbnMgYWxsIGlucHV0cyBuZWVkZWQgYnkgdGhlIGZlZSBsaWJyYXJ5IHRvIGNhbGN1bGF0ZSBleGVjdXRpb24gZmVlcwpmb3IgY3Jvc3MtY2hhaW4gbWVzc2FnZXMuIEluY2x1ZGVzIG1lc3NhZ2UgcGFyYW1ldGVycywgY29tbW9uIGNvbmZpZ3VyYXRpb24sCmFuZCBkZXN0aW5hdGlvbi1zcGVjaWZpYyBzZXR0aW5ncy4AAAAAAAAAAAlGZWVQYXJhbXMAAAAAAAALAAAAJlNpemUgb2YgdGhlIG1lc3NhZ2UgY2FsbGRhdGEgaW4gYnl0ZXMuAAAAAAANY2FsbGRhdGFfc2l6ZQAAAAAAAAQAAABMRGVmYXVsdCBmZWUgbXVsdGlwbGllciBpbiBiYXNpcyBwb2ludHMgKHVzZWQgaWYgbm8gZHN0LXNwZWNpZmljIG11bHRpcGxpZXIpLgAAABZkZWZhdWx0X211bHRpcGxpZXJfYnBzAAAAAAAEAAAAK0Rlc3RpbmF0aW9uIGVuZHBvaW50IElEIChjaGFpbiBpZGVudGlmaWVyKS4AAAAAB2RzdF9laWQAAAAABAAAACNNaW5pbXVtIGZlZSBtYXJnaW4gaW4gVVNEIChzY2FsZWQpLgAAAAAQZmxvb3JfbWFyZ2luX3VzZAAAAAoAAAA2QmFzZSBnYXMgZm9yIGVhY2ggbHpDb21wb3NlIGNhbGwgb24gZGVzdGluYXRpb24gY2hhaW4uAAAAAAATbHpfY29tcG9zZV9iYXNlX2dhcwAAAAAGAAABEz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CkRlc3RpbmF0aW9uLVNwZWNpZmljIENvbmZpZ3VyYXRpb24KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KQmFzZSBnYXMgZm9yIGx6UmVjZWl2ZSBleGVjdXRpb24gb24gZGVzdGluYXRpb24gY2hhaW4uAAAAABNsel9yZWNlaXZlX2Jhc2VfZ2FzAAAAAAYAAABGRGVzdGluYXRpb24tc3BlY2lmaWMgZmVlIG11bHRpcGxpZXIgaW4gYmFzaXMgcG9pbnRzICgwID0gdXNlIGRlZmF1bHQpLgAAAAAADm11bHRpcGxpZXJfYnBzAAAAAAAEAAAALE1heGltdW0gbmF0aXZlIHRva2VuIHZhbHVlIHRoYXQgY2FuIGJlIHNlbnQuAAAACm5hdGl2ZV9jYXAAAAAAAAoAAABGRW5jb2RlZCBleGVjdXRvciBvcHRpb25zIChselJlY2VpdmUgZ2FzLCBsekNvbXBvc2UsIG5hdGl2ZURyb3AsIGV0Yy4pLgAAAAAAB29wdGlvbnMAAAAADgAAARA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpDb21tb24gQ29uZmlndXJhdGlvbgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpQcmljZSBmZWVkIGNvbnRyYWN0IGFkZHJlc3MgZm9yIGdhcyBwcmljZSBhbmQgZXhjaGFuZ2UgcmF0ZSBkYXRhLgAAAApwcmljZV9mZWVkAAAAAAATAAAA5T09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ck1lc3NhZ2UgUGFyYW1ldGVycwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpUaGUgT0FwcCBzZW5kZXIgYWRkcmVzcy4AAAAAAAAGc2VuZGVyAAAAAAATAAAAAQAAAIRHYXMgcHJpY2UgaW5mb3JtYXRpb24gZm9yIGEgZGVzdGluYXRpb24gZW5kcG9pbnQuCgpDb250YWlucyB0aGUgZXhjaGFuZ2UgcmF0ZSBhbmQgZ2FzIGNvc3RzIG5lZWRlZCBmb3IgY3Jvc3MtY2hhaW4gZmVlIGNhbGN1bGF0aW9ucy4AAAAAAAAABVByaWNlAAAAAAAAAwAAADdHYXMgY29zdCBwZXIgYnl0ZSBvZiBjYWxsZGF0YSBvbiB0aGUgZGVzdGluYXRpb24gY2hhaW4uAAAAAAxnYXNfcGVyX2J5dGUAAAAEAAAAQkdhcyBwcmljZSBpbiB0aGUgc21hbGxlc3QgdW5pdCAod2VpIGZvciBFVk0sIHN0cm9vcHMgZm9yIFN0ZWxsYXIpLgAAAAAAEWdhc19wcmljZV9pbl91bml0AAAAAAAABgAAAKlQcmljZSByYXRpbyA9IChyZW1vdGUgbmF0aXZlIHRva2VuIHByaWNlIC8gbG9jYWwgbmF0aXZlIHRva2VuIHByaWNlKSAqIFBSSUNFX1JBVElPX0RFTk9NSU5BVE9SLgpVc2VkIHRvIGNvbnZlcnQgZGVzdGluYXRpb24gY2hhaW4gZ2FzIGNvc3RzIHRvIHNvdXJjZSBjaGFpbiBuYXRpdmUgdG9rZW4uAAAAAAAAC3ByaWNlX3JhdGlvAAAAAAoAAAABAAAAgEZlZSBlc3RpbWF0aW9uIHJlc3VsdCB3aXRoIGRldGFpbGVkIGJyZWFrZG93bi4KCkNvbnRhaW5zIHRoZSBjYWxjdWxhdGVkIGZlZSBhbmQgYWxsIGludGVybWVkaWF0ZSB2YWx1ZXMgdXNlZCBpbiB0aGUgY2FsY3VsYXRpb24uAAAAAAAAAAtGZWVFc3RpbWF0ZQAAAAAEAAAAMFNvdXJjZSBjaGFpbiBuYXRpdmUgdG9rZW4gcHJpY2UgaW4gVVNEIChzY2FsZWQpLgAAABBuYXRpdmVfcHJpY2VfdXNkAAAACgAAACVQcmljZSByYXRpbyB1c2VkIGZvciB0aGUgY2FsY3VsYXRpb24uAAAAAAAAC3ByaWNlX3JhdGlvAAAAAAoAAAAyRGVub21pbmF0b3IgZm9yIHRoZSBwcmljZSByYXRpbyAodHlwaWNhbGx5IDEwXjIwKS4AAAAAABdwcmljZV9yYXRpb19kZW5vbWluYXRvcgAAAAAKAAAAMVRvdGFsIGdhcyBmZWUgaW4gc291cmNlIGNoYWluIG5hdGl2ZSB0b2tlbiB1bml0cy4AAAAAAAANdG90YWxfZ2FzX2ZlZQAAAAAAAAsAAAAEAAAAHEJ1ZmZlclJlYWRlckVycm9yOiAxMDAwLTEwMDkAAAAAAAAAEUJ1ZmZlclJlYWRlckVycm9yAAAAAAAAAgAAAAAAAAANSW52YWxpZExlbmd0aAAAAAAAA+gAAAAAAAAAFUludmFsaWRBZGRyZXNzUGF5bG9hZAAAAAAAA+kAAAAEAAAAHEJ1ZmZlcldyaXRlckVycm9yOiAxMDEwLTEwMTkAAAAAAAAAEUJ1ZmZlcldyaXRlckVycm9yAAAAAAAAAQAAAAAAAAAVSW52YWxpZEFkZHJlc3NQYXlsb2FkAAAAAAAD8gAAAAQAAAAfVHRsQ29uZmlndXJhYmxlRXJyb3I6IDEwMjAtMTAyOQAAAAAAAAAAFFR0bENvbmZpZ3VyYWJsZUVycm9yAAAAAwAAAAAAAAAQSW52YWxpZFR0bENvbmZpZwAAA/wAAAAAAAAAD1R0bENvbmZpZ0Zyb3plbgAAAAP9AAAAAAAAABZUdGxDb25maWdBbHJlYWR5RnJvemVuAAAAAAP+AAAABAAAABdPd25hYmxlRXJyb3I6IDEwMzAtMTAzOQAAAAAAAAAADE93bmFibGVFcnJvcgAAAAYAAAAAAAAAE0ludmFsaWRQZW5kaW5nT3duZXIAAAAEBgAAAAAAAAAKSW52YWxpZFR0bAAAAAAEBwAAAAAAAAARTm9QZW5kaW5nVHJhbnNmZXIAAAAAAAQIAAAAAAAAAA9Pd25lckFscmVhZHlTZXQAAAAECQAAAAAAAAALT3duZXJOb3RTZXQAAAAECgAAAAAAAAASVHJhbnNmZXJJblByb2dyZXNzAAAAAAQLAAAABAAAABhCeXRlc0V4dEVycm9yOiAxMDQwLTEwNDkAAAAAAAAADUJ5dGVzRXh0RXJyb3IAAAAAAAABAAAAAAAAAA5MZW5ndGhNaXNtYXRjaAAAAAAEEAAAAAQAAAAbVXBncmFkZWFibGVFcnJvcjogMTA1MC0xMDU5AAAAAAAAAAAQVXBncmFkZWFibGVFcnJvcgAAAAMAAAAAAAAAFEludmFsaWRNaWdyYXRpb25EYXRhAAAEGgAAAAAAAAATTWlncmF0aW9uTm90QWxsb3dlZAAAAAQbAAAAAAAAAA5VcGdyYWRlc0Zyb3plbgAAAAAEHAAAAAQAAAAYTXVsdGlzaWdFcnJvcjogMTA2MC0xMDY5AAAAAAAAAA1NdWx0aXNpZ0Vycm9yAAAAAAAACAAAAAAAAAASQWxyZWFkeUluaXRpYWxpemVkAAAAAAQkAAAAAAAAAA1JbnZhbGlkU2lnbmVyAAAAAAAEJQAAAAAAAAAOU2lnbmF0dXJlRXJyb3IAAAAABCYAAAAAAAAAE1NpZ25lckFscmVhZHlFeGlzdHMAAAAEJwAAAAAAAAAOU2lnbmVyTm90Rm91bmQAAAAABCgAAAAAAAAAHVRvdGFsU2lnbmVyc0xlc3NUaGFuVGhyZXNob2xkAAAAAAAEKQAAAAAAAAAPVW5zb3J0ZWRTaWduZXJzAAAABCoAAAAAAAAADVplcm9UaHJlc2hvbGQAAAAAAAQrAAAABQAAADBFdmVudCBlbWl0dGVkIHdoZW4gYSBzaWduZXIgaXMgYWRkZWQgb3IgcmVtb3ZlZC4AAAAAAAAACVNpZ25lclNldAAAAAAAAAEAAAAKc2lnbmVyX3NldAAAAAAAAgAAAAAAAAAGc2lnbmVyAAAAAAPuAAAAFAAAAAEAAAAAAAAABmFjdGl2ZQAAAAAAAQAAAAAAAAACAAAABQAAADZFdmVudCBlbWl0dGVkIHdoZW4gdGhlIHNpZ25hdHVyZSB0aHJlc2hvbGQgaXMgY2hhbmdlZC4AAAAAAAAAAAAMVGhyZXNob2xkU2V0AAAAAQAAAA10aHJlc2hvbGRfc2V0AAAAAAAAAQAAAAAAAAAJdGhyZXNob2xkAAAAAAAABAAAAAAAAAACAAAAAgAAAAAAAAAAAAAAD011bHRpc2lnU3RvcmFnZQAAAAACAAAAAAAAAAAAAAAHU2lnbmVycwAAAAAAAAAAAAAAAAlUaHJlc2hvbGQAAAAAAAAFAAAAV0V2ZW50IGVtaXR0ZWQgd2hlbiBvd25lcnNoaXAgaXMgdHJhbnNmZXJyZWQgKGJvdGggc2luZ2xlLXN0ZXAgYW5kIHR3by1zdGVwIGNvbXBsZXRpb24pLgAAAAAAAAAAFE93bmVyc2hpcFRyYW5zZmVycmVkAAAAAQAAABVvd25lcnNoaXBfdHJhbnNmZXJyZWQAAAAAAAACAAAAAAAAAAlvbGRfb3duZXIAAAAAAAATAAAAAAAAAAAAAAAJbmV3X293bmVyAAAAAAAAEwAAAAAAAAACAAAABQAAADtFdmVudCBlbWl0dGVkIHdoZW4gYSAyLXN0ZXAgb3duZXJzaGlwIHRyYW5zZmVyIGlzIHByb3Bvc2VkLgAAAAAAAAAAFU93bmVyc2hpcFRyYW5zZmVycmluZwAAAAAAAAEAAAAWb3duZXJzaGlwX3RyYW5zZmVycmluZwAAAAAAAwAAAAAAAAAJb2xkX293bmVyAAAAAAAAEwAAAAAAAAAAAAAACW5ld19vd25lcgAAAAAAABMAAAAAAAAAAAAAAAN0dGwAAAAABAAAAAAAAAACAAAABQAAACpFdmVudCBlbWl0dGVkIHdoZW4gb3duZXJzaGlwIGlzIHJlbm91bmNlZC4AAAAAAAAAAAAST3duZXJzaGlwUmVub3VuY2VkAAAAAAABAAAAE293bmVyc2hpcF9yZW5vdW5jZWQAAAAAAQAAAAAAAAAJb2xkX293bmVyAAAAAAAAEwAAAAAAAAACAAAAAgAAAAAAAAAAAAAADk93bmFibGVTdG9yYWdlAAAAAAACAAAAAAAAAAAAAAAFT3duZXIAAAAAAAAAAAAAAAAAAAxQZW5kaW5nT3duZXIAAAABAAAASVRUTCBjb25maWd1cmF0aW9uOiB0aHJlc2hvbGQgKHdoZW4gdG8gZXh0ZW5kKSBhbmQgZXh0ZW5kX3RvICh0YXJnZXQgVFRMKS4AAAAAAAAAAAAACVR0bENvbmZpZwAAAAAAAAIAAAAoVGFyZ2V0IFRUTCBhZnRlciBleHRlbnNpb24gKGluIGxlZGdlcnMpLgAAAAlleHRlbmRfdG8AAAAAAAAEAAAAM1RUTCB0aHJlc2hvbGQgdGhhdCB0cmlnZ2VycyBleHRlbnNpb24gKGluIGxlZGdlcnMpLgAAAAAJdGhyZXNob2xkAAAAAAAABAAAAAUAAAAnRXZlbnQgZW1pdHRlZCB3aGVuIFRUTCBjb25maWdzIGFyZSBzZXQuAAAAAAAAAAANVHRsQ29uZmlnc1NldAAAAAAAAAEAAAAPdHRsX2NvbmZpZ3Nfc2V0AAAAAAIAAAAAAAAACGluc3RhbmNlAAAD6AAAB9AAAAAJVHRsQ29uZmlnAAAAAAAAAAAAAAAAAAAKcGVyc2lzdGVudAAAAAAD6AAAB9AAAAAJVHRsQ29uZmlnAAAAAAAAAAAAAAIAAAAFAAAAKkV2ZW50IGVtaXR0ZWQgd2hlbiBUVEwgY29uZmlncyBhcmUgZnJvemVuLgAAAAAAAAAAABBUdGxDb25maWdzRnJvemVuAAAAAQAAABJ0dGxfY29uZmlnc19mcm96ZW4AAAAAAAAAAAACAAAAAgAAAAAAAAAAAAAAEFR0bENvbmZpZ1N0b3JhZ2UAAAADAAAAAAAAAAAAAAAGRnJvemVuAAAAAAAAAAAAAAAAAAhJbnN0YW5jZQAAAAAAAAAAAAAAClBlcnNpc3RlbnQAAAAAAAIAAAAAAAAAAAAAABJVcGdyYWRlYWJsZVN0b3JhZ2UAAAAAAAIAAAAAAAAAAAAAAAZGcm96ZW4AAAAAAAAAAAAAAAAACU1pZ3JhdGluZwAAAACLAQ5jb250cmFjdG1ldGF2MAAAAAAAAAAGYmludmVyAAAAAAAFMC4wLjEAAAAAAAAAAAAABXJzdmVyAAAAAAAABjEuOTAuMAAAAAAAAAAAAAhyc3Nka3ZlcgAAAC8yMy40LjAjNjczZDZjNGYyMzY4ZDI4MmQyNWRhMjliZGE1NWMyMWI4YmU2OWNhNgAAHhFjb250cmFjdGVudm1ldGF2MAAAAAAAAAAXAAAAAA==";
11
+ export declare const WASM_BASE64 = "AGFzbQEAAAABlgEaYAR+fn5+AX5gAn5+AX5gA35+fgF+YAF+AX5gAAF+YAN/f38AYAF/AX5gAn9/AGACfn4Bf2ACf34AYAN/fn4AYAABf2ABfwBgAX8Bf2AAAGACfn8AYAF+AGACfn8BfmAEf39/fwF+YAV+f39/fwBgAn9/AX5gAX4Bf2AFf39/fn4AYAJ+fgBgBH9+fn8AYAV/fn5+fgACowEbAWwBNwAAAWwBMQABAWwBXwACAWEBMAADAWwBMgABAXgBMQABAXYBMwADAXYBMQABAWkBNgABAWIBOAADAWwBNgADAWIBMAADAWkBXwADAWkBMAADAWkBMwABAWkBNQADAWkBNAADAXYBZwABAWIBagABAW0BOQACAW0BYQAAAXgBMAABAXgBMwAEAXgBOAAEAWwBMAABAWwBOAABAXgBNQADA3FwBQYHCAkKAQsMBw0LBg4EBAwPDgwQBgwRCRIGBwEFCQoJEwkBEBQDAwMDDA4BEAkHAQEDFQQMBAwDDRYHDBYIAAwKBAMEAQcHEAMMAwQHBAQEBAMXAQ4LCgQOBAEBCQYEBxQEBA4FCQUGBwUYGBkZGQUDAQARBiEEfwFBgIDAAAt/AEGshMAAC38AQc+GwAALfwBB0IbAAAsHpwUkBm1lbW9yeQIAEXNldF9wcmljZV91cGRhdGVyAD4bc2V0X3ByaWNlX3JhdGlvX2Rlbm9taW5hdG9yAEIgc2V0X2FyYml0cnVtX2NvbXByZXNzaW9uX3BlcmNlbnQAQxVzZXRfZWlkX3RvX21vZGVsX3R5cGUARAlzZXRfcHJpY2UARxZzZXRfcHJpY2VfZm9yX2FyYml0cnVtAEsac2V0X25hdGl2ZV90b2tlbl9wcmljZV91c2QATBBpc19wcmljZV91cGRhdGVyAE0cYXJiaXRydW1fY29tcHJlc3Npb25fcGVyY2VudABPEmFyYml0cnVtX3ByaWNlX2V4dABREWVpZF90b19tb2RlbF90eXBlAFMTZXN0aW1hdGVfZmVlX2J5X2VpZABaFm5hdGl2ZV90b2tlbl9wcmljZV91c2QAXQlnZXRfcHJpY2UAXhtnZXRfcHJpY2VfcmF0aW9fZGVub21pbmF0b3IAXw1fX2NvbnN0cnVjdG9yAGAHdXBncmFkZQBkB21pZ3JhdGUAZgZmcmVlemUAZwlpc19mcm96ZW4AaQphdXRob3JpemVyAGoFb3duZXIAaw1wZW5kaW5nX293bmVyAGwSdHJhbnNmZXJfb3duZXJzaGlwAG0acHJvcG9zZV9vd25lcnNoaXBfdHJhbnNmZXIAbxBhY2NlcHRfb3duZXJzaGlwAHMScmVub3VuY2Vfb3duZXJzaGlwAHUTZXh0ZW5kX2luc3RhbmNlX3R0bAB2D3NldF90dGxfY29uZmlncwB3C3R0bF9jb25maWdzAHoSZnJlZXplX3R0bF9jb25maWdzAH0VaXNfdHRsX2NvbmZpZ3NfZnJvemVuAH4BXwMBCl9fZGF0YV9lbmQDAgtfX2hlYXBfYmFzZQMDCrKBAXAlACAAEJyAgIAAQgEgAa1CIIZCBIQgAq1CIIZCBIQQgICAgAAaC4QDAgF/AX4jgICAgABBEGsiASSAgICAAAJAAkACQAJAAkACQAJAAkACQAJAIAAoAgAOBwABAgMEBQYACyABQaCCwIAAQRUQuICAgAAgASgCAA0HIAEgASkDCBC5gICAAAwGCyABQbWCwIAAQQwQuICAgAAgASgCAA0GIAEgASkDCCAAKQMIELqAgIAADAULIAFBwYLAgABBERC4gICAACABKAIADQUgASABKQMIIAA1AgRCIIZCBIQQuoCAgAAMBAsgAUHSgsCAAEEQELiAgIAAIAEoAgANBCABIAEpAwgQuYCAgAAMAwsgAUHigsCAAEEOELiAgIAAIAEoAgANAyABIAEpAwgQuYCAgAAMAgsgAUHwgsCAAEEaELiAgIAAIAEoAgANAiABIAEpAwgQuYCAgAAMAQsgAUGKg8CAAEEOELiAgIAAIAEoAgANASABIAEpAwggADUCBEIghkIEhBC6gICAAAsgASkDCCECIAEpAwBQDQELAAsgAUEQaiSAgICAACACC40BAgF/AX4jgICAgABBIGsiAiSAgICAAAJAAkACQCABEJyAgIAAIgNCAhCegICAAA0AQgAhAwwBCyACIANCAhCBgICAABCfgICAACACKAIAQQFGDQEgAikDECEDIAAgAikDGDcDGCAAIAM3AxBCASEDCyAAIAM3AwAgAEIANwMIIAJBIGokgICAgAAPCwALDwAgACABEJiAgIAAQgFRC3sCAX8BfgJAAkACQCABp0H/AXEiAkHEAEYNACACQQpHDQFCACEDIABCADcDGCAAIAFCCIg3AxAMAgsgARCPgICAACEDIAEQkICAgAAhASAAIAM3AxggACABNwMQQgAhAwwBCyAAQoOQgICAATcDCEIBIQMLIAAgAzcDAAsdACAAEJyAgIAAIAEgAhChgICAAEICEIKAgIAAGgtDAQF/I4CAgIAAQRBrIgIkgICAgAAgAiAAIAEQ3ICAgAACQCACKAIAQQFHDQAACyACKQMIIQEgAkEQaiSAgICAACABC1gBAn8jgICAgABBEGsiACSAgICAACAAQQRqEKOAgIAAAkAgACgCBEEBRw0AIAAoAgggACgCDBCkgICAAAtBABClgICAACEBIABBEGokgICAgAAgAUH9AXELDAAgAEEBEISBgIAACxsAIACtQiCGQgSEIAGtQiCGQgSEEJmAgIAAGgtHAgF/AX5BAiEBAkAgABCDgYCAACICQgIQnoCAgABFDQBBASEBAkACQCACQgIQgYCAgACnQf8BcQ4CAQIACwALQQAhAQsgAQuLAQICfwF+I4CAgIAAQRBrIgAkgICAgAAgAEEEahCjgICAAAJAIAAoAgRBAUcNACAAKAIIIAAoAgwQpICAgAALQQAhAQJAQQAQp4CAgAAiAkICEJ6AgIAARQ0AQQEhAQJAAkAgAkICEIGAgIAAp0H/AXEOAgECAAsAC0EAIQELIABBEGokgICAgAAgAQvCAQIBfwF+I4CAgIAAQRBrIgEkgICAgAACQAJAAkACQAJAAkAgAEH/AXEOAwABAgALIAFBrobAgABBBhC4gICAACABKAIADQMgASABKQMIELmAgIAADAILIAFBtIbAgABBCBC4gICAACABKAIADQIgASABKQMIELmAgIAADAELIAFBvIbAgABBChC4gICAACABKAIADQEgASABKQMIELmAgIAACyABKQMIIQIgASkDAFANAQsACyABQRBqJICAgIAAIAILDwAQqYCAgAAQg4CAgAAaC2YCAX8BfiOAgICAAEEQayIAJICAgIAAIAAQo4CAgAACQCAAKAIAQQFHDQAgACgCBCAAKAIIEKSAgIAACyAAEKuAgIAAIAApAwghASAAKQMAQYoIEKyAgIAAIABBEGokgICAgAAgAQtKAgF/AX4jgICAgABBEGsiACSAgICAACAAEKuAgIAAIAApAwghASAAKQMAQYoIEKyAgIAAIAEQg4CAgAAaIABBEGokgICAgAAgAQtQAQF/I4CAgIAAQRBrIgEkgICAgAAgAUEEahCjgICAAAJAIAEoAgRBAUcNACABKAIIIAEoAgwQpICAgAALIAAQsYCAgAAgAUEQaiSAgICAAAspAAJAIACnQQFxRQ0ADwsgAUH6d2qtQiCGQoOAgIDggAF8EK+AgIAAAAtCAQF/I4CAgIAAQRBrIgAkgICAgAAgABCugICAAAJAIAApAwBQDQBCg4CAgLCBARCvgICAAAALIABBEGokgICAgAALkwECAX8CfiOAgICAAEEQayIBJICAgIAAIAFBBGoQo4CAgAACQCABKAIEQQFHDQAgASgCCCABKAIMEKSAgIAAC0IAIQICQAJAQQEQsICAgAAiA0IAEJ6AgIAARQ0AIANCABCBgICAACICQv8Bg0LNAFINASAAIAI3AwhCASECCyAAIAI3AwAgAUEQaiSAgICAAA8LAAsLACAAEJqAgIAAGguSAQIBfwF+I4CAgIAAQRBrIgEkgICAgAACQAJAAkACQCAAQQFxRQ0AIAFBwYXAgABBDBC4gICAACABKAIADQIgASABKQMIELmAgIAADAELIAFBvIXAgABBBRC4gICAACABKAIADQEgASABKQMIELmAgIAACyABKQMIIQIgASkDAFANAQsACyABQRBqJICAgIAAIAILTQECfkIAIQECQAJAQQAQsICAgAAiAkICEJ6AgIAARQ0AIAJCAhCBgICAACIBQv8Bg0LNAFINASAAIAE3AwhCASEBCyAAIAE3AwAPCwALaQEBfyOAgICAAEEgayICJICAgIAAIAJBEGogABCzgICAAAJAIAIoAhBBAUcNAAALIAIgAikDGDcDCCACIAGtQiCGQgSENwMAQcCBwIAAQQIgAkECELSAgIAAIQAgAkEgaiSAgICAACAACzsAAkACQCABQv//////////AFYNACABQgiGQgaEIQEMAQsgARCMgICAACEBCyAAQgA3AwAgACABNwMICy4AAkAgASADRg0AAAsgAK1CIIZCBIQgAq1CIIZCBIQgAa1CIIZCBIQQk4CAgAALQwIBfwF+I4CAgIAAQRBrIgEkgICAgAAgASAAELaAgIAAAkAgASgCAEEBRw0AAAsgASkDCCECIAFBEGokgICAgAAgAgutAQIBfwN+I4CAgIAAQSBrIgIkgICAgAAgATUCGCEDIAJBCGogASkDEBCzgICAAEIBIQQCQCACKAIIDQAgAikDECEFIAJBCGogASkDACABKQMIENyAgIAAIAIoAggNACACIAIpAxA3AxggAiAFNwMQIAIgA0IghkIEhDcDCCAAQcCDwIAAQQMgAkEIakEDELSAgIAANwMIQgAhBAsgACAENwMAIAJBIGokgICAgAALDQAgAUICIACnQQFxGwtRAgF/AX4jgICAgABBEGsiAySAgICAACADIAEgAhCAgYCAAEIBIQQCQCADKAIADQAgACADKQMINwMIQgAhBAsgACAENwMAIANBEGokgICAgAALRAEBfyOAgICAAEEQayICJICAgIAAIAIgATcDCCACQQhqQQEQ/ICAgAAhASAAQgA3AwAgACABNwMIIAJBEGokgICAgAALSAEBfyOAgICAAEEQayIDJICAgIAAIAMgAjcDCCADIAE3AwAgA0ECEPyAgIAAIQIgAEIANwMAIAAgAjcDCCADQRBqJICAgIAAC7gBAgJ/AX4jgICAgABBIGsiAiSAgICAAEEAIQMCQANAIANBEEYNASACIANqQgI3AwAgA0EIaiEDDAALC0IBIQQCQCABQv8Bg0LMAFINACABQcCBwIAAQQIgAkECELyAgIAAIAIpAwAiAUL/AYNCBFINACACQRBqIAIpAwgQvYCAgAAgAigCEA0AIAIpAxghBCAAIAFCIIinNgIQIAAgBDcDCEIAIQQLIAAgBDcDACACQSBqJICAgIAACzEAAkAgAiAERg0AAAsgACABrUIghkIEhCADrUIghkIEhCACrUIghkIEhBCUgICAABoLXQIBfwF+AkACQCABp0H/AXEiAkHAAEYNAAJAIAJBBkYNAEIBIQNCg5CAgIABIQEMAgsgAUIIiCEBQgAhAwwBC0IAIQMgARCNgICAACEBCyAAIAM3AwAgACABNwMIC/IBAQJ/I4CAgIAAQRBrIgIkgICAgAACQCAAQv8Bg0LNAFINAEEBIAGnQf8BcSIDQQBHQQF0IANBAUYbIgNBAkYNABCogICAACACEKOAgIAAAkAgAigCAEEBRw0AIAIoAgQgAigCCBCkgICAAAsCQAJAIANBAXENACACQQE2AgAgAiAANwMIIAIQnICAgABCARCEgICAABoMAQsgABC/gICAAAtBgIDAgABBERDAgICAABDBgICAACEBIAIgADcDCCACIAOtNwMAIAFBoIDAgABBAiACQQIQtICAgAAQhYCAgAAaIAJBEGokgICAgABCAg8LAAtrAQF/I4CAgIAAQSBrIgEkgICAgAAgASAANwMIIAFBATYCACABEJyAgIAAQgFCARCCgICAABogAUEUahDFgICAAAJAIAEoAhRBAUcNACABIAEoAhggASgCHBCbgICAAAsgAUEgaiSAgICAAAtFAgF/AX4jgICAgABBEGsiAiSAgICAACACIAAgARCAgYCAAAJAIAIoAgBBAUcNAAALIAIpAwghAyACQRBqJICAgIAAIAMLYwMBfwF+AX8jgICAgABBEGsiASSAgICAACABIAA3AwBCAiECQQEhAwJAA0AgA0UNASADQX9qIQMgACECDAALCyABIAI3AwggAUEIakEBEPyAgIAAIQAgAUEQaiSAgICAACAAC6MBAgF/AX4jgICAgABBIGsiASSAgICAACABIAAQn4CAgAACQAJAIAEoAgBBAUYNACABKQMYIQAgASkDECECEKiAgIAAIAEQo4CAgAACQCABKAIAQQFHDQAgASgCBCABKAIIEKSAgIAACyACIACEQgBRDQEgAUEANgIAIAEgAiAAEKCAgIAAIAFBIGokgICAgABCAg8LAAtCg4CAgBAQr4CAgAAAC4kBAgF/AX4jgICAgABBIGsiASSAgICAACABIAAQn4CAgAACQCABKAIAQQFGDQAgASkDGCEAIAEpAxAhAhCogICAACABEKOAgIAAAkAgASgCAEEBRw0AIAEoAgQgASgCCBCkgICAAAsgAUEFNgIAIAEgAiAAEKCAgIAAIAFBIGokgICAgABCAg8LAAuXAwUBfwN+AX8BfgF/I4CAgIAAQSBrIgEkgICAgAACQCAAQv8Bg0LLAFINABCogICAACABEKOAgIAAAkAgASgCAEEBRw0AIAEoAgQgASgCCBCkgICAAAsgABCGgICAAEIgiCECQgAhAwNAAkACQAJAIAMgAlENACAAIANCIIZCBIQQh4CAgAAhBEEAIQUCQANAIAVBEEYNASABIAVqQgI3AwAgBUEIaiEFDAALC0EDIQUgBEL/AYNCzABSDQEgBEGQgsCAAEECIAFBAhC8gICAACABKQMAIgRC/wGDQgRSDQEgASkDCCIGQv8Bg0IEUg0CIARCIIinIQcgBkIgiKciBUEDIAVBA0kbIQUMAgsgAUEgaiSAgICAAEICDwsLAkAgA0L/////D1ENACAFQQNGDQAgAUEGNgIAIAEgBzYCBCABEJyAgIAAIAWtQiCGQgSEQgEQgoCAgAAaIAFBFGoQxYCAgAACQCABKAIUQQFHDQAgASABKAIYIAEoAhwQm4CAgAALIANCAXwhAwwBCwsQxoCAgAAACwALDAAgAEECEISBgIAACwkAEP+AgIAAAAuoBAUBfwF+An8BfgR/I4CAgIAAQYABayICJICAgIAAAkACQCAAQv8Bg0LNAFINACABQv8Bg0LLAFINACACQdAAahCjgICAAAJAIAIoAlBBAUcNACACKAJUIAIoAlgQpICAgAALIAAQyICAgAAgARCGgICAAEIgiCEDQgAhACACQdAAakEQaiIEQQhqIQUCQANAIAAgA1ENASABIABCIIZCBIQQh4CAgAAhBkEAIQcCQANAIAdBEEYNASACQcAAaiAHakICNwMAIAdBCGohBwwACwtBASEIAkACQCAGQv8Bg0LMAFENAAwBCyAGQdSBwIAAQQIgAkHAAGpBAhC8gICAACACKQNAIgZC/wGDQgRSDQAgAkHQAGogAikDSBDJgICAACACKAJQIghBAXENACAGQiCIpyEHIAJBIGpBGGogBEEYaikDADcDACACQSBqQRBqIARBEGopAwA3AwAgAiAEKQMANwMgIAIgBSkDADcDKAsgAEL/////D1ENAyACQRhqIgkgAkEgakEYaikDADcDACACQRBqIgogAkEgakEQaikDADcDACACIAIpAyg3AwggAiACKQMgNwMAIAhBAXENAyACQdAAakEYaiAJKQMANwMAIAQgCikDADcDACACIAIpAwg3A1ggAiACKQMANwNQIAIgBzYCcCAHIAJB0ABqEMqAgIAAIABCAXwhAAwACwsgAkGAAWokgICAgABCAg8LAAsQxoCAgAAAC20BAX8jgICAgABBEGsiASSAgICAACAAEIOAgIAAGiABEKuAgIAAAkACQAJAIAEoAgBBAUcNACABKQMIIAAQ2YCAgAANAQsgABDOgICAAEUNAQsgAUEQaiSAgICAAA8LQoOAgIDAABCvgICAAAALgQICAn8DfiOAgICAAEHAAGsiAiSAgICAAEEAIQMCQANAIANBGEYNASACQQhqIANqQgI3AwAgA0EIaiEDDAALC0IAIQRCASEFAkAgAUL/AYNCzABSDQAgAUHAg8CAAEEDIAJBCGpBAxC8gICAACACKQMIIgFC/wGDQgRSDQAgAkEgaiACKQMQEL2AgIAAIAIoAiANACACKQMoIQYgAkEgaiACKQMYEJ+AgIAAIAIoAiBBAUYNACACKQMwIQQgACACKQM4NwMYIAAgBDcDECAAIAFCIIinNgIoIAAgBjcDIEIAIQVCACEECyAAIAU3AwAgACAENwMIIAJBwABqJICAgIAAC4ICAgF/AX4jgICAgABBwABrIgIkgICAgAAgAkECNgIAIAIgADYCBCACEJyAgIAAIAEQtYCAgABCARCCgICAABogAkEwahDFgICAAAJAIAIoAjBBAUcNACACIAIoAjQgAigCOBCbgICAAAsgAkEQaiABQRBqKQMANwMAIAJBGGogAUEYaikDADcDACACIAEpAwA3AwAgAiABQQhqKQMANwMIIAIgADYCIEGwgMCAAEENEMCAgIAAEMGAgIAAIQMgAiACELWAgIAANwM4IAIgAK1CIIZCBIQ3AzAgA0HMgMCAAEECIAJBMGpBAhC0gICAABCFgICAABogAkHAAGokgICAgAAL5AMDAn8BfgF/I4CAgIAAQZABayICJICAgIAAAkAgAEL/AYNCzQBSDQBBACEDAkADQCADQRhGDQEgAkHIAGogA2pCAjcDACADQQhqIQMMAAsLIAFC/wGDQswAUg0AIAFB7IHAgABBAyACQcgAakEDELyAgIAAIAIpA0giBEL/AYNCBFINACACIAIpA1AQu4CAgAAgAigCAEEBRg0AIAIoAhAhAyACKQMIIQEgAkHgAGogAikDWBDJgICAACACKAJgQQFxDQAgAkEYaiACQYgBaikDADcDACACQRBqIAJBgAFqKQMANwMAIAIgAikDcDcDACACIAJB4ABqQRhqKQMANwMIIAIgBEIgiKciBTYCMCACIAM2AiggAiABNwMgIAJB4ABqEKOAgIAAAkAgAigCYEEBRw0AIAIoAmQgAigCaBCkgICAAAsgABDIgICAACAFIAIQyoCAgAAgAkEDNgJgIAJB4ABqEJyAgIAAIAEgAxCygICAAEICEIKAgIAAGkHcgMCAAEEaEMCAgIAAEMGAgIAAIQAgASADELKAgIAAIQEgAiAFrUIghkIEhDcDaCACIAE3A2AgAEGIgcCAAEEC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IQIgBEGgAWogCCAHENyAgIAAIAQoAqABDQAgBCkDqAEhAwJAAkAgAEKAgICAgICAwAB8Qv//////////AFYNACAAIACFIAEgAEI/h4WEQgBSDQAgAEIIhkILhCEADAELIAEgABCIgICAACEACyAEIAA3A4gBIAQgAzcDgAEgBCACNwN4IAQgCTcDcEGMhMCAAEEEIARB8ABqQQQQtICAgAAhACAEQbABaiSAgICAACAADwsAC4oBAwF/AX4BfyOAgICAAEEwayIBJICAgIAAIAFBEGoQo4CAgAACQCABKAIQQQFHDQAgASgCFCABKAIYEKSAgIAACyABQQQ2AgAgAUEQaiABEJ2AgIAAIAEpAyAhAiAAIAEpAyhCACABKAIQQQFxIgMbNwMIIAAgAkIAIAMbNwMAIAFBMGokgICAgAALRgACQAJAIAFC//////////8AViACQgBSIAJQGw0AIAFCCIZCCoQhAgwBCyACIAEQjoCAgAAhAgsgAEIANwMAIAAgAjcDCAs+AgF/AX4jgICAgABBEGsiACSAgICAACAAENuAgIAAIAApAwAgACkDCBChgICAACEBIABBEGokgICAgAAgAQt5AQF/I4CAgIAAQcAAayIBJICAgIAAAkAgAEL/AYNCBFINACABIABCIIinENaAgIAAAkACQCABKAIAQQFxDQBCAiEADAELIAFBMGogAUEQahC2gICAACABKAIwQQFxDQEgASkDOCEACyABQcAAaiSAgICAACAADwsACz4CAX8BfiOAgICAAEEQayIAJICAgIAAIAAQ14CAgAAgACkDACAAKQMIEKGAgIAAIQEgAEEQaiSAgICAACABC3EAAkACQCAAQv8Bg0LNAFINACABQv8Bg0LNAFINAEGAyx5BgNIfEOGAgIAAQYDLHkGA0h8Q4oCAgABBABCwgICAAEICEJ6AgIAADQEgABDjgICAACABEL+AgIAAQgIPCwALQoOAgICQgQEQr4CAgAAACw4AQQEgACABEIWBgIAACw4AQQIgACABEIWBgIAACw4AQQAgAEICEPKAgIAAC6UBAQF/I4CAgIAAQRBrIgEkgICAgAACQAJAIABC/wGDQsgAUg0AIAAQiYCAgABCgICAgHCDQoCAgICABFINACABQQRqEKOAgIAAAkAgASgCBEEBRw0AIAEoAgggASgCDBCkgICAAAsQqICAgAAQooCAgAANAUEBEOWAgIAAIAAQioCAgAAaIAFBEGokgICAgABCAg8LAAtCg4CAgMCDARCvgICAAAALDABBASAAEOiAgIAAC60BAQF/I4CAgIAAQRBrIgEkgICAgAACQAJAAkAgAEL/AYNCyABSDQAgAUEEahCjgICAAAJAIAEoAgRBAUcNACABKAIIIAEoAgwQpICAgAALEKiAgIAAQQEQpYCAgABB/QFxRQ0BIAAQi4CAgABC/wGDQgJSDQJBABDlgICAACABQRBqJICAgIAAQgIPCwALQoOAgICwgwEQr4CAgAAAC0KDgICAoIMBEK+AgIAAAAtaAQF/I4CAgIAAQRBrIgAkgICAgAAgAEEEahCjgICAAAJAIAAoAgRBAUcNACAAKAIIIAAoAgwQpICAgAALEKiAgIAAQQBBARDogICAACAAQRBqJICAgIAAQgILGgAgABCDgYCAACABrUL/AYNCAhCCgICAABoLCQAQooCAgACtCwgAEKmAgIAACz4CAX8BfiOAgICAAEEQayIAJICAgIAAIAAQq4CAgAAgACkDACAAKQMIELeAgIAAIQEgAEEQaiSAgICAACABCz4CAX8BfiOAgICAAEEQayIAJICAgIAAIAAQroCAgAAgACkDACAAKQMIELeAgIAAIQEgAEEQaiSAgICAACABC30CAX8BfiOAgICAAEEQayIBJICAgIAAAkAgAEL/AYNCzQBSDQAgAUEEahCjgICAAAJAIAEoAgRBAUcNACABKAIIIAEoAgwQpICAgAALEKqAgIAAIQIQrYCAgAAgABDjgICAACACIAAQ7oCAgAAgAUEQaiSAgICAAEICDwsAC2ECAX8BfiOAgICAAEEQayICJICAgIAAQbWEwIAAQRUQwICAgAAQwYCAgAAhAyACIAA3AwggAiABNwMAIANB3ITAgABBAiACQQIQtICAgAAQhYCAgAAaIAJBEGokgICAgAAL3AICAX8CfiOAgICAAEEgayICJICAgIAAAkACQAJAIABC/wGDQs0AUg0AIAFC/wGDQgRSDQAgAkEIahCjgICAAAJAIAIoAghBAUcNACACKAIMIAIoAhAQpICAgAALEKqAgIAAIQMCQAJAIAFC/////w9WDQAgAkEIahCugICAACACKQMQIQEgAikDCEGICBCsgICAACABIAAQ2YCAgABFDQMQ8ICAgAAMAQsQ8YCAgAAgAUIgiKdJDQNBASAAQgAQ8oCAgABBARCwgICAAEIAIAFChICAgHCDIgEgARCAgICAABpB7ITAgABBFhDAgICAABDBgICAACEEIAIgATcDGCACIAM3AxAgAiAANwMIIARBiIXAgABBAyACQQhqQQMQtICAgAAQhYCAgAAaCyACQSBqJICAgIAAQgIPCwALQoOAgIDggAEQr4CAgAAAC0KDgICA8IABEK+AgIAAAAsTAEEBELCAgIAAQgAQhICAgAAaCzMBAn4QloCAgAAhAAJAEJeAgIAAQiCIIgEgAEIgiCIAVA0AIAGnIACnaw8LEMaAgIAAAAsVACAAELCAgIAAIAEgAhCCgICAABoLpwECAX8CfiOAgICAAEEQayIAJICAgIAAIAAQo4CAgAACQCAAKAIAQQFHDQAgACgCBCAAKAIIEKSAgIAACyAAEK6AgIAAIAApAwghASAAKQMAQYgIEKyAgIAAIAEQg4CAgAAaIAAQsYCAgAACQCAAKAIADQAQ9ICAgAAACyAAKQMIIQIQ8ICAgAAgARDjgICAACACIAEQ7oCAgAAgAEEQaiSAgICAAEICCwkAEMaAgIAAAAugAQIBfwJ+I4CAgIAAQRBrIgAkgICAgAAgABCjgICAAAJAIAAoAgBBAUcNACAAKAIEIAAoAggQpICAgAALEKqAgIAAIQEQrYCAgABBABCwgICAAEICEISAgIAAGkGghcCAAEETEMCAgIAAEMGAgIAAIQIgACABNwMAIAJBtIXAgABBASAAQQEQtICAgAAQhYCAgAAaIABBEGokgICAgABCAgsxAAJAIABC/wGDQgRSDQAgAUL/AYNCBFINACAAQiCIpyABQiCIpxCkgICAAEICDwsAC94EAQV/I4CAgIAAQdAAayICJICAgIAAIAJBKGogABD4gICAAAJAIAIoAihBAkYNACACQQhqQQhqIAJBKGpBCGoiAygCADYCACACIAIpAig3AwggAkEoaiABEPiAgIAAIAIoAihBAkYNACACQRhqQQhqIAMoAgA2AgAgAiACKQIoNwMYIAJBKGoQo4CAgAACQCACKAIoQQFHDQAgAigCLCACKAIwEKSAgIAACxCogICAAAJAAkACQBCmgICAAA0AEPGAgIAAIgNBgPuAAyADQYD7gANJGyEEIAIgAkEYajYCLCACIAJBCGo2AihBACEDA0AgA0EIRg0DAkAgAkEoaiADaigCACIFKAIAQQFxRQ0AIAUoAggiBiAESw0DIAUoAgQgBksNAwsgA0EEaiEDDAALC0KDgICA0P8AEK+AgIAAAAtCg4CAgMD/ABCvgICAAAALAkACQCACKAIIQQFHDQAgAigCDCACKAIQEOGAgIAADAELQQEQp4CAgABCAhCEgICAABoLAkACQCACKAIYQQFHDQAgAigCHCACKAIgEOKAgIAADAELQQIQp4CAgABCAhCEgICAABoLIAJBKGpBCGogAkEIakEIaigCADYCACACQTxqIAJBGGpBCGooAgA2AgAgAiACKQMINwMoIAIgAikDGDcCNEHohcCAAEEPEMCAgIAAEMGAgIAAIQAgAkEoahD5gICAACEBIAIgAkE0ahD5gICAADcDSCACIAE3A0AgAEGMhsCAAEECIAJBwABqQQIQtICAgAAQhYCAgAAaIAJB0ABqJICAgIAAQgIPCwALaAEBfyOAgICAAEEQayICJICAgIAAAkACQCABQgJRDQAgAkEEaiABEIGBgIAAAkAgAigCBEUNACAAQQI2AgAMAgsgACACKQIINwIEIABBATYCAAwBCyAAQQA2AgALIAJBEGokgICAgAALQwIBfwF+I4CAgIAAQRBrIgEkgICAgAAgASAAEPuAgIAAAkAgASgCAEEBRw0AAAsgASkDCCECIAFBEGokgICAgAAgAgvCAQICfwF+I4CAgIAAQcAAayIAJICAgIAAIABBCGoQo4CAgAACQCAAKAIIQQFHDQAgACgCDCAAKAIQEKSAgIAACyAAQQhqEKOAgIAAIABBFGoiARDFgICAACAAQTBqIABBCGoQ+4CAgAACQAJAIAAoAjANACAAKQM4IQIgAEEwaiABEPuAgIAAIAAoAjBBAUcNAQsACyAAIAApAzg3AyggACACNwMgIABBIGpBAhD8gICAACECIABBwABqJICAgIAAIAILMAACQCABKAIAQQFHDQAgACABKAIEIAEoAggQgoGAgAAPCyAAQgA3AwAgAEICNwMICxoAIACtQiCGQgSEIAGtQiCGQgSEEJGAgIAAC6oBAQF/I4CAgIAAQSBrIgAkgICAgAAgAEEMahCjgICAAAJAIAAoAgxBAUcNACAAKAIQIAAoAhQQpICAgAALEKiAgIAAAkAQ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AAAAbW9kZWxfdHlwZQAAPQAQAAcAAAAEARAACgAAAFByaWNlUmF0aW9EZW5vbWluYXRvclByaWNlVXBkYXRlckRlZmF1bHRNb2RlbFByaWNlQXJiaXRydW1QcmljZUV4dE5hdGl2ZVByaWNlVVNEQXJiaXRydW1Db21wcmVzc2lvblBlcmNlbnRFaWRUb01vZGVsVHlwZWdhc19wZXJfYnl0ZWdhc19wcmljZV9pbl91bml0cHJpY2VfcmF0aW+YARAADAAAAKQBEAARAAAAtQEQAAsAAABuYXRpdmVfcHJpY2VfdXNkcHJpY2VfcmF0aW9fZGVub21pbmF0b3J0b3RhbF9nYXNfZmVl2AEQABAAAAC1ARAACwAAAOgBEAAXAAAA/wEQAA0AAAB0aHJlc2hvbGRvd25lcnNoaXBfdHJhbnNmZXJyZWRuZXdfb3duZXJvbGRfb3duZXJKAhAACQAAAFMCEAAJAAAAb3duZXJzaGlwX3RyYW5zZmVycmluZ3R0bAAAAEoCEAAJAAAAUwIQAAkAAACCAhAAAwAAAG93bmVyc2hpcF9yZW5vdW5jZWQAUwIQAAkAAABPd25lclBlbmRpbmdPd25lcmV4dGVuZF90bwAAzQIQAAkAAAAsAhAACQAAAHR0bF9jb25maWdzX3NldGluc3RhbmNlcGVyc2lzdGVudAAAAPcCEAAIAAAA/wIQAAoAAAB0dGxfY29uZmlnc19mcm96ZW5Gcm96ZW5JbnN0YW5jZVBlcnNpc3RlbnRNaWdyYXRpbmcAp3YOY29udHJhY3RzcGVjdjAAAAAEAAAAAAAAAAAAAAAOUHJpY2VGZWVkRXJyb3IAAAAAAAUAAAAAAAAAEkludmFsaWREZW5vbWluYXRvcgAAAAAAAQAAAAAAAAAHTm9QcmljZQAAAAACAAAAAAAAAAxOb3RBbk9wU3RhY2sAAAADAAAAAAAAABBPbmx5UHJpY2VVcGRhdGVyAAAABAAAAAAAAAAIT3ZlcmZsb3cAAAAFAAAABQAAAAAAAAAAAAAAD1ByaWNlVXBkYXRlclNldAAAAAABAAAAEXByaWNlX3VwZGF0ZXJfc2V0AAAAAAAAAgAAAAAAAAAHdXBkYXRlcgAAAAATAAAAAAAAAAAAAAAGYWN0aXZlAAAAAAABAAAAAAAAAAIAAAAFAAAAAAAAAAAAAAAMUHJpY2VVcGRhdGVkAAAAAQAAAA1wcmljZV91cGRhdGVkAAAAAAAAAgAAAAAAAAAHZHN0X2VpZAAAAAAEAAAAAAAAAAAAAAAFcHJpY2UAAAAAAAfQAAAABVByaWNlAAAAAAAAAAAAAAIAAAAFAAAAAAAAAAAAAAAXQXJiaXRydW1QcmljZUV4dFVwZGF0ZWQAAAAAAQAAABphcmJpdHJ1bV9wcmljZV9leHRfdXBkYXRlZAAAAAAAAgAAAAAAAAAHZHN0X2VpZAAAAAAEAAAAAAAAAAAAAAASYXJiaXRydW1fcHJpY2VfZXh0AAAAAAfQAAAAEEFyYml0cnVtUHJpY2VFeHQAAAAAAAAAAgAAAAEAAAAhQXJiaXRydW0tc3BlY2lmaWMgcHJpY2UgZXh0ZW5zaW9uAAAAAAAAAAAAABBBcmJpdHJ1bVByaWNlRXh0AAAAAgAAAEFHYXMgY29zdCBwZXIgYnl0ZSBvZiBMMSBjYWxsZGF0YSAoZm9yIEFyYml0cnVtJ3MgTDEgZGF0YSBwb3N0aW5nKQAAAAAAABhnYXNfcGVyX2wxX2NhbGxkYXRhX2J5dGUAAAAEAAAAH0dhcyBvdmVyaGVhZCBwZXIgTDIgdHJhbnNhY3Rpb24AAAAADWdhc19wZXJfbDJfdHgAAAAAAAAGAAAAAQAAACVQYXJhbWV0ZXIgZm9yIHVwZGF0aW5nIGEgc2luZ2xlIHByaWNlAAAAAAAAAAAAAAtVcGRhdGVQcmljZQAAAAACAAAAF0Rlc3RpbmF0aW9uIGVuZHBvaW50IElEAAAAAANlaWQAAAAABAAAACVQcmljZSBpbmZvcm1hdGlvbiBmb3IgdGhlIGRlc3RpbmF0aW9uAAAAAAAABXByaWNlAAAAAAAH0AAAAAVQcmljZQAAAAAAAAEAAAA0UGFyYW1ldGVyIGZvciB1cGRhdGluZyBBcmJpdHJ1bSBwcmljZSB3aXRoIGV4dGVuc2lvbgAAAAAAAAAOVXBkYXRlUHJpY2VFeHQAAAAAAAMAAAA4RGVzdGluYXRpb24gZW5kcG9pbnQgSUQgKHNob3VsZCBiZSBhbiBBcmJpdHJ1bSBlbmRwb2ludCkAAAADZWlkAAAAAAQAAAAjQXJiaXRydW0tc3BlY2lmaWMgcHJpY2luZyBleHRlbnNpb24AAAAABmV4dGVuZAAAAAAH0AAAABBBcmJpdHJ1bVByaWNlRXh0AAAAJVByaWNlIGluZm9ybWF0aW9uIGZvciB0aGUgZGVzdGluYXRpb24AAAAAAAAFcHJpY2UAAAAAAAfQAAAABVByaWNlAAAAAAAAAwAAADBGZWUgbW9kZWwgdHlwZSBmb3IgZGlmZmVyZW50IGNoYWluIGFyY2hpdGVjdHVyZXMAAAAAAAAACU1vZGVsVHlwZQAAAAAAAAMAAAAAAAAAB0RlZmF1bHQAAAAAAAAAAAAAAAAIQXJiU3RhY2sAAAABAAAAAAAAAAdPcFN0YWNrAAAAAAIAAAABAAAAL1BhcmFtZXRlciBmb3Igc2V0dGluZyBFSUQgdG8gbW9kZWwgdHlwZSBtYXBwaW5nAAAAAAAAAAAWU2V0RWlkVG9Nb2RlbFR5cGVQYXJhbQAAAAAAAgAAABdEZXN0aW5hdGlvbiBlbmRwb2ludCBJRAAAAAAHZHN0X2VpZAAAAAAEAAAAI0ZlZSBtb2RlbCB0eXBlIGZvciB0aGlzIGRlc3RpbmF0aW9uAAAAAAptb2RlbF90eXBlAAAAAAfQAAAACU1vZGVsVHlwZQAAAAAAAAAAAAAlU2V0IHByaWNlIHVwZGF0ZXIgc3RhdHVzIChvd25lciBvbmx5KQAAAAAAABFzZXRfcHJpY2VfdXBkYXRlcgAAAAAAAAIAAAAAAAAAB3VwZGF0ZXIAAAAAEwAAAAAAAAAGYWN0aXZlAAAAAAABAAAAAAAAAAAAAAAsU2V0IHRoZSBwcmljZSByYXRpbyBkZW5vbWluYXRvciAob3duZXIgb25seSkAAAAbc2V0X3ByaWNlX3JhdGlvX2Rlbm9taW5hdG9yAAAAAAEAAAAAAAAAC2Rlbm9taW5hdG9yAAAAAAoAAAAAAAAAAAAAADRTZXQgdGhlIEFyYml0cnVtIGNvbXByZXNzaW9uIHBlcmNlbnRhZ2UgKG93bmVyIG9ubHkpAAAAIHNldF9hcmJpdHJ1bV9jb21wcmVzc2lvbl9wZXJjZW50AAAAAQAAAAAAAAATY29tcHJlc3Npb25fcGVyY2VudAAAAAAKAAAAAAAAAAAAAAA4U2V0IHRoZSBmZWUgbW9kZWwgdHlwZSBmb3IgZGVzdGluYXRpb24gRUlEcyAob3duZXIgb25seSkAAAAVc2V0X2VpZF90b19tb2RlbF90eXBlAAAAAAAAAQAAAAAAAAAGcGFyYW1zAAAAAAPqAAAH0AAAABZTZXRFaWRUb01vZGVsVHlwZVBhcmFtAAAAAAAAAAAAAAAAAD1TZXQgcHJpY2VzIGZvciBtdWx0aXBsZSBkZXN0aW5hdGlvbnMgKHByaWNlIHVwZGF0ZXIgb3Igb3duZXIpAAAAAAAACXNldF9wcmljZQAAAAAAAAIAAAAAAAAADXByaWNlX3VwZGF0ZXIAAAAAAAATAAAAAAAAAAZwcmljZXMAAAAAA+oAAAfQAAAAC1VwZGF0ZVByaWNlAAAAAAAAAAAAAAAAclNldCBwcmljZSBmb3IgQXJiaXRydW0gd2l0aCBleHRlbnNpb24gKHByaWNlIHVwZGF0ZXIgb3Igb3duZXIpCkNvcnJlc3BvbmRzIHRvIHNldFByaWNlRm9yQXJiaXRydW0gaW4gUHJpY2VGZWVkLnNvbAAAAAAAFnNldF9wcmljZV9mb3JfYXJiaXRydW0AAAAAAAIAAAAAAAAADXByaWNlX3VwZGF0ZXIAAAAAAAATAAAAAAAAAAZ1cGRhdGUAAAAAB9AAAAAOVXBkYXRlUHJpY2VFeHQAAAAAAAAAAAAAAAAAtFNldCB0aGUgbmF0aXZlIHRva2VuIHByaWNlIGluIFVTRCAocHJpY2UgdXBkYXRlciBvciBvd25lcikuCgpLZXB0IGFzIGEgc3RhbmRhbG9uZSBjb250cmFjdCBmdW5jdGlvbiAobm90IHBhcnQgb2YgdGhlIGNhbm9uaWNhbCBgZmVlX2xpYl9pbnRlcmZhY2VzOjpJTGF5ZXJaZXJvUHJpY2VGZWVkYCBpbnRlcmZhY2UpLgAAABpzZXRfbmF0aXZlX3Rva2VuX3ByaWNlX3VzZAAAAAAAAgAAAAAAAAANcHJpY2VfdXBkYXRlcgAAAAAAABMAAAAAAAAAFm5hdGl2ZV90b2tlbl9wcmljZV91c2QAAAAAAAoAAAAAAAAAAAAAAC5DaGVjayBpZiBhbiBhZGRyZXNzIGlzIGFuIGFjdGl2ZSBwcmljZSB1cGRhdGVyAAAAAAAQaXNfcHJpY2VfdXBkYXRlcgAAAAEAAAAAAAAAB3VwZGF0ZXIAAAAAEwAAAAEAAAABAAAAAAAAACRHZXQgdGhlIEFyYml0cnVtIGNvbXByZXNzaW9uIHBlcmNlbnQAAAAcYXJiaXRydW1fY29tcHJlc3Npb25fcGVyY2VudAAAAAAAAAABAAAACgAAAAAAAAAgR2V0IHRoZSBBcmJpdHJ1bSBwcmljZSBleHRlbnNpb24AAAASYXJiaXRydW1fcHJpY2VfZXh0AAAAAAAAAAAAAQAAB9AAAAAQQXJiaXRydW1QcmljZUV4dAAAAAAAAAAoR2V0IHRoZSBtb2RlbCB0eXBlIGZvciBhIGRlc3RpbmF0aW9uIEVJRAAAABFlaWRfdG9fbW9kZWxfdHlwZQAAAAAAAAEAAAAAAAAAB2RzdF9laWQAAAAABAAAAAEAAAfQAAAACU1vZGVsVHlwZQAAAAAAAAAAAABkRXN0aW1hdGUgZmVlIHdpdGggZGV0YWlsZWQgYnJlYWtkb3duIGJ5IGVuZHBvaW50IElECkNvcnJlc3BvbmRzIHRvIGVzdGltYXRlRmVlQnlFaWQgaW4gUHJpY2VGZWVkLnNvbAAAABNlc3RpbWF0ZV9mZWVfYnlfZWlkAAAAAAQAAAAAAAAAB2ZlZV9saWIAAAAAEwAAAAAAAAAHZHN0X2VpZAAAAAAEAAAAAAAAAA1jYWxsZGF0YV9zaXplAAAAAAAABAAAAAAAAAADZ2FzAAAAAAoAAAABAAAH0AAAAAtGZWVFc3RpbWF0ZQAAAAAAAAAAIUdldCB0aGUgbmF0aXZlIHRva2VuIHByaWNlIGluIFVTRAAAAAAAABZuYXRpdmVfdG9rZW5fcHJpY2VfdXNkAAAAAAAAAAAAAQAAAAoAAAAAAAAAJEdldCB0aGUgcHJpY2UgZm9yIGEgZGVzdGluYXRpb24gRUlELgAAAAlnZXRfcHJpY2UAAAAAAAABAAAAAAAAAAdkc3RfZWlkAAAAAAQAAAABAAAD6AAAB9AAAAAFUHJpY2UAAAAAAAAAAAAAIEdldCB0aGUgcHJpY2UgcmF0aW8gZGVub21pbmF0b3IuAAAAG2dldF9wcmljZV9yYXRpb19kZW5vbWluYXRvcgAAAAAAAAAAAQAAAAoAAAAAAAAAAAAAAA1fX2NvbnN0cnVjdG9yAAAAAAAAAgAAAAAAAAAFb3duZXIAAAAAAAATAAAAAAAAAA1wcmljZV91cGRhdGVyAAAAAAAAEwAAAAAAAAAAAAAAlVRoZSB0eXBlIG9mIGRhdGEgcmVxdWlyZWQgZm9yIG1pZ3JhdGlvbi4KVXBncmFkZXMgdGhlIGNvbnRyYWN0IHRvIG5ldyBXQVNNIGJ5dGVjb2RlLgpTZXRzIGEgbWlncmF0aW9uIGZsYWcgdGhhdCBtdXN0IGJlIGNsZWFyZWQgYnkgY2FsbGluZyBgbWlncmF0ZWAuAAAAAAAAB3VwZ3JhZGUAAAAAAQAAAAAAAAANbmV3X3dhc21faGFzaAAAAAAAA+4AAAAgAAAAAAAAAAAAAAB2UnVucyBtaWdyYXRpb24gbG9naWMgYWZ0ZXIgYW4gdXBncmFkZS4KQ2FuIG9ubHkgYmUgY2FsbGVkIHdoZW4gdGhlIG1pZ3JhdGlvbiBmbGFnIGlzIHNldCBieSBhIHByZXZpb3VzIGB1cGdyYWRlYCBjYWxsLgAAAAAAB21pZ3JhdGUAAAAAAQAAAAAAAAAObWlncmF0aW9uX2RhdGEAAAAAAA4AAAAAAAAAAAAAAF5QZXJtYW5lbnRseSBmcmVlemVzIHRoZSBjb250cmFjdCwgcHJldmVudGluZyBhbnkgZnV0dXJlIHVwZ3JhZGVzLgpUaGlzIGFjdGlvbiBpcyBpcnJldmVyc2libGUuAAAAAAAGZnJlZXplAAAAAAAAAAAAAAAAAAAAAAA7UmV0dXJucyB3aGV0aGVyIHRoZSBjb250cmFjdCBpcyBmcm96ZW4gKHVwZ3JhZGVzIGRpc2FibGVkKS4AAAAACWlzX2Zyb3plbgAAAAAAAAAAAAABAAAAAQAAAAAAAAAAAAAACmF1dGhvcml6ZXIAAAAAAAAAAAABAAAAEwAAAAAAAAA+UmV0dXJucyB0aGUgY3VycmVudCBvd25lciBhZGRyZXNzLCBvciBOb25lIGlmIG5vIG93bmVyIGlzIHNldC4AAAAAAAVvd25lcgAAAAAAAAAAAAABAAAD6AAAABMAAAAAAAAAWVJldHVybnMgdGhlIHBlbmRpbmcgb3duZXIgYWRkcmVzcyBmb3IgMi1zdGVwIHRyYW5zZmVyLCBvciBOb25lIGlmIG5vIHRyYW5zZmVyIGlzIHBlbmRpbmcuAAAAAAAADXBlbmRpbmdfb3duZXIAAAAAAAAAAAAAAQAAA+gAAAATAAAAAAAAAStUcmFuc2ZlcnMgb3duZXJzaGlwIGltbWVkaWF0ZWx5IHRvIGEgbmV3IGFkZHJlc3MuCgpVc2Ugd2l0aCBjYXV0aW9uIC0gaWYgeW91IHRyYW5zZmVyIHRvIGEgd3JvbmcgYWRkcmVzcywgb3duZXJzaGlwIGlzIGxvc3QgZm9yZXZlci4KQ29uc2lkZXIgdXNpbmcgYHByb3Bvc2Vfb3duZXJzaGlwX3RyYW5zZmVyYCBpbnN0ZWFkLgoKIyBQYW5pY3MKLSBgT3duZXJOb3RTZXRgIGlmIG5vIG93bmVyIGlzIGN1cnJlbnRseSBzZXQKLSBgVHJhbnNmZXJJblByb2dyZXNzYCBpZiBhIDItc3RlcCB0cmFuc2ZlciBpcyBpbiBwcm9ncmVzcwAAAAASdHJhbnNmZXJfb3duZXJzaGlwAAAAAAABAAAAAAAAAAluZXdfb3duZXIAAAAAAAATAAAAAAAAAAAAAAJcUHJvcG9zZXMgYW4gb3duZXJzaGlwIHRyYW5zZmVyIHRvIGEgbmV3IGFkZHJlc3MuCgpUaGUgbmV3IG93bmVyIG11c3QgY2FsbCBgYWNjZXB0X293bmVyc2hpcCgpYCB3aXRoaW4gYHR0bGAgbGVkZ2Vycwp0byBjb21wbGV0ZSB0aGUgdHJhbnNmZXIuIFRoZSBwZW5kaW5nIHRyYW5zZmVyIHdpbGwgYXV0b21hdGljYWxseSBleHBpcmUgYWZ0ZXIuCgojIEFyZ3VtZW50cwotIGBuZXdfb3duZXJgIC0gVGhlIHByb3Bvc2VkIG5ldyBvd25lcgotIGB0dGxgIC0gTnVtYmVyIG9mIGxlZGdlcnMgdGhlIG5ldyBvd25lciBoYXMgdG8gYWNjZXB0LgpVc2UgYDBgIHRvIGNhbmNlbCBhIHBlbmRpbmcgdHJhbnNmZXIgKG5ld19vd25lciBtdXN0IG1hdGNoIHBlbmRpbmcpLgoKIyBQYW5pY3MKLSBgT3duZXJOb3RTZXRgIGlmIG5vIG93bmVyIGlzIGN1cnJlbnRseSBzZXQKLSBgTm9QZW5kaW5nVHJhbnNmZXJgIHdoZW4gY2FuY2VsbGluZyBhbmQgbm8gcGVuZGluZyB0cmFuc2ZlciBleGlzdHMKLSBgSW52YWxpZFR0bGAgaWYgdHRsIGV4Y2VlZHMgbWF4IFRUTAotIGBJbnZhbGlkUGVuZGluZ093bmVyYCB3aGVuIGNhbmNlbGxpbmcgd2l0aCB3cm9uZyBuZXdfb3duZXIgYWRkcmVzcwAAABpwcm9wb3NlX293bmVyc2hpcF90cmFuc2ZlcgAAAAAAAgAAAAAAAAAJbmV3X293bmVyAAAAAAAAEwAAAAAAAAADdHRsAAAAAAQAAAAAAAAAAAAAALlBY2NlcHRzIGEgcGVuZGluZyAyLXN0ZXAgb3duZXJzaGlwIHRyYW5zZmVyLgoKTXVzdCBiZSBjYWxsZWQgYnkgdGhlIHBlbmRpbmcgb3duZXIgYmVmb3JlIHRoZSBUVEwgZXhwaXJlcy4KCiMgUGFuaWNzCi0gYE5vUGVuZGluZ1RyYW5zZmVyYCBpZiB0aGVyZSBpcyBubyBwZW5kaW5nIHRyYW5zZmVyIChvciBpdCBleHBpcmVkKQAAAAAAABBhY2NlcHRfb3duZXJzaGlwAAAAAAAAAAAAAAAAAAAApFBlcm1hbmVudGx5IHJlbm91bmNlcyBvd25lcnNoaXAuCgojIFBhbmljcwotIGBPd25lck5vdFNldGAgaWYgbm8gb3duZXIgaXMgY3VycmVudGx5IHNldAotIGBUcmFuc2ZlckluUHJvZ3Jlc3NgIGlmIGEgMi1zdGVwIHRyYW5zZmVyIGlzIGluIHByb2dyZXNzIChjYW5jZWwgaXQgZmlyc3QpAAAAEnJlbm91bmNlX293bmVyc2hpcAAAAAAAAAAAAAAAAAAAAAAApUV4dGVuZHMgdGhlIGluc3RhbmNlIFRUTC4KCiMgQXJndW1lbnRzCgoqIGB0aHJlc2hvbGRgIC0gVGhlIHRocmVzaG9sZCB0byBleHRlbmQgdGhlIFRUTCAoaWYgY3VycmVudCBUVEwgaXMgYmVsb3cgdGhpcywgZXh0ZW5kKS4KKiBgZXh0ZW5kX3RvYCAtIFRoZSBUVEwgdG8gZXh0ZW5kIHRvLgAAAAAAABNleHRlbmRfaW5zdGFuY2VfdHRsAAAAAAIAAAAAAAAACXRocmVzaG9sZAAAAAAAAAQAAAAAAAAACWV4dGVuZF90bwAAAAAAAAQAAAAAAAAAAAAAAY9TZXRzIFRUTCBjb25maWdzIGZvciBpbnN0YW5jZSBhbmQgcGVyc2lzdGVudCBzdG9yYWdlLgoKLSBgTm9uZWAgdmFsdWVzIHJlbW92ZSB0aGUgY29ycmVzcG9uZGluZyBjb25maWcgKGRpc2FibGVzIGF1dG8tZXh0ZW5zaW9uIGZvciB0aGF0IHR5cGUpCi0gVmFsaWRhdGVzIHRoYXQgYHRocmVzaG9sZCA8PSBleHRlbmRfdG8gPD0gTUFYX1RUTGAKCiMgQXJndW1lbnRzCi0gYGluc3RhbmNlYCAtIFRUTCBjb25maWcgZm9yIGluc3RhbmNlIHN0b3JhZ2UKLSBgcGVyc2lzdGVudGAgLSBUVEwgY29uZmlnIGZvciBwZXJzaXN0ZW50IHN0b3JhZ2UKCiMgUGFuaWNzCi0gYFR0bENvbmZpZ0Zyb3plbmAgaWYgY29uZmlncyBhcmUgZnJvemVuCi0gYEludmFsaWRUdGxDb25maWdgIGlmIHZhbGlkYXRpb24gZmFpbHMAAAAAD3NldF90dGxfY29uZmlncwAAAAACAAAAAAAAAAhpbnN0YW5jZQAAA+gAAAfQAAAACVR0bENvbmZpZwAAAAAAAAAAAAAKcGVyc2lzdGVudAAAAAAD6AAAB9AAAAAJVHRsQ29uZmlnAAAAAAAAAAAAAAAAAABIUmV0dXJucyB0aGUgY3VycmVudCBUVEwgY29uZmlncyBhcyAoaW5zdGFuY2VfY29uZmlnLCBwZXJzaXN0ZW50X2NvbmZpZykuAAAAC3R0bF9jb25maWdzAAAAAAAAAAABAAAD7QAAAAIAAAPoAAAH0AAAAAlUdGxDb25maWcAAAAAAAPoAAAH0AAAAAlUdGxDb25maWcAAAAAAAAAAAAA4VBlcm1hbmVudGx5IGZyZWV6ZXMgVFRMIGNvbmZpZ3MsIHByZXZlbnRpbmcgYW55IGZ1dHVyZSBtb2RpZmljYXRpb25zLgoKVGhpcyBpcyBpcnJldmVyc2libGUgYW5kIHByb3ZpZGVzIGltbXV0YWJpbGl0eSBndWFyYW50ZWVzIHRvIHVzZXJzLgpFbWl0cyBgVHRsQ29uZmlnc0Zyb3plbmAgZXZlbnQuCgojIFBhbmljcwotIGBUdGxDb25maWdBbHJlYWR5RnJvemVuYCBpZiBhbHJlYWR5IGZyb3plbgAAAAAAABJmcmVlemVfdHRsX2NvbmZpZ3MAAAAAAAAAAAAAAAAAAAAAACdSZXR1cm5zIHdoZXRoZXIgVFRMIGNvbmZpZ3MgYXJlIGZyb3plbi4AAAAAFWlzX3R0bF9jb25maWdzX2Zyb3plbgAAAAAAAAAAAAABAAAAAQAAAAIAAAAAAAAAAAAAABBQcmljZUZlZWRTdG9yYWdlAAAABwAAAAAAAAAAAAAAFVByaWNlUmF0aW9EZW5vbWluYXRvcgAAAAAAAAEAAAAAAAAADFByaWNlVXBkYXRlcgAAAAEAAAATAAAAAQAAAAAAAAARRGVmYXVsdE1vZGVsUHJpY2UAAAAAAAABAAAABAAAAAAAAAAAAAAAEEFyYml0cnVtUHJpY2VFeHQAAAAAAAAAAAAAAA5OYXRpdmVQcmljZVVTRAAAAAAAAAAAAAAAAAAaQXJiaXRydW1Db21wcmVzc2lvblBlcmNlbnQAAAAAAAEAAAAAAAAADkVpZFRvTW9kZWxUeXBlAAAAAAABAAAABAAAAAEAAADhUGFyYW1ldGVycyBmb3IgRFZOIGZlZSBjYWxjdWxhdGlvbi4KCkNvbnRhaW5zIGFsbCBpbnB1dHMgbmVlZGVkIGJ5IHRoZSBmZWUgbGlicmFyeSB0byBjYWxjdWxhdGUgdmVyaWZpY2F0aW9uIGZlZXMKZm9yIGNyb3NzLWNoYWluIG1lc3NhZ2VzLiBJbmNsdWRlcyBtZXNzYWdlIHBhcmFtZXRlcnMsIGNvbW1vbiBjb25maWd1cmF0aW9uLAphbmQgZGVzdGluYXRpb24tc3BlY2lmaWMgc2V0dGluZ3MuAAAAAAAAAAAAAAxEdm5GZWVQYXJhbXMAAAAKAAAAJ051bWJlciBvZiBibG9jayBjb25maXJtYXRpb25zIHJlcXVpcmVkLgAAAAANY29uZmlybWF0aW9ucwAAAAAAAAYAAABMRGVmYXVsdCBmZWUgbXVsdGlwbGllciBpbiBiYXNpcyBwb2ludHMgKHVzZWQgaWYgbm8gZHN0LXNwZWNpZmljIG11bHRpcGxpZXIpLgAAABZkZWZhdWx0X211bHRpcGxpZXJfYnBzAAAAAAAEAAAAK0Rlc3RpbmF0aW9uIGVuZHBvaW50IElEIChjaGFpbiBpZGVudGlmaWVyKS4AAAAAB2RzdF9laWQAAAAABAAAACNNaW5pbXVtIGZlZSBtYXJnaW4gaW4gVVNEIChzY2FsZWQpLgAAAAAQZmxvb3JfbWFyZ2luX3VzZAAAAAoAAAEQPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KRGVzdGluYXRpb24tU3BlY2lmaWMgQ29uZmlndXJhdGlvbgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpHYXMgZXN0aW1hdGUgZm9yIHZlcmlmaWNhdGlvbiBvbiBkZXN0aW5hdGlvbiBjaGFpbi4AAAADZ2FzAAAAAAoAAABGRGVzdGluYXRpb24tc3BlY2lmaWMgZmVlIG11bHRpcGxpZXIgaW4gYmFzaXMgcG9pbnRzICgwID0gdXNlIGRlZmF1bHQpLgAAAAAADm11bHRpcGxpZXJfYnBzAAAAAAAEAAAAC0RWTiBvcHRpb25zAAAAAAdvcHRpb25zAAAAAA4AAAEQPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KQ29tbW9uIENvbmZpZ3VyYXRpb24KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUHJpY2UgZmVlZCBjb250cmFjdCBhZGRyZXNzIGZvciBnYXMgcHJpY2UgYW5kIGV4Y2hhbmdlIHJhdGUgZGF0YS4AAAAKcHJpY2VfZmVlZAAAAAAAEwAAACdOdW1iZXIgb2YgcmVxdWlyZWQgc2lnbmF0dXJlcyAocXVvcnVtKS4AAAAABnF1b3J1bQAAAAAABAAAAOU9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpNZXNzYWdlIFBhcmFtZXRlcnMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KVGhlIE9BcHAgc2VuZGVyIGFkZHJlc3MuAAAAAAAABnNlbmRlcgAAAAAAEwAAAAEAAADjUGFyYW1ldGVycyBmb3IgZXhlY3V0b3IgZmVlIGNhbGN1bGF0aW9uLgoKQ29udGFpbnMgYWxsIGlucHV0cyBuZWVkZWQgYnkgdGhlIGZlZSBsaWJyYXJ5IHRvIGNhbGN1bGF0ZSBleGVjdXRpb24gZmVlcwpmb3IgY3Jvc3MtY2hhaW4gbWVzc2FnZXMuIEluY2x1ZGVzIG1lc3NhZ2UgcGFyYW1ldGVycywgY29tbW9uIGNvbmZpZ3VyYXRpb24sCmFuZCBkZXN0aW5hdGlvbi1zcGVjaWZpYyBzZXR0aW5ncy4AAAAAAAAAAAlGZWVQYXJhbXMAAAAAAAALAAAAJlNpemUgb2YgdGhlIG1lc3NhZ2UgY2FsbGRhdGEgaW4gYnl0ZXMuAAAAAAANY2FsbGRhdGFfc2l6ZQAAAAAAAAQAAABMRGVmYXVsdCBmZWUgbXVsdGlwbGllciBpbiBiYXNpcyBwb2ludHMgKHVzZWQgaWYgbm8gZHN0LXNwZWNpZmljIG11bHRpcGxpZXIpLgAAABZkZWZhdWx0X211bHRpcGxpZXJfYnBzAAAAAAAEAAAAK0Rlc3RpbmF0aW9uIGVuZHBvaW50IElEIChjaGFpbiBpZGVudGlmaWVyKS4AAAAAB2RzdF9laWQAAAAABAAAACNNaW5pbXVtIGZlZSBtYXJnaW4gaW4gVVNEIChzY2FsZWQpLgAAAAAQZmxvb3JfbWFyZ2luX3VzZAAAAAoAAAA2QmFzZSBnYXMgZm9yIGVhY2ggbHpDb21wb3NlIGNhbGwgb24gZGVzdGluYXRpb24gY2hhaW4uAAAAAAATbHpfY29tcG9zZV9iYXNlX2dhcwAAAAAGAAABEz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CkRlc3RpbmF0aW9uLVNwZWNpZmljIENvbmZpZ3VyYXRpb24KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KQmFzZSBnYXMgZm9yIGx6UmVjZWl2ZSBleGVjdXRpb24gb24gZGVzdGluYXRpb24gY2hhaW4uAAAAABNsel9yZWNlaXZlX2Jhc2VfZ2FzAAAAAAYAAABGRGVzdGluYXRpb24tc3BlY2lmaWMgZmVlIG11bHRpcGxpZXIgaW4gYmFzaXMgcG9pbnRzICgwID0gdXNlIGRlZmF1bHQpLgAAAAAADm11bHRpcGxpZXJfYnBzAAAAAAAEAAAALE1heGltdW0gbmF0aXZlIHRva2VuIHZhbHVlIHRoYXQgY2FuIGJlIHNlbnQuAAAACm5hdGl2ZV9jYXAAAAAAAAoAAABGRW5jb2RlZCBleGVjdXRvciBvcHRpb25zIChselJlY2VpdmUgZ2FzLCBsekNvbXBvc2UsIG5hdGl2ZURyb3AsIGV0Yy4pLgAAAAAAB29wdGlvbnMAAAAADgAAARA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpDb21tb24gQ29uZmlndXJhdGlvbgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpQcmljZSBmZWVkIGNvbnRyYWN0IGFkZHJlc3MgZm9yIGdhcyBwcmljZSBhbmQgZXhjaGFuZ2UgcmF0ZSBkYXRhLgAAAApwcmljZV9mZWVkAAAAAAATAAAA5T09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ck1lc3NhZ2UgUGFyYW1ldGVycwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpUaGUgT0FwcCBzZW5kZXIgYWRkcmVzcy4AAAAAAAAGc2VuZGVyAAAAAAATAAAAAQAAAIRHYXMgcHJpY2UgaW5mb3JtYXRpb24gZm9yIGEgZGVzdGluYXRpb24gZW5kcG9pbnQuCgpDb250YWlucyB0aGUgZXhjaGFuZ2UgcmF0ZSBhbmQgZ2FzIGNvc3RzIG5lZWRlZCBmb3IgY3Jvc3MtY2hhaW4gZmVlIGNhbGN1bGF0aW9ucy4AAAAAAAAABVByaWNlAAAAAAAAAwAAADdHYXMgY29zdCBwZXIgYnl0ZSBvZiBjYWxsZGF0YSBvbiB0aGUgZGVzdGluYXRpb24gY2hhaW4uAAAAAAxnYXNfcGVyX2J5dGUAAAAEAAAAQkdhcyBwcmljZSBpbiB0aGUgc21hbGxlc3QgdW5pdCAod2VpIGZvciBFVk0sIHN0cm9vcHMgZm9yIFN0ZWxsYXIpLgAAAAAAEWdhc19wcmljZV9pbl91bml0AAAAAAAABgAAAKlQcmljZSByYXRpbyA9IChyZW1vdGUgbmF0aXZlIHRva2VuIHByaWNlIC8gbG9jYWwgbmF0aXZlIHRva2VuIHByaWNlKSAqIFBSSUNFX1JBVElPX0RFTk9NSU5BVE9SLgpVc2VkIHRvIGNvbnZlcnQgZGVzdGluYXRpb24gY2hhaW4gZ2FzIGNvc3RzIHRvIHNvdXJjZSBjaGFpbiBuYXRpdmUgdG9rZW4uAAAAAAAAC3ByaWNlX3JhdGlvAAAAAAoAAAABAAAAgEZlZSBlc3RpbWF0aW9uIHJlc3VsdCB3aXRoIGRldGFpbGVkIGJyZWFrZG93bi4KCkNvbnRhaW5zIHRoZSBjYWxjdWxhdGVkIGZlZSBhbmQgYWxsIGludGVybWVkaWF0ZSB2YWx1ZXMgdXNlZCBpbiB0aGUgY2FsY3VsYXRpb24uAAAAAAAAAAtGZWVFc3RpbWF0ZQAAAAAEAAAAMFNvdXJjZSBjaGFpbiBuYXRpdmUgdG9rZW4gcHJpY2UgaW4gVVNEIChzY2FsZWQpLgAAABBuYXRpdmVfcHJpY2VfdXNkAAAACgAAACVQcmljZSByYXRpbyB1c2VkIGZvciB0aGUgY2FsY3VsYXRpb24uAAAAAAAAC3ByaWNlX3JhdGlvAAAAAAoAAAAyRGVub21pbmF0b3IgZm9yIHRoZSBwcmljZSByYXRpbyAodHlwaWNhbGx5IDEwXjIwKS4AAAAAABdwcmljZV9yYXRpb19kZW5vbWluYXRvcgAAAAAKAAAAMVRvdGFsIGdhcyBmZWUgaW4gc291cmNlIGNoYWluIG5hdGl2ZSB0b2tlbiB1bml0cy4AAAAAAAANdG90YWxfZ2FzX2ZlZQAAAAAAAAsAAAAEAAAAHEJ1ZmZlclJlYWRlckVycm9yOiAxMDAwLTEwMDkAAAAAAAAAEUJ1ZmZlclJlYWRlckVycm9yAAAAAAAAAgAAAAAAAAANSW52YWxpZExlbmd0aAAAAAAAA+gAAAAAAAAAFUludmFsaWRBZGRyZXNzUGF5bG9hZAAAAAAAA+kAAAAEAAAAHEJ1ZmZlcldyaXRlckVycm9yOiAxMDEwLTEwMTkAAAAAAAAAEUJ1ZmZlcldyaXRlckVycm9yAAAAAAAAAQAAAAAAAAAVSW52YWxpZEFkZHJlc3NQYXlsb2FkAAAAAAAD8gAAAAQAAAAfVHRsQ29uZmlndXJhYmxlRXJyb3I6IDEwMjAtMTAyOQAAAAAAAAAAFFR0bENvbmZpZ3VyYWJsZUVycm9yAAAAAwAAAAAAAAAQSW52YWxpZFR0bENvbmZpZwAAA/wAAAAAAAAAD1R0bENvbmZpZ0Zyb3plbgAAAAP9AAAAAAAAABZUdGxDb25maWdBbHJlYWR5RnJvemVuAAAAAAP+AAAABAAAABdPd25hYmxlRXJyb3I6IDEwMzAtMTAzOQAAAAAAAAAADE93bmFibGVFcnJvcgAAAAYAAAAAAAAAE0ludmFsaWRQZW5kaW5nT3duZXIAAAAEBgAAAAAAAAAKSW52YWxpZFR0bAAAAAAEBwAAAAAAAAARTm9QZW5kaW5nVHJhbnNmZXIAAAAAAAQIAAAAAAAAAA9Pd25lckFscmVhZHlTZXQAAAAECQAAAAAAAAALT3duZXJOb3RTZXQAAAAECgAAAAAAAAASVHJhbnNmZXJJblByb2dyZXNzAAAAAAQLAAAABAAAABhCeXRlc0V4dEVycm9yOiAxMDQwLTEwNDkAAAAAAAAADUJ5dGVzRXh0RXJyb3IAAAAAAAABAAAAAAAAAA5MZW5ndGhNaXNtYXRjaAAAAAAEEAAAAAQAAAAbVXBncmFkZWFibGVFcnJvcjogMTA1MC0xMDU5AAAAAAAAAAAQVXBncmFkZWFibGVFcnJvcgAAAAMAAAAAAAAAFEludmFsaWRNaWdyYXRpb25EYXRhAAAEGgAAAAAAAAATTWlncmF0aW9uTm90QWxsb3dlZAAAAAQbAAAAAAAAAA5VcGdyYWRlc0Zyb3plbgAAAAAEHAAAAAQAAAAYTXVsdGlzaWdFcnJvcjogMTA2MC0xMDY5AAAAAAAAAA1NdWx0aXNpZ0Vycm9yAAAAAAAACAAAAAAAAAASQWxyZWFkeUluaXRpYWxpemVkAAAAAAQkAAAAAAAAAA1JbnZhbGlkU2lnbmVyAAAAAAAEJQAAAAAAAAAOU2lnbmF0dXJlRXJyb3IAAAAABCYAAAAAAAAAE1NpZ25lckFscmVhZHlFeGlzdHMAAAAEJwAAAAAAAAAOU2lnbmVyTm90Rm91bmQAAAAABCgAAAAAAAAAHVRvdGFsU2lnbmVyc0xlc3NUaGFuVGhyZXNob2xkAAAAAAAEKQAAAAAAAAAPVW5zb3J0ZWRTaWduZXJzAAAABCoAAAAAAAAADVplcm9UaHJlc2hvbGQAAAAAAAQrAAAABQAAADBFdmVudCBlbWl0dGVkIHdoZW4gYSBzaWduZXIgaXMgYWRkZWQgb3IgcmVtb3ZlZC4AAAAAAAAACVNpZ25lclNldAAAAAAAAAEAAAAKc2lnbmVyX3NldAAAAAAAAgAAAAAAAAAGc2lnbmVyAAAAAAPuAAAAFAAAAAEAAAAAAAAABmFjdGl2ZQAAAAAAAQAAAAAAAAACAAAABQAAADZFdmVudCBlbWl0dGVkIHdoZW4gdGhlIHNpZ25hdHVyZSB0aHJlc2hvbGQgaXMgY2hhbmdlZC4AAAAAAAAAAAAMVGhyZXNob2xkU2V0AAAAAQAAAA10aHJlc2hvbGRfc2V0AAAAAAAAAQAAAAAAAAAJdGhyZXNob2xkAAAAAAAABAAAAAAAAAACAAAAAgAAAAAAAAAAAAAAD011bHRpc2lnU3RvcmFnZQAAAAACAAAAAAAAAAAAAAAHU2lnbmVycwAAAAAAAAAAAAAAAAlUaHJlc2hvbGQAAAAAAAAFAAAAV0V2ZW50IGVtaXR0ZWQgd2hlbiBvd25lcnNoaXAgaXMgdHJhbnNmZXJyZWQgKGJvdGggc2luZ2xlLXN0ZXAgYW5kIHR3by1zdGVwIGNvbXBsZXRpb24pLgAAAAAAAAAAFE93bmVyc2hpcFRyYW5zZmVycmVkAAAAAQAAABVvd25lcnNoaXBfdHJhbnNmZXJyZWQAAAAAAAACAAAAAAAAAAlvbGRfb3duZXIAAAAAAAATAAAAAAAAAAAAAAAJbmV3X293bmVyAAAAAAAAEwAAAAAAAAACAAAABQAAADtFdmVudCBlbWl0dGVkIHdoZW4gYSAyLXN0ZXAgb3duZXJzaGlwIHRyYW5zZmVyIGlzIHByb3Bvc2VkLgAAAAAAAAAAFU93bmVyc2hpcFRyYW5zZmVycmluZwAAAAAAAAEAAAAWb3duZXJzaGlwX3RyYW5zZmVycmluZwAAAAAAAwAAAAAAAAAJb2xkX293bmVyAAAAAAAAEwAAAAAAAAAAAAAACW5ld19vd25lcgAAAAAAABMAAAAAAAAAAAAAAAN0dGwAAAAABAAAAAAAAAACAAAABQAAACpFdmVudCBlbWl0dGVkIHdoZW4gb3duZXJzaGlwIGlzIHJlbm91bmNlZC4AAAAAAAAAAAAST3duZXJzaGlwUmVub3VuY2VkAAAAAAABAAAAE293bmVyc2hpcF9yZW5vdW5jZWQAAAAAAQAAAAAAAAAJb2xkX293bmVyAAAAAAAAEwAAAAAAAAACAAAAAgAAAAAAAAAAAAAADk93bmFibGVTdG9yYWdlAAAAAAACAAAAAAAAAAAAAAAFT3duZXIAAAAAAAAAAAAAAAAAAAxQZW5kaW5nT3duZXIAAAABAAAASVRUTCBjb25maWd1cmF0aW9uOiB0aHJlc2hvbGQgKHdoZW4gdG8gZXh0ZW5kKSBhbmQgZXh0ZW5kX3RvICh0YXJnZXQgVFRMKS4AAAAAAAAAAAAACVR0bENvbmZpZwAAAAAAAAIAAAAoVGFyZ2V0IFRUTCBhZnRlciBleHRlbnNpb24gKGluIGxlZGdlcnMpLgAAAAlleHRlbmRfdG8AAAAAAAAEAAAAM1RUTCB0aHJlc2hvbGQgdGhhdCB0cmlnZ2VycyBleHRlbnNpb24gKGluIGxlZGdlcnMpLgAAAAAJdGhyZXNob2xkAAAAAAAABAAAAAUAAAAnRXZlbnQgZW1pdHRlZCB3aGVuIFRUTCBjb25maWdzIGFyZSBzZXQuAAAAAAAAAAANVHRsQ29uZmlnc1NldAAAAAAAAAEAAAAPdHRsX2NvbmZpZ3Nfc2V0AAAAAAIAAAAAAAAACGluc3RhbmNlAAAD6AAAB9AAAAAJVHRsQ29uZmlnAAAAAAAAAAAAAAAAAAAKcGVyc2lzdGVudAAAAAAD6AAAB9AAAAAJVHRsQ29uZmlnAAAAAAAAAAAAAAIAAAAFAAAAKkV2ZW50IGVtaXR0ZWQgd2hlbiBUVEwgY29uZmlncyBhcmUgZnJvemVuLgAAAAAAAAAAABBUdGxDb25maWdzRnJvemVuAAAAAQAAABJ0dGxfY29uZmlnc19mcm96ZW4AAAAAAAAAAAACAAAAAgAAAAAAAAAAAAAAEFR0bENvbmZpZ1N0b3JhZ2UAAAADAAAAAAAAAAAAAAAGRnJvemVuAAAAAAAAAAAAAAAAAAhJbnN0YW5jZQAAAAAAAAAAAAAAClBlcnNpc3RlbnQAAAAAAAIAAAAAAAAAAAAAABJVcGdyYWRlYWJsZVN0b3JhZ2UAAAAAAAIAAAAAAAAAAAAAAAZGcm96ZW4AAAAAAAAAAAAAAAAACU1pZ3JhdGluZwAAAACLAQ5jb250cmFjdG1ldGF2MAAAAAAAAAAGYmludmVyAAAAAAAFMC4wLjEAAAAAAAAAAAAABXJzdmVyAAAAAAAABjEuOTAuMAAAAAAAAAAAAAhyc3Nka3ZlcgAAAC8yNS4wLjEjOTQxNDQ4MDc5ZWNjZjk1NjI3ZDJmZmVhMTNiYTI2OGUzMDVhOTA3NwAAHhFjb250cmFjdGVudm1ldGF2MAAAAAAAAAAZAAAAAABTDmNvbnRyYWN0bWV0YXYwAAAAAAAAAAZjbGl2ZXIAAAAAAC8yNS4wLjAjYTY0OTI1ZTkzOTFjM2QzYjNlZjhlNTNkYzYwYzIzZGI5ZTZhODJlNAA=";
12
12
  /**
13
13
  * Pre-computed WASM hash (SHA-256)
14
14
  * Use this when the WASM is already uploaded on-chain
15
15
  */
16
- export declare const WASM_HASH = "c745d00ca5ca4d2a880fb240dd5bba420626671986b02889d06070506b127fc0";
16
+ export declare const WASM_HASH = "dcf39d3b282fd9dc1b9b499e6d4a1833ad63ebcbaeac3611bb465f9e05abba24";
17
17
  /**
18
18
  * Get the WASM bytecode as a Buffer
19
19
  * Use this to upload the WASM to the network
20
20
  */
21
21
  export declare function getWasmBuffer(): Buffer;
22
- export type PriceFeedStorage = {
23
- tag: "PriceRatioDenominator";
24
- values: void;
25
- } | {
26
- tag: "PriceUpdater";
27
- values: readonly [string];
28
- } | {
29
- tag: "DefaultModelPrice";
30
- values: readonly [u32];
31
- } | {
32
- tag: "ArbitrumPriceExt";
33
- values: void;
34
- } | {
35
- tag: "NativePriceUSD";
36
- values: void;
37
- } | {
38
- tag: "ArbitrumCompressionPercent";
39
- values: void;
40
- } | {
41
- tag: "EidToModelType";
42
- values: readonly [u32];
43
- };
44
22
  export declare const PriceFeedError: {
45
23
  1: {
46
24
  message: string;
@@ -122,6 +100,28 @@ export interface SetEidToModelTypeParam {
122
100
  */
123
101
  model_type: ModelType;
124
102
  }
103
+ export type PriceFeedStorage = {
104
+ tag: "PriceRatioDenominator";
105
+ values: void;
106
+ } | {
107
+ tag: "PriceUpdater";
108
+ values: readonly [string];
109
+ } | {
110
+ tag: "DefaultModelPrice";
111
+ values: readonly [u32];
112
+ } | {
113
+ tag: "ArbitrumPriceExt";
114
+ values: void;
115
+ } | {
116
+ tag: "NativePriceUSD";
117
+ values: void;
118
+ } | {
119
+ tag: "ArbitrumCompressionPercent";
120
+ values: void;
121
+ } | {
122
+ tag: "EidToModelType";
123
+ values: readonly [u32];
124
+ };
125
125
  /**
126
126
  * Parameters for DVN fee calculation.
127
127
  *
@@ -437,103 +437,6 @@ export type UpgradeableStorage = {
437
437
  values: void;
438
438
  };
439
439
  export interface Client {
440
- /**
441
- * Construct and simulate a authorizer transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
442
- */
443
- authorizer: (txnOptions?: {
444
- /**
445
- * The fee to pay for the transaction. Default: BASE_FEE
446
- */
447
- fee?: number;
448
- /**
449
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
450
- */
451
- timeoutInSeconds?: number;
452
- /**
453
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
454
- */
455
- simulate?: boolean;
456
- }) => Promise<AssembledTransaction<string>>;
457
- /**
458
- * Construct and simulate a estimate_fee_by_eid transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
459
- * Estimate fee with detailed breakdown by endpoint ID
460
- * Corresponds to estimateFeeByEid in PriceFeed.sol
461
- */
462
- estimate_fee_by_eid: ({ fee_lib, dst_eid, calldata_size, gas }: {
463
- fee_lib: string;
464
- dst_eid: u32;
465
- calldata_size: u32;
466
- gas: u128;
467
- }, txnOptions?: {
468
- /**
469
- * The fee to pay for the transaction. Default: BASE_FEE
470
- */
471
- fee?: number;
472
- /**
473
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
474
- */
475
- timeoutInSeconds?: number;
476
- /**
477
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
478
- */
479
- simulate?: boolean;
480
- }) => Promise<AssembledTransaction<FeeEstimate>>;
481
- /**
482
- * Construct and simulate a native_token_price_usd transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
483
- * Get the native token price in USD
484
- */
485
- native_token_price_usd: (txnOptions?: {
486
- /**
487
- * The fee to pay for the transaction. Default: BASE_FEE
488
- */
489
- fee?: number;
490
- /**
491
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
492
- */
493
- timeoutInSeconds?: number;
494
- /**
495
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
496
- */
497
- simulate?: boolean;
498
- }) => Promise<AssembledTransaction<u128>>;
499
- /**
500
- * Construct and simulate a get_price transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
501
- * Get the price for a destination EID.
502
- */
503
- get_price: ({ dst_eid }: {
504
- dst_eid: u32;
505
- }, txnOptions?: {
506
- /**
507
- * The fee to pay for the transaction. Default: BASE_FEE
508
- */
509
- fee?: number;
510
- /**
511
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
512
- */
513
- timeoutInSeconds?: number;
514
- /**
515
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
516
- */
517
- simulate?: boolean;
518
- }) => Promise<AssembledTransaction<Option<Price>>>;
519
- /**
520
- * Construct and simulate a get_price_ratio_denominator transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
521
- * Get the price ratio denominator.
522
- */
523
- get_price_ratio_denominator: (txnOptions?: {
524
- /**
525
- * The fee to pay for the transaction. Default: BASE_FEE
526
- */
527
- fee?: number;
528
- /**
529
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
530
- */
531
- timeoutInSeconds?: number;
532
- /**
533
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
534
- */
535
- simulate?: boolean;
536
- }) => Promise<AssembledTransaction<u128>>;
537
440
  /**
538
441
  * Construct and simulate a set_price_updater transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
539
442
  * Set price updater status (owner only)
@@ -758,23 +661,93 @@ export interface Client {
758
661
  simulate?: boolean;
759
662
  }) => Promise<AssembledTransaction<ModelType>>;
760
663
  /**
761
- * Construct and simulate a set_ttl_configs transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
762
- * Sets TTL configs for instance and persistent storage.
763
- *
764
- * - `None` values remove the corresponding config (disables auto-extension for that type)
765
- * - Validates that `threshold <= extend_to <= MAX_TTL`
766
- *
767
- * # Arguments
768
- * - `instance` - TTL config for instance storage
769
- * - `persistent` - TTL config for persistent storage
770
- *
771
- * # Panics
772
- * - `TtlConfigFrozen` if configs are frozen
773
- * - `InvalidTtlConfig` if validation fails
664
+ * Construct and simulate a estimate_fee_by_eid transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
665
+ * Estimate fee with detailed breakdown by endpoint ID
666
+ * Corresponds to estimateFeeByEid in PriceFeed.sol
774
667
  */
775
- set_ttl_configs: ({ instance, persistent }: {
776
- instance: Option<TtlConfig>;
777
- persistent: Option<TtlConfig>;
668
+ estimate_fee_by_eid: ({ fee_lib, dst_eid, calldata_size, gas }: {
669
+ fee_lib: string;
670
+ dst_eid: u32;
671
+ calldata_size: u32;
672
+ gas: u128;
673
+ }, txnOptions?: {
674
+ /**
675
+ * The fee to pay for the transaction. Default: BASE_FEE
676
+ */
677
+ fee?: number;
678
+ /**
679
+ * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
680
+ */
681
+ timeoutInSeconds?: number;
682
+ /**
683
+ * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
684
+ */
685
+ simulate?: boolean;
686
+ }) => Promise<AssembledTransaction<FeeEstimate>>;
687
+ /**
688
+ * Construct and simulate a native_token_price_usd transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
689
+ * Get the native token price in USD
690
+ */
691
+ native_token_price_usd: (txnOptions?: {
692
+ /**
693
+ * The fee to pay for the transaction. Default: BASE_FEE
694
+ */
695
+ fee?: number;
696
+ /**
697
+ * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
698
+ */
699
+ timeoutInSeconds?: number;
700
+ /**
701
+ * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
702
+ */
703
+ simulate?: boolean;
704
+ }) => Promise<AssembledTransaction<u128>>;
705
+ /**
706
+ * Construct and simulate a get_price transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
707
+ * Get the price for a destination EID.
708
+ */
709
+ get_price: ({ dst_eid }: {
710
+ dst_eid: u32;
711
+ }, txnOptions?: {
712
+ /**
713
+ * The fee to pay for the transaction. Default: BASE_FEE
714
+ */
715
+ fee?: number;
716
+ /**
717
+ * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
718
+ */
719
+ timeoutInSeconds?: number;
720
+ /**
721
+ * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
722
+ */
723
+ simulate?: boolean;
724
+ }) => Promise<AssembledTransaction<Option<Price>>>;
725
+ /**
726
+ * Construct and simulate a get_price_ratio_denominator transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
727
+ * Get the price ratio denominator.
728
+ */
729
+ get_price_ratio_denominator: (txnOptions?: {
730
+ /**
731
+ * The fee to pay for the transaction. Default: BASE_FEE
732
+ */
733
+ fee?: number;
734
+ /**
735
+ * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
736
+ */
737
+ timeoutInSeconds?: number;
738
+ /**
739
+ * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
740
+ */
741
+ simulate?: boolean;
742
+ }) => Promise<AssembledTransaction<u128>>;
743
+ /**
744
+ * Construct and simulate a upgrade transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
745
+ * The type of data required for migration.
746
+ * Upgrades the contract to new WASM bytecode.
747
+ * Sets a migration flag that must be cleared by calling `migrate`.
748
+ */
749
+ upgrade: ({ new_wasm_hash }: {
750
+ new_wasm_hash: Buffer;
778
751
  }, txnOptions?: {
779
752
  /**
780
753
  * The fee to pay for the transaction. Default: BASE_FEE
@@ -790,10 +763,13 @@ export interface Client {
790
763
  simulate?: boolean;
791
764
  }) => Promise<AssembledTransaction<null>>;
792
765
  /**
793
- * Construct and simulate a ttl_configs transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
794
- * Returns the current TTL configs as (instance_config, persistent_config).
766
+ * Construct and simulate a migrate transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
767
+ * Runs migration logic after an upgrade.
768
+ * Can only be called when the migration flag is set by a previous `upgrade` call.
795
769
  */
796
- ttl_configs: (txnOptions?: {
770
+ migrate: ({ migration_data }: {
771
+ migration_data: Buffer;
772
+ }, txnOptions?: {
797
773
  /**
798
774
  * The fee to pay for the transaction. Default: BASE_FEE
799
775
  */
@@ -806,18 +782,13 @@ export interface Client {
806
782
  * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
807
783
  */
808
784
  simulate?: boolean;
809
- }) => Promise<AssembledTransaction<readonly [Option<TtlConfig>, Option<TtlConfig>]>>;
785
+ }) => Promise<AssembledTransaction<null>>;
810
786
  /**
811
- * Construct and simulate a freeze_ttl_configs transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
812
- * Permanently freezes TTL configs, preventing any future modifications.
813
- *
814
- * This is irreversible and provides immutability guarantees to users.
815
- * Emits `TtlConfigsFrozen` event.
816
- *
817
- * # Panics
818
- * - `TtlConfigAlreadyFrozen` if already frozen
787
+ * Construct and simulate a freeze transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
788
+ * Permanently freezes the contract, preventing any future upgrades.
789
+ * This action is irreversible.
819
790
  */
820
- freeze_ttl_configs: (txnOptions?: {
791
+ freeze: (txnOptions?: {
821
792
  /**
822
793
  * The fee to pay for the transaction. Default: BASE_FEE
823
794
  */
@@ -832,10 +803,10 @@ export interface Client {
832
803
  simulate?: boolean;
833
804
  }) => Promise<AssembledTransaction<null>>;
834
805
  /**
835
- * Construct and simulate a is_ttl_configs_frozen transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
836
- * Returns whether TTL configs are frozen.
806
+ * Construct and simulate a is_frozen transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
807
+ * Returns whether the contract is frozen (upgrades disabled).
837
808
  */
838
- is_ttl_configs_frozen: (txnOptions?: {
809
+ is_frozen: (txnOptions?: {
839
810
  /**
840
811
  * The fee to pay for the transaction. Default: BASE_FEE
841
812
  */
@@ -850,18 +821,9 @@ export interface Client {
850
821
  simulate?: boolean;
851
822
  }) => Promise<AssembledTransaction<boolean>>;
852
823
  /**
853
- * Construct and simulate a extend_instance_ttl transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
854
- * Extends the instance TTL.
855
- *
856
- * # Arguments
857
- *
858
- * * `threshold` - The threshold to extend the TTL (if current TTL is below this, extend).
859
- * * `extend_to` - The TTL to extend to.
824
+ * Construct and simulate a authorizer transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
860
825
  */
861
- extend_instance_ttl: ({ threshold, extend_to }: {
862
- threshold: u32;
863
- extend_to: u32;
864
- }, txnOptions?: {
826
+ authorizer: (txnOptions?: {
865
827
  /**
866
828
  * The fee to pay for the transaction. Default: BASE_FEE
867
829
  */
@@ -874,7 +836,7 @@ export interface Client {
874
836
  * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
875
837
  */
876
838
  simulate?: boolean;
877
- }) => Promise<AssembledTransaction<null>>;
839
+ }) => Promise<AssembledTransaction<string>>;
878
840
  /**
879
841
  * Construct and simulate a owner transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
880
842
  * Returns the current owner address, or None if no owner is set.
@@ -1019,13 +981,17 @@ export interface Client {
1019
981
  simulate?: boolean;
1020
982
  }) => Promise<AssembledTransaction<null>>;
1021
983
  /**
1022
- * Construct and simulate a upgrade transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
1023
- * The type of data required for migration.
1024
- * Upgrades the contract to new WASM bytecode.
1025
- * Sets a migration flag that must be cleared by calling `migrate`.
984
+ * Construct and simulate a extend_instance_ttl transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
985
+ * Extends the instance TTL.
986
+ *
987
+ * # Arguments
988
+ *
989
+ * * `threshold` - The threshold to extend the TTL (if current TTL is below this, extend).
990
+ * * `extend_to` - The TTL to extend to.
1026
991
  */
1027
- upgrade: ({ new_wasm_hash }: {
1028
- new_wasm_hash: Buffer;
992
+ extend_instance_ttl: ({ threshold, extend_to }: {
993
+ threshold: u32;
994
+ extend_to: u32;
1029
995
  }, txnOptions?: {
1030
996
  /**
1031
997
  * The fee to pay for the transaction. Default: BASE_FEE
@@ -1041,12 +1007,23 @@ export interface Client {
1041
1007
  simulate?: boolean;
1042
1008
  }) => Promise<AssembledTransaction<null>>;
1043
1009
  /**
1044
- * Construct and simulate a migrate transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
1045
- * Runs migration logic after an upgrade.
1046
- * Can only be called when the migration flag is set by a previous `upgrade` call.
1010
+ * Construct and simulate a set_ttl_configs transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
1011
+ * Sets TTL configs for instance and persistent storage.
1012
+ *
1013
+ * - `None` values remove the corresponding config (disables auto-extension for that type)
1014
+ * - Validates that `threshold <= extend_to <= MAX_TTL`
1015
+ *
1016
+ * # Arguments
1017
+ * - `instance` - TTL config for instance storage
1018
+ * - `persistent` - TTL config for persistent storage
1019
+ *
1020
+ * # Panics
1021
+ * - `TtlConfigFrozen` if configs are frozen
1022
+ * - `InvalidTtlConfig` if validation fails
1047
1023
  */
1048
- migrate: ({ migration_data }: {
1049
- migration_data: Buffer;
1024
+ set_ttl_configs: ({ instance, persistent }: {
1025
+ instance: Option<TtlConfig>;
1026
+ persistent: Option<TtlConfig>;
1050
1027
  }, txnOptions?: {
1051
1028
  /**
1052
1029
  * The fee to pay for the transaction. Default: BASE_FEE
@@ -1062,11 +1039,34 @@ export interface Client {
1062
1039
  simulate?: boolean;
1063
1040
  }) => Promise<AssembledTransaction<null>>;
1064
1041
  /**
1065
- * Construct and simulate a freeze transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
1066
- * Permanently freezes the contract, preventing any future upgrades.
1067
- * This action is irreversible.
1042
+ * Construct and simulate a ttl_configs transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
1043
+ * Returns the current TTL configs as (instance_config, persistent_config).
1068
1044
  */
1069
- freeze: (txnOptions?: {
1045
+ ttl_configs: (txnOptions?: {
1046
+ /**
1047
+ * The fee to pay for the transaction. Default: BASE_FEE
1048
+ */
1049
+ fee?: number;
1050
+ /**
1051
+ * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1052
+ */
1053
+ timeoutInSeconds?: number;
1054
+ /**
1055
+ * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1056
+ */
1057
+ simulate?: boolean;
1058
+ }) => Promise<AssembledTransaction<readonly [Option<TtlConfig>, Option<TtlConfig>]>>;
1059
+ /**
1060
+ * Construct and simulate a freeze_ttl_configs transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
1061
+ * Permanently freezes TTL configs, preventing any future modifications.
1062
+ *
1063
+ * This is irreversible and provides immutability guarantees to users.
1064
+ * Emits `TtlConfigsFrozen` event.
1065
+ *
1066
+ * # Panics
1067
+ * - `TtlConfigAlreadyFrozen` if already frozen
1068
+ */
1069
+ freeze_ttl_configs: (txnOptions?: {
1070
1070
  /**
1071
1071
  * The fee to pay for the transaction. Default: BASE_FEE
1072
1072
  */
@@ -1081,10 +1081,10 @@ export interface Client {
1081
1081
  simulate?: boolean;
1082
1082
  }) => Promise<AssembledTransaction<null>>;
1083
1083
  /**
1084
- * Construct and simulate a is_frozen transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
1085
- * Returns whether the contract is frozen (upgrades disabled).
1084
+ * Construct and simulate a is_ttl_configs_frozen transaction. Returns an `AssembledTransaction` object which will have a `result` field containing the result of the simulation. If this transaction changes contract state, you will need to call `signAndSend()` on the returned object.
1085
+ * Returns whether TTL configs are frozen.
1086
1086
  */
1087
- is_frozen: (txnOptions?: {
1087
+ is_ttl_configs_frozen: (txnOptions?: {
1088
1088
  /**
1089
1089
  * The fee to pay for the transaction. Default: BASE_FEE
1090
1090
  */
@@ -1118,11 +1118,6 @@ export declare class Client extends ContractClient {
1118
1118
  }): Promise<AssembledTransaction<T>>;
1119
1119
  constructor(options: ContractClientOptions);
1120
1120
  readonly fromJSON: {
1121
- authorizer: (json: string) => AssembledTransaction<string>;
1122
- estimate_fee_by_eid: (json: string) => AssembledTransaction<FeeEstimate>;
1123
- native_token_price_usd: (json: string) => AssembledTransaction<bigint>;
1124
- get_price: (json: string) => AssembledTransaction<Option<Price>>;
1125
- get_price_ratio_denominator: (json: string) => AssembledTransaction<bigint>;
1126
1121
  set_price_updater: (json: string) => AssembledTransaction<null>;
1127
1122
  set_price_ratio_denominator: (json: string) => AssembledTransaction<null>;
1128
1123
  set_arbitrum_compression_percent: (json: string) => AssembledTransaction<null>;
@@ -1134,20 +1129,25 @@ export declare class Client extends ContractClient {
1134
1129
  arbitrum_compression_percent: (json: string) => AssembledTransaction<bigint>;
1135
1130
  arbitrum_price_ext: (json: string) => AssembledTransaction<ArbitrumPriceExt>;
1136
1131
  eid_to_model_type: (json: string) => AssembledTransaction<ModelType>;
1137
- set_ttl_configs: (json: string) => AssembledTransaction<null>;
1138
- ttl_configs: (json: string) => AssembledTransaction<readonly [Option<TtlConfig>, Option<TtlConfig>]>;
1139
- freeze_ttl_configs: (json: string) => AssembledTransaction<null>;
1140
- is_ttl_configs_frozen: (json: string) => AssembledTransaction<boolean>;
1141
- extend_instance_ttl: (json: string) => AssembledTransaction<null>;
1132
+ estimate_fee_by_eid: (json: string) => AssembledTransaction<FeeEstimate>;
1133
+ native_token_price_usd: (json: string) => AssembledTransaction<bigint>;
1134
+ get_price: (json: string) => AssembledTransaction<Option<Price>>;
1135
+ get_price_ratio_denominator: (json: string) => AssembledTransaction<bigint>;
1136
+ upgrade: (json: string) => AssembledTransaction<null>;
1137
+ migrate: (json: string) => AssembledTransaction<null>;
1138
+ freeze: (json: string) => AssembledTransaction<null>;
1139
+ is_frozen: (json: string) => AssembledTransaction<boolean>;
1140
+ authorizer: (json: string) => AssembledTransaction<string>;
1142
1141
  owner: (json: string) => AssembledTransaction<Option<string>>;
1143
1142
  pending_owner: (json: string) => AssembledTransaction<Option<string>>;
1144
1143
  transfer_ownership: (json: string) => AssembledTransaction<null>;
1145
1144
  propose_ownership_transfer: (json: string) => AssembledTransaction<null>;
1146
1145
  accept_ownership: (json: string) => AssembledTransaction<null>;
1147
1146
  renounce_ownership: (json: string) => AssembledTransaction<null>;
1148
- upgrade: (json: string) => AssembledTransaction<null>;
1149
- migrate: (json: string) => AssembledTransaction<null>;
1150
- freeze: (json: string) => AssembledTransaction<null>;
1151
- is_frozen: (json: string) => AssembledTransaction<boolean>;
1147
+ extend_instance_ttl: (json: string) => AssembledTransaction<null>;
1148
+ set_ttl_configs: (json: string) => AssembledTransaction<null>;
1149
+ ttl_configs: (json: string) => AssembledTransaction<readonly [Option<TtlConfig>, Option<TtlConfig>]>;
1150
+ freeze_ttl_configs: (json: string) => AssembledTransaction<null>;
1151
+ is_ttl_configs_frozen: (json: string) => AssembledTransaction<boolean>;
1152
1152
  };
1153
1153
  }