@layerzerolabs/lz-v2-stellar-sdk 0.2.21 → 0.2.23

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 (54) hide show
  1. package/.turbo/turbo-test.log +662 -466
  2. package/LICENSE +23 -0
  3. package/dist/generated/bml.d.ts +101 -106
  4. package/dist/generated/bml.js +108 -26
  5. package/dist/generated/counter.d.ts +123 -484
  6. package/dist/generated/counter.js +103 -25
  7. package/dist/generated/dvn.d.ts +141 -699
  8. package/dist/generated/dvn.js +106 -28
  9. package/dist/generated/dvn_fee_lib.d.ts +31 -248
  10. package/dist/generated/dvn_fee_lib.js +27 -24
  11. package/dist/generated/endpoint.d.ts +158 -836
  12. package/dist/generated/endpoint.js +107 -29
  13. package/dist/generated/executor.d.ts +139 -671
  14. package/dist/generated/executor.js +106 -28
  15. package/dist/generated/executor_fee_lib.d.ts +109 -264
  16. package/dist/generated/executor_fee_lib.js +106 -28
  17. package/dist/generated/executor_helper.d.ts +95 -92
  18. package/dist/generated/executor_helper.js +103 -25
  19. package/dist/generated/layerzero_view.d.ts +178 -335
  20. package/dist/generated/layerzero_view.js +172 -33
  21. package/dist/generated/oft.d.ts +137 -680
  22. package/dist/generated/oft.js +103 -25
  23. package/dist/generated/price_feed.d.ts +45 -444
  24. package/dist/generated/price_feed.js +27 -24
  25. package/dist/generated/sml.d.ts +119 -428
  26. package/dist/generated/sml.js +103 -25
  27. package/dist/generated/treasury.d.ts +109 -288
  28. package/dist/generated/treasury.js +103 -25
  29. package/dist/generated/uln302.d.ts +190 -527
  30. package/dist/generated/uln302.js +170 -31
  31. package/dist/generated/upgrader.d.ts +14 -34
  32. package/dist/generated/upgrader.js +24 -21
  33. package/package.json +8 -9
  34. package/src/generated/bml.ts +120 -141
  35. package/src/generated/counter.ts +141 -572
  36. package/src/generated/dvn.ts +161 -819
  37. package/src/generated/dvn_fee_lib.ts +48 -301
  38. package/src/generated/endpoint.ts +171 -977
  39. package/src/generated/executor.ts +159 -787
  40. package/src/generated/executor_fee_lib.ts +130 -323
  41. package/src/generated/executor_helper.ts +113 -124
  42. package/src/generated/layerzero_view.ts +201 -408
  43. package/src/generated/oft.ts +155 -796
  44. package/src/generated/price_feed.ts +62 -525
  45. package/src/generated/sml.ts +137 -508
  46. package/src/generated/treasury.ts +127 -348
  47. package/src/generated/uln302.ts +212 -627
  48. package/src/generated/upgrader.ts +28 -54
  49. package/test/counter-sml.test.ts +218 -142
  50. package/test/counter-uln.test.ts +189 -145
  51. package/test/oft-sml.test.ts +173 -156
  52. package/test/suites/constants.ts +7 -1
  53. package/test/suites/globalSetup.ts +140 -74
  54. package/turbo.json +1 -1
@@ -6,14 +6,14 @@ 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: 57505 bytes (56.16 KB)
9
+ * Size: 56479 bytes (55.16 KB)
10
10
  */
11
- export declare const WASM_BASE64 = "AGFzbQEAAAABzgEhYAJ+fgF+YAF+AX5gA35+fgF+YAABfmAEfn5+fgF+YAN/f38AYAF/AX5gA35+fgBgA39+fgBgAABgAAF/YAF/AGACf38AYAF/AX9gAn5+AX9gAn5+AGADfn5/AGACf34AYAF+AGACfn8AYAR/f39/AX5gAX4Bf2ACf38BfmAFfn9/f38AYAN+f38BfmACf38Bf2ADf35+AX5gA39/fgBgB35+fn5+fn4BfmAFf35/fn4AYAR+fn9/AX5gCX5+fn5+fn5+fgF+YAN/f38BfwKhAjABbAExAAABYQEwAAEBdgEzAAEBdgExAAABYgE4AAEBYgE2AAABYgFmAAIBYwEyAAIBYwExAAEBdgFkAAABdgEyAAABdgE2AAABeAExAAABdgFfAAMBeAE0AAMBaQEwAAEBdgE4AAEBeAE3AAMBeAEwAAABYgFlAAABYgEwAAEBYwEwAAIBbAFfAAIBbAEyAAABaQFfAAEBZAFfAAIBaQE4AAEBaQE3AAEBYgE0AAMBYgFfAAEBbAE2AAEBeAEzAAMBeAE4AAMBaQEzAAABaQE1AAEBaQE0AAEBYgEzAAABbQFhAAQBdgFnAAABYgFtAAIBaQE2AAABYgFqAAABYgEyAAQBbQE5AAIBbAEwAAABbAE4AAABeAE1AAEBbAE3AAQDqAGmAQUGBwgJCgsMDQoGDgMDDwoQAxEODA4SCQoFEQgTAxERCwUBFBIVEwMWCwwMCgwVDQsLFQoVCgYVEwwRFxEMCAIREQwYGQoRERENFhoBGwAAAAsLAAALABICABIAEhIDAQMBAwEDAQEDAwABAwMcHQgcDBYAAQMCHh8MDAYMEgsCAQsBAwwDAwAREhMBAwMBAwACAAARBgMMAwMJBRERBQYMBREMICAEBQFwAQEBBQMBABEGIQR/AUGAgMAAC38AQeCDwAALfwBB8IrAAAt/AEHwisAACwejBzcGbWVtb3J5AgAMX19jaGVja19hdXRoAG8Kc2V0X3BhdXNlZAB8CXNldF9hZG1pbgB+GXNldF9zdXBwb3J0ZWRfbWVzc2FnZV9saWIAfw1zZXRfYWxsb3dsaXN0AIABDHNldF9kZW55bGlzdACDARpzZXRfZGVmYXVsdF9tdWx0aXBsaWVyX2JwcwCEARNzZXRfZGVwb3NpdF9hZGRyZXNzAIYBGnNldF9zdXBwb3J0ZWRfb3B0aW9uX3R5cGVzAIgBEnNldF93b3JrZXJfZmVlX2xpYgCJAQ5zZXRfcHJpY2VfZmVlZACLAQZwYXVzZWQAjgEIaXNfYWRtaW4AjwEGYWRtaW5zAJABGGlzX3N1cHBvcnRlZF9tZXNzYWdlX2xpYgCRAQxtZXNzYWdlX2xpYnMAkgEPaXNfb25fYWxsb3dsaXN0AJMBDmFsbG93bGlzdF9zaXplAJQBDmlzX29uX2RlbnlsaXN0AJUBB2hhc19hY2wAlgEWZGVmYXVsdF9tdWx0aXBsaWVyX2JwcwCXAQ9kZXBvc2l0X2FkZHJlc3MAmAEaZ2V0X3N1cHBvcnRlZF9vcHRpb25fdHlwZXMAmgEOd29ya2VyX2ZlZV9saWIAmwEKcHJpY2VfZmVlZACcAQdnZXRfZmVlAJ0BCmFzc2lnbl9qb2IAoAEOc2V0X2RzdF9jb25maWcAowEKZHN0X2NvbmZpZwCkAQN2aWQApQEOaGFzaF9jYWxsX2RhdGEApgENX19jb25zdHJ1Y3RvcgCoARJzZXRfYWRtaW5fYnlfYWRtaW4ArwEHdXBncmFkZQCwAQdtaWdyYXRlALIBBmZyZWV6ZQCzAQlpc19mcm96ZW4AtQEKYXV0aG9yaXplcgC2AQpzZXRfc2lnbmVyALcBDXNldF90aHJlc2hvbGQAuwELZ2V0X3NpZ25lcnMAvAENdG90YWxfc2lnbmVycwC9AQlpc19zaWduZXIAvgEJdGhyZXNob2xkAL8BEXZlcmlmeV9zaWduYXR1cmVzAMABE3ZlcmlmeV9uX3NpZ25hdHVyZXMAwQETZXh0ZW5kX2luc3RhbmNlX3R0bADCAQ9zZXRfdHRsX2NvbmZpZ3MAwwELdHRsX2NvbmZpZ3MAxgESZnJlZXplX3R0bF9jb25maWdzAMgBFWlzX3R0bF9jb25maWdzX2Zyb3plbgDJAQFfAwEKX19kYXRhX2VuZAMCC19faGVhcF9iYXNlAwMKtbYBpgEiACAAELGAgIAAIAGtQiCGQgSEIAKtQiCGQgSEELKAgIAAC9EBAgF/AX4jgICAgABBEGsiASSAgICAAAJAAkACQAJAAkACQCAAKAIADgMAAQIACyABQY2CwIAAQQMQyYCAgAAgASgCAA0DIAEgASkDCBDKgICAAAwCCyABQZCCwIAAQQkQyYCAgAAgASgCAA0CIAEgASkDCCAANQIEQiCGQgSEEMuAgIAADAELIAFBmYLAgABBCBDJgICAACABKAIADQEgASABKQMIIAApAwgQy4CAgAALIAEpAwghAiABKQMAUA0BCwALIAFBEGokgICAgAAgAgsRACAAQgEgASACEK+AgIAAGgs3AQF+QgAhAwJAAkAgAUICUQ0AIAGnQQFxDQEgACACNwMIQgEhAwsgACADNwMADwsQtICAgAAACwkAEMqBgIAAAAtYAQJ/I4CAgIAAQRBrIgAkgICAgAAgAEEEahC2gICAAAJAIAAoAgRBAUcNACAAKAIIIAAoAgwQt4CAgAALQQAQuICAgAAhASAAQRBqJICAgIAAIAFB/QFxCwwAIABBARDQgYCAAAsbACAArUIghkIEhCABrUIghkIEhBCtgICAABoLRwIBfwF+QQIhAQJAIAAQz4GAgAAiAkICELuAgIAARQ0AQQEhAQJAAkAgAkICEICAgIAAp0H/AXEOAgECAAsAC0EAIQELIAELiwECAn8BfiOAgICAAEEQayIAJICAgIAAIABBBGoQtoCAgAACQCAAKAIEQQFHDQAgACgCCCAAKAIMELeAgIAAC0EAIQECQEEAELqAgIAAIgJCAhC7gICAAEUNAEEBIQECQAJAIAJCAhCAgICAAKdB/wFxDgIBAgALAAtBACEBCyAAQRBqJICAgIAAIAELwgECAX8BfiOAgICAAEEQayIBJICAgIAAAkACQAJAAkACQAJAIABB/wFxDgMAAQIACyABQaaGwIAAQQYQyYCAgAAgASgCAA0DIAEgASkDCBDKgICAAAwCCyABQayGwIAAQQgQyYCAgAAgASgCAA0CIAEgASkDCBDKgICAAAwBCyABQbSGwIAAQQoQyYCAgAAgASgCAA0BIAEgASkDCBDKgICAAAsgASkDCCECIAEpAwBQDQELAAsgAUEQaiSAgICAACACCw8AIAAgARCsgICAAEIBUQsVAQF+EL2AgIAAIgAQgYCAgAAaIAALVAIBfwF+I4CAgIAAQRBrIgAkgICAgAAgAEEEahC2gICAAAJAIAAoAgRBAUcNACAAKAIIIAAoAgwQt4CAgAALEJGAgIAAIQEgAEEQaiSAgICAACABC1gBAX8jgICAgABBEGsiAiSAgICAACACQQRqELaAgIAAAkAgAigCBEEBRw0AIAIoAgggAigCDBC3gICAAAsgACABEL+AgIAAEMCAgIAAIAJBEGokgICAgAALRgIBfwF+QQAhAAJAAkBBARCrgYCAACIBQgIQu4CAgABFDQAgAUICEICAgIAAIgFC/wGDQgRSDQEgAUIgiKchAAsgAA8LAAuSBQQBfwV+An8BfiOAgICAAEEwayIDJICAgIAAIANBIGoQtoCAgAACQCADKAIgQQFHDQAgAygCJCADKAIoELeAgIAACwJAAkACQAJAAkACQCACRQ0AIAIgARCCgICAAEIgiKdLDQEQwYCAgAAhBCABEIKAgIAAQiCIIQVCACEGQQAhAgJAA0AgBiAFUQ0FAkAgASAGQiCGQgSEEIOAgIAAIgdC/wGDQsgAUg0AIAcQhICAgAAhCCAGQv////8PUQ0CIAhCgICAgHCDQoCAgICQCFINAiAHEISAgIAAQv////+PCFgNBSAHQoSAgICACBCFgICAACEIIAdCBEKEgICAgAgQhoCAgAAiBxCEgICAAEKAgICAcINCgICAgIAIUg0CIANBIGogACAHIAhCIIinIglBZWoiCiAJIApB/wFxQQRJG61C/wGDQiCGQgSEEIeAgIAAQoSAgIAQQoSAgICQCBCGgICAABCIgICAAEKEgICAwAFChICAgIAEEIaAgIAAEMKAgIAAIAMoAiBBAUYNAiADKQMoIQcCQCACQQFxRQ0AIAcgCxDDgICAAEEYdEEYdUEATA0ICyAEEIKAgIAAIQggA0EANgIIIAMgBDcDACADIAhCIIg+AgwDQCADQSBqIAMQxICAgAAgA0EQaiADKQMgIAMpAygQs4CAgAAgAygCEEEBRw0JIAMpAxggBxDFgICAAEUNAAsgBkIBfCEGQQEhAiAHIQsMAQsLIAZC/////w9SGgsQtICAgAAAC0KDgICAsIUBEMaAgIAAAAtCg4CAgOCEARDGgICAAAALEMeAgIAAAAsgA0EwaiSAgICAAA8LQoOAgICghQEQxoCAgAAAC0KDgICAgIUBEMaAgIAAAAuNAQQBfwF+AX8BfiOAgICAAEEQayIAJICAgIAAAkACQEEAEKuBgIAAIgFCARC7gICAACICRQ0AIAFCARCAgICAACIDQv8Bg0LLAFINASAAQQRqENCAgIAAIAAoAgRFDQAgACgCCCAAKAIMEKyBgIAACxCNgICAACEBIABBEGokgICAgAAgAyABIAIbDwsACzYBAX5CASECAkAgARCEgICAAEKAgICAcINCgICAgMACUg0AIAAgATcDCEIAIQILIAAgAjcDAAsXACAAIAEQkoCAgAAiAUIAVSABQgBTawuRAQICfwF+I4CAgIAAQRBrIgIkgICAgAACQAJAIAEoAggiAyABKAIMSQ0AIABCAjcDAAwBCyACIAEpAwAgA61CIIZCBIQQg4CAgAAQuIGAgAACQCADQQFqIgNFDQAgAikDACEEIAAgAikDCDcDCCAAIAQ3AwAgASADNgIIDAELELSAgIAAAAsgAkEQaiSAgICAAAsRACAAIAEQw4CAgABB/wFxRQsLACAAEK6AgIAAGgsJABC0gICAAAALUgECfyOAgICAAEEQayIAJICAgIAAIABBBGoQtoCAgAACQCAAKAIEQQFHDQAgACgCCCAAKAIMELeAgIAACxC/gICAACEBIABBEGokgICAgAAgAQtRAgF/AX4jgICAgABBEGsiAySAgICAACADIAEgAhDLgYCAAEIBIQQCQCADKAIADQAgACADKQMINwMIQgAhBAsgACAENwMAIANBEGokgICAgAALRAEBfyOAgICAAEEQayICJICAgIAAIAIgATcDCCACQQhqQQEQooGAgAAhASAAQgA3AwAgACABNwMIIAJBEGokgICAgAALSAEBfyOAgICAAEEQayIDJICAgIAAIAMgAjcDCCADIAE3AwAgA0ECEKKBgIAAIQIgAEIANwMAIAAgAjcDCCADQRBqJICAgIAAC80CAwF/An4BfyOAgICAAEEwayICJICAgIAAEM2AgIAAIgMgABCJgICAACEEAkACQAJAAkACQCABDQAgAkEIaiAEEM6AgIAAIAIoAggiBUECRg0BIAVBAXFFDQIgAigCDCIFIAMQgoCAgABCIIinTw0EIAMgBa1CIIZCBIQQioCAgAAhAwwECyAEQgJRDQJCg4CAgICWARDGgICAAAALELSAgIAAAAtCg4CAgJCWARDGgICAAAALIAMgABCLgICAACEDCyACQQE2AiAgAkEgaiADEM+AgIAAIAJBFGoQ0ICAgAACQCACKAIUQQFHDQAgAkEgaiACKAIYIAIoAhwQ0YCAgAALQo7mrrnqjOTVOBDSgICAACEDIAIgADcDKCACIAGtNwMgIANB1IbAgABBAiACQSBqQQIQ04CAgAAQjICAgAAaIAJBMGokgICAgAALqQECAX8DfiOAgICAAEEwayIAJICAgIAAIABBEGoQtoCAgAACQCAAKAIQQQFHDQAgACgCFCAAKAIYELeAgIAACyAAQQE2AgAgAEEQaiAAENuAgIAAAkAgACkDECIBUA0AIABBJGoQ0ICAgAAgACgCJEEBRw0AIAAgACgCKCAAKAIsENGAgIAACxCNgICAACECIAApAxghAyAAQTBqJICAgIAAIAMgAiABpxsLPQECfwJAAkAgAUICUg0AQQAhAgwBC0EBQQIgAUL/AYNCBFEbIQIgAUIgiKchAwsgACADNgIEIAAgAjYCAAsVACAAEOaAgIAAIAFCARCWgICAABoLDAAgAEECENCBgIAACyIAIAAQ5oCAgAAgAa1CIIZCBIQgAq1CIIZCBIQQsoCAgAALYwMBfwF+AX8jgICAgABBEGsiASSAgICAACABIAA3AwBCAiECQQEhAwJAA0AgA0UNASADQX9qIQMgACECDAALCyABIAI3AwggAUEIakEBEKKBgIAAIQAgAUEQaiSAgICAACAACy4AAkAgASADRg0AAAsgAK1CIIZCBIQgAq1CIIZCBIQgAa1CIIZCBIQQq4CAgAALJwAgABCBgICAABoCQCAAENWAgIAADQBCg4CAgMCXARDGgICAAAALC10BAX8jgICAgABBEGsiASSAgICAACABQQRqELaAgIAAAkAgASgCBEEBRw0AIAEoAgggASgCDBC3gICAAAsQzYCAgAAgABCJgICAACEAIAFBEGokgICAgAAgAEICUgvRAgMBfwJ+AX8jgICAgABBMGsiAiSAgICAABDXgICAACIDIAAQiYCAgAAhBAJAAkACQAJAAkAgAQ0AIAJBCGogBBDOgICAACACKAIIIgVBAkYNASAFQQFxRQ0CIAIoAgwiBSADEIKAgIAAQiCIp08NBCADIAWtQiCGQgSEEIqAgIAAIQMMBAsgBEICUQ0CQoOAgIDQlgEQxoCAgAAACxC0gICAAAALQoOAgIDglgEQxoCAgAAACyADIAAQi4CAgAAhAwsgAkECNgIgIAJBIGogAxDPgICAACACQRRqENCAgIAAAkAgAigCFEEBRw0AIAJBIGogAigCGCACKAIcENGAgIAAC0HkhsCAAEEZENiAgIAAENKAgIAAIQMgAiABrTcDKCACIAA3AyAgA0GUh8CAAEECIAJBIGpBAhDTgICAABCMgICAABogAkEwaiSAgICAAAupAQIBfwN+I4CAgIAAQTBrIgAkgICAgAAgAEEQahC2gICAAAJAIAAoAhBBAUcNACAAKAIUIAAoAhgQt4CAgAALIABBAjYCACAAQRBqIAAQ24CAgAACQCAAKQMQIgFQDQAgAEEkahDQgICAACAAKAIkQQFHDQAgACAAKAIoIAAoAiwQ0YCAgAALEI2AgIAAIQIgACkDGCEDIABBMGokgICAgAAgAyACIAGnGwtFAgF/AX4jgICAgABBEGsiAiSAgICAACACIAAgARDLgYCAAAJAIAIoAgBBAUcNAAALIAIpAwghAyACQRBqJICAgIAAIAMLVgEBfyOAgICAAEEQayIBJICAgIAAIAEQtoCAgAACQCABKAIAQQFHDQAgASgCBCABKAIIELeAgIAACyABQQo2AgAgACABENqAgIAAIAFBEGokgICAgAALTQECfkIAIQICQAJAIAEQ5oCAgAAiA0ICELuAgIAARQ0AIANCAhCAgICAACICQv8Bg0LNAFINASAAIAI3AwhCASECCyAAIAI3AwAPCwALTQECfkIAIQICQAJAIAEQ5oCAgAAiA0IBELuAgIAARQ0AIANCARCAgICAACICQv8Bg0LLAFINASAAIAI3AwhCASECCyAAIAI3AwAPCwALdwEDfyOAgICAAEEgayIAJICAgIAAIABBEGoQtoCAgAACQCAAKAIQQQFHDQAgACgCFCAAKAIYELeAgIAACyAAQQQ2AhAgAEEIaiAAQRBqEN2AgIAAIAAoAgghASAAKAIMIQIgAEEgaiSAgICAACACQQAgAUEBcRsLWgIBfgF/AkACQAJAIAEQ5oCAgAAiAkICELuAgIAADQBBACEBDAELIAJCAhCAgICAACICQv8Bg0IEUg0BIAJCIIinIQNBASEBCyAAIAM2AgQgACABNgIADwsAC4wBAQJ/I4CAgIAAQSBrIgEkgICAgAAgARC2gICAAAJAIAEoAgBBAUcNACABKAIEIAEoAggQt4CAgAALIAFBBTYCACABIAA3AwgCQCABEN+AgIAAIgJFDQAgAUEUahDQgICAACABKAIUQQFHDQAgASABKAIYIAEoAhwQ0YCAgAALIAFBIGokgICAgAAgAgsSACAAEOaAgIAAQgEQu4CAgAALVgEBfyOAgICAAEEQayIBJICAgIAAIAEQtoCAgAACQCABKAIAQQFHDQAgASgCBCABKAIIELeAgIAACyABQQk2AgAgACABENqAgIAAIAFBEGokgICAgAALVgEBfyOAgICAAEEQayIBJICAgIAAIAEQtoCAgAACQCABKAIAQQFHDQAgASgCBCABKAIIELeAgIAACyABQQc2AgAgACABENqAgIAAIAFBEGokgICAgAALjAEBAn8jgICAgABBIGsiASSAgICAACABELaAgIAAAkAgASgCAEEBRw0AIAEoAgQgASgCCBC3gICAAAsgAUEDNgIAIAEgADcDCAJAIAEQ34CAgAAiAkUNACABQRRqENCAgIAAIAEoAhRBAUcNACABIAEoAhggASgCHBDRgICAAAsgAUEgaiSAgICAACACC3cBA38jgICAgABBIGsiACSAgICAACAAQRBqELaAgIAAAkAgACgCEEEBRw0AIAAoAhQgACgCGBC3gICAAAsgAEEGNgIQIABBCGogAEEQahDdgICAACAAKAIIIQEgACgCDCECIABBIGokgICAgAAgAkEAIAFBAXEbC10BAX8jgICAgABBEGsiASSAgICAACABQQRqELaAgIAAAkAgASgCBEEBRw0AIAEoAgggASgCDBC3gICAAAsQ14CAgAAgABCJgICAACEAIAFBEGokgICAgAAgAEICUguPAQICfwF+I4CAgIAAQRBrIgAkgICAgAAgABC2gICAAAJAIAAoAgBBAUcNACAAKAIEIAAoAggQt4CAgAALQQAhASAAQQA2AgACQCAAEOaAgIAAIgJCAhC7gICAAEUNAEEBIQECQAJAIAJCAhCAgICAAKdB/wFxDgIBAgALAAtBACEBCyAAQRBqJICAgIAAIAELpgQCAX8BfiOAgICAAEEQayIBJICAgIAAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAAKAIADgsAAQIDBAUGBwgJCgALIAFB8InAgABBBhDJgICAACABKAIADQsgASABKQMIEMqAgIAADAoLIAFB9onAgABBBhDJgICAACABKAIADQogASABKQMIEMqAgIAADAkLIAFB/InAgABBCxDJgICAACABKAIADQkgASABKQMIEMqAgIAADAgLIAFBh4rAgABBCRDJgICAACABKAIADQggASABKQMIIAApAwgQy4CAgAAMBwsgAUGQisCAAEENEMmAgIAAIAEoAgANByABIAEpAwgQyoCAgAAMBgsgAUGdisCAAEEIEMmAgIAAIAEoAgANBiABIAEpAwggACkDCBDLgICAAAwFCyABQaWKwIAAQRQQyYCAgAAgASgCAA0FIAEgASkDCBDKgICAAAwECyABQbmKwIAAQQ4QyYCAgAAgASgCAA0EIAEgASkDCBDKgICAAAwDCyABQceKwIAAQRQQyYCAgAAgASgCAA0DIAEgASkDCCAANQIEQiCGQgSEEMuAgIAADAILIAFB24rAgABBDBDJgICAACABKAIADQIgASABKQMIEMqAgIAADAELIAFB54rAgABBCRDJgICAACABKAIADQEgASABKQMIEMqAgIAACyABKQMIIQIgASkDAFANAQsACyABQRBqJICAgIAAIAILfAECfyOAgICAAEEQayIBJICAgIAAIAFBBGoQtoCAgAACQCABKAIEQQFHDQAgASgCCCABKAIMELeAgIAACwJAAkAgABDegICAAEUNAEEAIQIMAQsCQBDcgICAAA0AQQEhAgwBCyAAEOKAgIAAIQILIAFBEGokgICAgAAgAgspAAJAIACnQQFxRQ0ADwsgAUHQdmqtQiCGQoOAgICAlgGEEMaAgIAAAAtpAgF/AX4CQCABKAIIIgIgASgCDEkNACAAQgI3AwAPCyABKQMAIAKtQiCGQgSEEIOAgIAAIQMCQCACQQFqIgJFDQAgACADNwMIIAEgAjYCCCAAIANC/wGDQs0AUq03AwAPCxC0gICAAAALlQICAn8EfiOAgICAAEHAAGsiAiSAgICAAEEAIQMCQANAIANBGEYNASACQQhqIANqQgI3AwAgA0EIaiEDDAALC0IAIQRCASEFAkAgAUL/AYNCzABSDQAgAUG4gcCAAEEDIAJBCGpBAxDrgICAACACQSBqIAIpAwgQ7ICAgAAgAigCIEEBRg0AIAIpAzghASACKQMwIQYgAkEgaiACKQMQEOyAgIAAIAIoAiBBAUYNACACKQMYIgdC/wGDQgRSDQAgAikDOCEEIAIpAzAhBSAAIAY3AyAgACAFNwMQIAAgATcDKCAAIAQ3AxggACAHQiCIPgIwQgAhBUIAIQQLIAAgBTcDACAAIAQ3AwggAkHAAGokgICAgAALMQACQCACIARGDQAACyAAIAGtQiCGQgSEIAOtQiCGQgSEIAKtQiCGQgSEEKWAgIAAGgt7AgF/AX4CQAJAAkAgAadB/wFxIgJBxABGDQAgAkEKRw0BQgAhAyAAQgA3AxggACABQgiINwMQDAILIAEQooCAgAAhAyABEKOAgIAAIQEgACADNwMYIAAgATcDEEIAIQMMAQsgAEKDkICAgAE3AwhCASEDCyAAIAM3AwALrgECAX8CfiOAgICAAEEgayICJICAgIAAIAJBCGogASkDECABKQMYEO6AgIAAQgEhAwJAIAIoAggNACACKQMQIQQgAkEIaiABKQMAIAEpAwgQ7oCAgAAgAigCCA0AIAIgAikDEDcDECACIAQ3AwggAiABNQIgQiCGQgSENwMYIABBuIHAgABBAyACQQhqQQMQ04CAgAA3AwhCACEDCyAAIAM3AwAgAkEgaiSAgICAAAtGAAJAAkAgAUL//////////wBWIAJCAFIgAlAbDQAgAUIIhkIKhCECDAELIAIgARChgICAACECCyAAQgA3AwAgACACNwMIC5ESCAF/AX4BfwN+An8BfgF/A34jgICAgABBwABrIgMkgICAgAAgA0EQaiAAEPCAgIAAAkAgAygCEEEBRg0AIAMpAxghBEEAIQUCQANAIAVBIEYNASADQRBqIAVqQgI3AwAgBUEIaiEFDAALCyABQv8Bg0LMAFINACABQZiBwIAAQQQgA0EQakEEEOuAgIAAIANBMGogAykDEBDxgICAACADKAIwDQAgAykDGCIBQv8Bg0LLAFINACADKQM4IQYgARCCgICAACEAIANBADYCCCADIAE3AwAgAyAAQiCIPgIMIANBMGogAxDygICAACADKQMwIgFCAlENACABp0EBcQ0AAkAgAykDOCIBp0H/AXEiBUHKAEYNACAFQQ5HDQELAkACQAJAIAFB8IDAgABBAhDzgICAAEIgiKcOAgABAwsgAygCCCADKAIMEPSAgIAADQJBACEFDAELIAMoAgggAygCDBD0gICAAEECSw0BIANBMGogAxDygICAACADKQMwIgFCAlENASABp0EBcQ0BIANBMGogAykDOBDwgICAACADKAIwDQEgAykDOCEHIANBMGogAxDygICAACADKQMwIgFCAlENASABp0EBcQ0BIAMpAzgiAEL/AYNCyABSDQFBASEFIAAQhICAgABCgICAgHCDQoCAgICACFINAQsgAykDICIIQv8Bg0LLAFINACADKQMoIgFC/wGDQgRSDQAgAkL/AYNCywBSDQAgAUIgiKchCSADQRBqELaAgIAAAkAgAygCEEEBRw0AIAMoAhQgAygCGBC3gICAAAsCQAJAAkAQ9YCAgAAgCUYNAEKDgICAwAAhAQwBCwJAAkAQjoCAgAAiAadB/wFxIgpBBkYNACAKQcAARw0DIAEQj4CAgAAhAQwBCyABQgiIIQELAkAgBiABVg0AQoOAgIAQIQEMAQsCQAJAIAIQgoCAgABCgICAgHCDQoCAgIAQUg0AIAIQgoCAgABCgICAgBBUDQAgAhCQgICAACIBQv8Bg0LLAFINBCABEIKAgIAAIQsgA0EANgIIIAMgATcDACADIAtCIIg+AgwgA0EQaiADEPKAgIAAIAMpAxAiAUICUQ0EIAGnQQFxDQQCQCADKQMYIgGnQf8BcSIKQcoARg0AIApBDkcNBQsCQAJAAkACQCABQbCAwIAAQQMQ84CAgABCIIinDgMAAQIICyADKAIIIAMoAgwQ9ICAgABBAUsNByADQTBqIAMQ8oCAgAAgAykDMCIBQgJRDQcgAadBAXENByADQRBqIAMpAzgQ9oCAgAAgAygCEEEBRg0HIAMpAyAhASADKQMYEJGAgIAAEJKAgIAAQgBSDQNBhILAgABBCRDYgICAACELAkAgAUL/AYNCDlINACALQv8Bg0IOUQ0DCyABIAsQkoCAgABQDQQMAwsgAygCCCADKAIMEPSAgIAAQQFLDQYgA0EwaiADEPKAgIAAIAMpAzAiAUICUQ0GIAGnQQFxDQYgA0EQaiADKQM4EPeAgIAAIAMoAhBFDQIMBgsgAygCCCADKAIMEPSAgIAAQQFLDQUgA0EwaiADEPKAgIAAIAMpAzAiAUICUQ0FIAGnQQFxDQUgA0EQaiADKQM4EPiAgIAAIAMoAhBFDQEMBQsgAyALQgiINwMQIAMgAUIIiDcDMAJAA0AgA0EwahD5gICAACEKIANBEGoQ+YCAgAAhDCAKQYCAxABGDQEgCiAMRw0CDAALCyAMQYCAxABGDQELQoOAgIDgACEBIAVFDQFB4IPAgABBDBD6gICAACAHEJOAgIAAEJSAgIAAIgtC/wGDQs0AUg0DIAsQ1YCAgABFDQEgByAEIAAQlYCAgAAaCxCNgICAACENIAIQgoCAgABCIIghDkIAIQFCBCEAAkADQCAOIAFRDQECQAJAIAIgABCDgICAACIHQv8Bg0LLAFINAEEAIQogBxCCgICAACEEIANBADYCCCADIAc3AwAgAyAEQiCIPgIMIANBEGogAxDygICAAEEBIQUCQAJAIAMpAxAiB0ICUQ0AQQEhBSAHp0EBcQ0AAkAgAykDGCIPp0H/AXEiDEHKAEYNACAMQQ5HDQELAkACQAJAIA9BsIDAgABBAxDzgICAAEIgiKcOAwABAgQLQQEhBSADKAIIIAMoAgwQ9ICAgABBAUsNAiADQTBqIAMQ8oCAgAAgAykDMCIHQgJRDQIgB6dBAXENAiADQRBqIAMpAzgQ9oCAgAAgAygCEA0CIAMpAyghByADKQMgIQQgAykDGCELQQEhCkEAIQUMAwtBASEFIAMoAgggAygCDBD0gICAAEEBSw0BIANBMGogAxDygICAACADKQMwIgdCAlENASAHp0EBcQ0BIANBEGogAykDOBD3gICAACADKAIQDQEgAykDICEEIAMpAxghC0EAIQVBACEKDAILQQEhBSADKAIIIAMoAgwQ9ICAgABBAUsNACADQTBqIAMQ8oCAgAAgAykDMCIHQgJRDQAgB6dBAXENACADQRBqIAMpAzgQ+ICAgAAgAygCEA0AIAMpAyghByADKQMgIQQgAykDGCELQQAhBUEAIQoMAQsLIAFC/////w9RDQUgBQ0FIAoNAUKDgICA0AAhAQwECyABQv////8PUhoMBAsgAyALNwMgIAMgBDcDGCADIAc3AxAgAEKAgICAEHwhACABQgF8IQEgDUHsgcCAAEEDIANBEGpBAxDTgICAABCLgICAACENDAALCyAJIAYgDRD7gICAACEBIANBAjYCECADIAE3AxgCQCADQRBqELGAgIAAIgJCARC7gICAAEUNAEEBIQUCQAJAIAJCARCAgICAAKdB/wFxDgIAAQULQQAhBQsgA0EwahDQgICAAAJAIAMoAjBBAUcNACADQRBqIAMoAjQgAygCOBCwgICAAAsgBUUNAEKDgICAMCEBDAELIANBAjYCECADIAE3AxggA0EQahCxgICAAEIBQgEQloCAgAAaIANBMGoQ0ICAgAACQCADKAIwQQFHDQAgA0EQaiADKAI0IAMoAjgQsICAgAALIAEgCBC+gICAAEICIQELIANBwABqJICAgIAAIAEPCxC0gICAAAALAAtCAQF+QgEhAgJAIAFC/wGDQsgAUg0AIAEQhICAgABCgICAgHCDQoCAgICABFINACAAIAE3AwhCACECCyAAIAI3AwALXQIBfwF+AkACQCABp0H/AXEiAkHAAEYNAAJAIAJBBkYNAEIBIQNCg5CAgIABIQEMAgsgAUIIiCEBQgAhAwwBC0IAIQMgARCPgICAACEBCyAAIAM3AwAgACABNwMIC0oCAX4Bf0ICIQICQCABKAIIIgMgASgCDE8NACAAIAEpAwAgA61CIIZCBIQQg4CAgAA3AwggASADQQFqNgIIQgAhAgsgACACNwMACxwAIAAgAa1CIIZCBIQgAq1CIIZCBIQQp4CAgAALGQACQCABIABJDQAgASAAaw8LELSAgIAAAAuMAQIBfwF+I4CAgIAAQRBrIgAkgICAgAAgABC2gICAAAJAIAAoAgBBAUcNACAAKAIEIAAoAggQt4CAgAALIABBADYCAAJAAkAgABCxgICAACIBQgIQu4CAgABFDQAgAUICEICAgIAAIgFC/wGDQgRRDQEACxDHgICAAAALIABBEGokgICAgAAgAUIgiKcL0wECAn8DfiOAgICAAEEgayICJICAgIAAQQAhAwJAA0AgA0EYRg0BIAJBCGogA2pCAjcDACADQQhqIQMMAAsLQgEhBAJAIAFC/wGDQswAUg0AIAFBhITAgABBAyACQQhqQQMQ64CAgAAgAikDCCIBQv8Bg0LLAFINACACKQMQIgVC/wGDQs0AUg0AAkAgAikDGCIGp0H/AXEiA0HKAEYNACADQQ5HDQELIAAgATcDGCAAIAY3AxAgACAFNwMIQgAhBAsgACAENwMAIAJBIGokgICAgAALvgECAn8BfiOAgICAAEEgayICJICAgIAAQQAhAwJAA0AgA0EQRg0BIAIgA2pCAjcDACADQQhqIQMMAAsLQgEhBAJAIAFC/wGDQswAUg0AIAFBrITAgABBAiACQQIQ64CAgAAgAkEQaiACKQMAEMyBgIAAIAIoAhANACACKQMYIQEgAkEQaiACKQMIEPCAgIAAIAIoAhANACAAIAIpAxg3AxAgACABNwMIQgAhBAsgACAENwMAIAJBIGokgICAgAAL4AECAn8CfiOAgICAAEEwayICJICAgIAAQQAhAwJAA0AgA0EYRg0BIAJBCGogA2pCAjcDACADQQhqIQMMAAsLQgEhBAJAIAFC/wGDQswAUg0AIAFBzITAgABBAyACQQhqQQMQ64CAgAAgAikDCCIBQv8Bg0LLAFINACACQSBqIAIpAxAQzIGAgAAgAigCIA0AIAIpAyghBSACQSBqIAIpAxgQ8ICAgAAgAigCIA0AIAIpAyghBCAAIAE3AxggACAENwMQIAAgBTcDCEIAIQQLIAAgBDcDACACQTBqJICAgIAAC5YBAgF+An8gACkDACEBA0ACQCABUEUNAEGAgMQADwsCQAJAIAFCMIinQT9xIgJBAUcNAEHfACECDAELAkACQAJAIAJBf2pBC08NAEEuIQMMAQsCQCACQXRqQRpPDQBBNSEDDAELIAJBJU0NAUE7IQMLIAIgA2ohAgwBCyAAIAFCBoYiATcDAAwBCwsgACABQgaGNwMAIAILGgAgAK1CIIZCBIQgAa1CIIZCBIQQpICAgAALowICAX8BfiOAgICAAEEQayIDJICAgIAAIAMQtoCAgAACQCADKAIAQQFHDQAgAygCBCADKAIIELeAgIAACxCcgICAACEEIAMgAEEYdCAAQYD+A3FBCHRyIABBCHZBgP4DcSAAQRh2cnI2AgAgBCAEEISAgIAAQoCAgIBwg0IEhCADQQQQp4GAgAAhBCADIAFCOIYgAUKA/gODQiiGhCABQoCA/AeDQhiGIAFCgICA+A+DQgiGhIQgAUIIiEKAgID4D4MgAUIYiEKAgPwHg4QgAUIoiEKA/gODIAFCOIiEhIQ3AwAgBCAEEISAgIAAQoCAgIBwg0IEhCADQQgQp4GAgAAgAhCdgICAABCTgICAABCIgICAACEBIANBEGokgICAgAAgAQudAgICfwF+I4CAgIAAQRBrIgEkgICAgAACQAJAQQEgAKdB/wFxIgJBAEdBAXQgAkEBRhsiAkECRg0AIAEQtoCAgAACQCABKAIAQQFHDQAgASgCBCABKAIIELeAgIAACxC8gICAACEAEOWAgIAAIAJzQQFxRQ0BIAFBADYCACABIAJCAhD9gICAAAJAAkAgAkEBcQ0AQo7SqtzurM/1ABDSgICAACEDIAEgADcDACADQYiIwIAAQQEgAUEBENOAgIAAEIyAgIAAGgwBC0KO0qrc7qwDENKAgIAAIQMgASAANwMAIANB+IfAgABBASABQQEQ04CAgAAQjICAgAAaCyABQRBqJICAgIAAQgIPCwALQoOAgICglwEQxoCAgAAACxoAIAAQ5oCAgAAgAa1C/wGDIAIQloCAgAAaC40BAQJ/I4CAgIAAQRBrIgIkgICAgAACQCAAQv8Bg0LNAFINAEEBIAGnQf8BcSIDQQBHQQF0IANBAUYbIgNBAkYNACACQQRqELaAgIAAAkAgAigCBEEBRw0AIAIoAgggAigCDBC3gICAAAsQvICAgAAaIAAgA0EBcRDMgICAACACQRBqJICAgIAAQgIPCwALjQEBAn8jgICAgABBEGsiAiSAgICAAAJAIABC/wGDQs0AUg0AQQEgAadB/wFxIgNBAEdBAXQgA0EBRhsiA0ECRg0AIAJBBGoQtoCAgAACQCACKAIEQQFHDQAgAigCCCACKAIMELeAgIAACxC8gICAABogACADQQFxENaAgIAAIAJBEGokgICAgABCAg8LAAujAwEDfyOAgICAAEEgayICJICAgIAAAkACQAJAAkAgAEL/AYNCzQBSDQBBASABp0H/AXEiA0EAR0EBdCADQQFGGyIDQQJGDQAgAkEQahC2gICAAAJAIAIoAhBBAUcNACACKAIUIAIoAhgQt4CAgAALELyAgIAAGiAAEOKAgIAAIQQCQAJAIANBAXENACAERQ0DIAJBAzYCECACIAA3AxggAkEQahDmgICAAEIBEJeAgIAAGhDcgICAACIERQ0FIARBf2ohBAwBCyAEDQMgAkEDNgIQIAIgADcDGCACQRBqEIGBgIAAIAJBBGoQ0ICAgAACQCACKAIEQQFHDQAgAkEQaiACKAIIIAIoAgwQ0YCAgAALENyAgIAAQQFqIgRFDQQLIAQQgoGAgABBpIfAgABBDRDYgICAABDSgICAACEBIAIgADcDGCACIAOtNwMQIAFBvIfAgABBAiACQRBqQQIQ04CAgAAQjICAgAAaIAJBIGokgICAgABCAg8LAAtCg4CAgICXARDGgICAAAALQoOAgICglgEQxoCAgAAACxC0gICAAAALDgAgAEEBQgEQ/YCAgAALMQEBfyOAgICAAEEQayIBJICAgIAAIAFBBDYCACABIAAQ04GAgAAgAUEQaiSAgICAAAvuAgEDfyOAgICAAEEgayICJICAgIAAAkACQAJAIABC/wGDQs0AUg0AQQEgAadB/wFxIgNBAEdBAXQgA0EBRhsiA0ECRg0AIAJBEGoQtoCAgAACQCACKAIQQQFHDQAgAigCFCACKAIYELeAgIAACxC8gICAABogABDegICAACEEAkACQCADQQFxDQAgBEUNAyACQQU2AhAgAiAANwMYIAJBEGoQ5oCAgABCARCXgICAABoMAQsgBA0DIAJBBTYCECACIAA3AxggAkEQahCBgYCAACACQQRqENCAgIAAIAIoAgRBAUcNACACQRBqIAIoAgggAigCDBDRgICAAAtBzIfAgABBDBDYgICAABDSgICAACEBIAIgADcDGCACIAOtNwMQIAFB4IfAgABBAiACQRBqQQIQ04CAgAAQjICAgAAaIAJBIGokgICAgABCAg8LAAtCg4CAgJCXARDGgICAAAALQoOAgICwlgEQxoCAgAAAC3oBAX8jgICAgABBEGsiAiSAgICAAAJAIABC/wGDQs0AUg0AIAFC/wGDQgRSDQAgAkEEahC2gICAAAJAIAIoAgRBAUcNACACKAIIIAIoAgwQt4CAgAALIAAQ1ICAgAAgAUIgiKcQhYGAgAAgAkEQaiSAgICAAEICDwsAC3ICAX8BfiOAgICAAEEQayIBJICAgIAAIAFBBjYCACABIAAQ04GAgABBkIjAgABBGhDYgICAABDSgICAACECIAEgAK1CIIZCBIQ3AwAgAkG4iMCAAEEBIAFBARDTgICAABCMgICAABogAUEQaiSAgICAAAusAQEBfyOAgICAAEEQayICJICAgIAAAkAgAEL/AYNCzQBSDQAgAUL/AYNCzQBSDQAgAhC2gICAAAJAIAIoAgBBAUcNACACKAIEIAIoAggQt4CAgAALIAAQ1ICAgAAgARCHgYCAAEHAiMCAAEETENiAgIAAENKAgIAAIQAgAiABNwMAIABB5IjAgABBASACQQEQ04CAgAAQjICAgAAaIAJBEGokgICAgABCAg8LAAsxAQF/I4CAgIAAQRBrIgEkgICAgAAgAUEHNgIAIAEgABDSgYCAACABQRBqJICAgIAAC5cCAQF/I4CAgIAAQSBrIgMkgICAgAACQCAAQv8Bg0LNAFINACABQv8Bg0IEUg0AIAJC/wGDQsgAUg0AIANBEGoQtoCAgAACQCADKAIQQQFHDQAgAygCFCADKAIYELeAgIAACyAAENSAgIAAIANBCDYCECADIAFCIIg+AhQgA0EQahDmgICAACACQgEQloCAgAAaIANBBGoQ0ICAgAACQCADKAIEQQFHDQAgA0EQaiADKAIIIAMoAgwQ0YCAgAALQYyJwIAAQRoQ2ICAgAAQ0oCAgAAhACADIAI3AxggAyABQoSAgIBwgzcDECAAQbyJwIAAQQIgA0EQakECENOAgIAAEIyAgIAAGiADQSBqJICAgIAAQgIPCwALrAEBAX8jgICAgABBEGsiAiSAgICAAAJAIABC/wGDQs0AUg0AIAFC/wGDQs0AUg0AIAIQtoCAgAACQCACKAIAQQFHDQAgAigCBCACKAIIELeAgIAACyAAENSAgIAAIAEQioGAgABBzInAgABBEhDYgICAABDSgICAACEAIAIgATcDACAAQeiJwIAAQQEgAkEBENOAgIAAEIyAgIAAGiACQRBqJICAgIAAQgIPCwALMQEBfyOAgICAAEEQayIBJICAgIAAIAFBCTYCACABIAAQ0oGAgAAgAUEQaiSAgICAAAt/AQF/I4CAgIAAQRBrIgIkgICAgAACQCAAQv8Bg0LNAFINACABQv8Bg0LNAFINACACQQRqELaAgIAAAkAgAigCBEEBRw0AIAIoAgggAigCDBC3gICAAAsgABDUgICAACABEIyBgIAAIAEQjYGAgAAgAkEQaiSAgICAAEICDwsACzEBAX8jgICAgABBEGsiASSAgICAACABQQo2AgAgASAAENKBgIAAIAFBEGokgICAgAALXQIBfwF+I4CAgIAAQRBrIgEkgICAgABB7IjAgABBDhDYgICAABDSgICAACECIAEgADcDCCACQYSJwIAAQQEgAUEIakEBENOAgIAAEIyAgIAAGiABQRBqJICAgIAACwkAEOWAgIAArQsbAAJAIABC/wGDQs0AUQ0AAAsgABDVgICAAK0LCAAQzYCAgAALGwACQCAAQv8Bg0LNAFENAAALIAAQ5ICAgACtCwgAENeAgIAACxsAAkAgAEL/AYNCzQBRDQAACyAAEOKAgIAArQsPABDcgICAAK1CIIZCBIQLGwACQCAAQv8Bg0LNAFENAAALIAAQ3oCAgACtCxsAAkAgAEL/AYNCzQBRDQAACyAAEOeAgIAArQsPABDjgICAAK1CIIZCBIQLPgIBfwF+I4CAgIAAQRBrIgAkgICAgAAgABDhgICAACAAKQMAIAAp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gICAAEEQayIBJICAgIAAAkACQAJAAkAgAEEBcUUNACABQbuFwIAAQQkQyYCAgAAgASgCAA0CIAEgASkDCBDKgICAAAwBCyABQbSFwIAAQQcQyYCAgAAgASgCAA0BIAEgASkDCBDKgICAAAsgASkDCCECIAEpAwBQDQELAAsgAUEQaiSAgICAACACCyIAQQAQq4GAgAAgAK1CIIZCBIQgAa1CIIZCBIQQsoCAgAAL3wECAX8CfiOAgICAAEEwayIBJICAgIAAAkACQCAAQeyEwIAAQRQQ+oCAgAAQxYCAgAANABDBgICAACICEIKAgIAAIQMgAUEANgIIIAEgAjcDACABIANCIIg+AgwDQCABQSBqIAEQxICAgAAgAUEQaiABKQMgIAEpAygQs4CAgAAgASgCEEEBRw0CIAEpAxggABDFgICAAEUNAAtCg4CAgPCEARDGgICAAAALQoOAgIDQhAEQxoCAgAAACyACIAAQi4CAgAAQuYGAgAAgAEEBELqBgIAAIAFBMGokgICAgAALuAECAX8CfiOAgICAAEEQayIBJICAgIAAAkACQCAARQ0AIAAQwYCAgAAQgoCAgABCIIinSw0BQQEQq4GAgAAgAK1CIIZCBIQiAkICEJaAgIAAGkGUhcCAAEENENiAgIAAENKAgIAAIQMgASACNwMIIANBrIXAgABBASABQQhqQQEQ04CAgAAQjICAgAAaIAFBEGokgICAgAAPC0KDgICAsIUBEMaAgIAAAAtCg4CAgJCFARDGgICAAAALmgEBAn8jgICAgABBEGsiAySAgICAAAJAIABC/wGDQs0AUg0AIAFC/wGDQs0AUg0AQQEgAqdB/wFxIgRBAEdBAXQgBEEBRhsiBEECRg0AIANBBGoQtoCAgAACQCADKAIEQQFHDQAgAygCCCADKAIMELeAgIAACyAAENSAgIAAIAEgBEEBcRDMgICAACADQRBqJICAgIAAQgIPCwALmQEBAX8jgICAgABBEGsiASSAgICAACABIAAQ8ICAgAACQAJAIAEoAgBBAUYNACABKQMIIQAgARC2gICAAAJAIAEoAgBBAUcNACABKAIEIAEoAggQt4CAgAALELyAgIAAGhC1gICAAA0BQQEQsYGAgAAgABCegICAABogAUEQaiSAgICAAEICDwsAC0KDgICAwIMBEMaAgIAAAAsMAEEBIAAQtIGAgAALrgEBAX8jgICAgABBEGsiASSAgICAAAJAAkACQCAAQv8Bg0LIAFINACABQQRqELaAgIAAAkAgASgCBEEBRw0AIAEoAgggASgCDBC3gICAAAsQvICAgAAaQQEQuICAgABB/QFxRQ0BIAAQlICAgABC/wGDQgJSDQJBABCxgYCAACABQRBqJICAgIAAQgIPCwALQoOAgICwgwEQxoCAgAAAC0KDgICAoIMBEMaAgIAAAAtbAQF/I4CAgIAAQRBrIgAkgICAgAAgAEEEahC2gICAAAJAIAAoAgRBAUcNACAAKAIIIAAoAgwQt4CAgAALELyAgIAAGkEAQQEQtIGAgAAgAEEQaiSAgICAAEICCxoAIAAQz4GAgAAgAa1C/wGDQgIQloCAgAAaCwkAELWAgIAArQsIABC9gICAAAvcAgICfwF+I4CAgIAAQSBrIgIkgICAgAAgAkEQaiAAELiBgIAAAkACQAJAAkAgAigCEEEBRg0AQQEgAadB/wFxIgNBAEdBAXQgA0EBRhsiA0ECRg0AIAIpAxghACACQRBqELaAgIAAAkAgAigCEEEBRw0AIAIoAhQgAigCGBC3gICAAAsQvICAgAAaAkACQCADQQFxDQAgAkEIahDBgICAACIBIAAQiYCAgAAQzoCAgAAgAigCCCIDQQJGDQMgA0UNBAJAIAIoAgwiAyABEIKAgIAAQiCIp08NACABIAOtQiCGQgSEEIqAgIAAIQELIAEQgoCAgAAhBBC/gICAACAEQiCIp0sNBSABELmBgIAAIABBABC6gYCAAAwBCyAAEK2BgIAACyACQSBqJICAgIAAQgIPCwALELSAgIAAAAtCg4CAgICFARDGgICAAAALQoOAgICQhQEQxoCAgAAACyMAAkAgAUL/AYNCyABRDQAgAEIBNwMADwsgACABEMKAgIAAC1sBAX8jgICAgABBEGsiASSAgICAAEEAEKuBgIAAIABCARCWgICAABogAUEEahDQgICAAAJAIAEoAgRBAUcNACABKAIIIAEoAgwQrIGAgAALIAFBEGokgICAgAAL0AEDAX8BfgF/I4CAgIAAQSBrIgIkgICAgABBgIXAgABBChDYgICAACEDIAIgADcDCCACIAM3AwBBACEEA0ACQCAEQRBHDQBBACEEAkADQCAEQRBGDQEgAkEQaiAEaiACIARqKQMANwMAIARBCGohBAwACwsgAkEQakECEKKBgIAAIQAgAiABrUL/AYM3AxAgAEGMhcCAAEEBIAJBEGpBARDTgICAABCMgICAABogAkEgaiSAgICAAA8LIAJBEGogBGpCAjcDACAEQQhqIQQMAAsLbQEBfyOAgICAAEEQayIBJICAgIAAAkAgAEL/AYNCBFINACABQQRqELaAgIAAAkAgASgCBEEBRw0AIAEoAgggASgCDBC3gICAAAsQvICAgAAaIABCIIinEK6BgIAAIAFBEGokgICAgABCAg8LAAtUAgF/AX4jgICAgABBEGsiACSAgICAACAAQQRqELaAgIAAAkAgACgCBEEBRw0AIAAoAgggACgCDBC3gICAAAsQwYCAgAAhASAAQRBqJICAgIAAIAELZAIBfwF+I4CAgIAAQRBrIgAkgICAgAAgAEEEahC2gICAAAJAIAAoAgRBAUcNACAAKAIIIAAoAgwQt4CAgAALEMGAgIAAEIKAgIAAIQEgAEEQaiSAgICAACABQoCAgIBwg0IEhAvcAQIBfwJ+I4CAgIAAQTBrIgEkgICAgAAgAUEgaiAAELiBgIAAAkAgASgCIEEBRg0AIAEpAyghAiABQSBqELaAgIAAAkAgASgCIEEBRw0AIAEoAiQgASgCKBC3gICAAAsQwYCAgAAiABCCgICAACEDIAFBADYCCCABIAA3AwAgASADQiCIPgIMAkADQCABQSBqIAEQxICAgAAgAUEQaiABKQMgIAEpAygQs4CAgAAgASkDECIAp0EBRw0BIAEpAxggAhDFgICAAEUNAAsLIAFBMGokgICAgAAgAA8LAAsPABDIgICAAK1CIIZCBIQLVAEBfyOAgICAAEEQayICJICAgIAAIAIgABDwgICAAAJAIAIoAgBBAUYNACABQv8Bg0LLAFINACACKQMIIAEQvoCAgAAgAkEQaiSAgICAAEICDwsAC2UBAX8jgICAgABBEGsiAySAgICAACADIAAQ8ICAgAACQCADKAIAQQFGDQAgAUL/AYNCywBSDQAgAkL/AYNCBFINACADKQMIIAEgAkIgiKcQwICAgAAgA0EQaiSAgICAAEICDwsACzEAAkAgAEL/AYNCBFINACABQv8Bg0IEUg0AIABCIIinIAFCIIinELeAgIAAQgIPCwALhwUBBX8jgICAgABB0ABrIgIk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AAAAlAAQAAMAAABfARAAEAAAAG8BEAADAAAAKgQQAA4AAABjb25maWcAANAAEAAGAAAApgQQAAcAAABmdW5j8AEQAAQAAADoABAABAAAACcBEAACAAAAc2V0X2FkbWluVmlkRHN0Q29uZmlnVXNlZEhhc2hhbW91bnR0bwAAACEBEAAGAAAAJwEQAAIAAABjb25maXJtYXRpb25zZGVmYXVsdF9tdWx0aXBsaWVyX2Jwc2Zsb29yX21hcmdpbl91c2RnYXNvcHRpb25zcXVvcnVtc2VuZGVyAAAAPAEQAA0AAABJARAAFgAAAKYEEAAHAAAAXwEQABAAAABvARAAAwAAACoEEAAOAAAAcgEQAAcAAAB6BBAACgAAAHkBEAAGAAAAfwEQAAYAAABDb250cmFjdAAAABIAAAAAAAAAAFdhc21hcmdzY29udHJhY3Rmbl9uYW1lAPABEAAEAAAA9AEQAAgAAAD8ARAABwAAAGV4ZWN1dGFibGVzYWx0AAAcAhAACgAAACYCEAAEAAAAY29uc3RydWN0b3JfYXJnczwCEAAQAAAAHAIQAAoAAAAmAhAABAAAAOwBEAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABzaWduZXJfc2V0AABHAxAABgAAAHRocmVzaG9sZF9zZXR0aHJlc2hvbGQAAKECEAAJAAAAU2lnbmVyc1RocmVzaG9sZGV4dGVuZF90bwAAAMQCEAAJAAAAoQIQAAkAAAB0dGxfY29uZmlnc19zZXRpbnN0YW5jZXBlcnNpc3RlbnQAAADvAhAACAAAAPcCEAAKAAAAdHRsX2NvbmZpZ3NfZnJvemVuRnJvemVuSW5zdGFuY2VQZXJzaXN0ZW50TWlncmF0aW5nYWN0aXZlYWRtaW4AAEcDEAAGAAAATQMQAAUAAABzZXRfc3VwcG9ydGVkX21lc3NhZ2VfbGlibWVzc2FnZV9saWJzdXBwb3J0ZWQAAAB9AxAACwAAAIgDEAAJAAAAc2V0X2FsbG93bGlzdGFsbG93ZWRvYXBwsQMQAAcAAAC4AxAABAAAAHNldF9kZW55bGlzdGRlbmllZAAA2AMQAAYAAAC4AxAABAAAAHBhdXNlcgAA8AMQAAYAAAB1bnBhdXNlcgAEEAAIAAAAc2V0X2RlZmF1bHRfbXVsdGlwbGllcl9icHNtdWx0aXBsaWVyX2JwcyoEEAAOAAAAc2V0X2RlcG9zaXRfYWRkcmVzc2RlcG9zaXRfYWRkcmVzcwAAUwQQAA8AAABzZXRfcHJpY2VfZmVlZHByaWNlX2ZlZWR6BBAACgAAAHNldF9zdXBwb3J0ZWRfb3B0aW9uX3R5cGVzZHN0X2VpZG9wdGlvbl90eXBlcwAAAKYEEAAHAAAArQQQAAwAAABzZXRfd29ya2VyX2ZlZV9saWJmZWVfbGliAAAA3gQQAAcAAABQYXVzZWRBZG1pbnNNZXNzYWdlTGlic0FsbG93bGlzdEFsbG93bGlzdFNpemVEZW55bGlzdERlZmF1bHRNdWx0aXBsaWVyQnBzRGVwb3NpdEFkZHJlc3NTdXBwb3J0ZWRPcHRpb25UeXBlc1dvcmtlckZlZUxpYlByaWNlRmVlZADn8AEOY29udHJhY3RzcGVjdjAAAAAEAAAAAAAAAAAAAAAIRHZuRXJyb3IAAAAGAAAAAAAAAA9BdXRoRGF0YUV4cGlyZWQAAAAAAQAAAAAAAAAPRWlkTm90U3VwcG9ydGVkAAAAAAIAAAAAAAAAD0hhc2hBbHJlYWR5VXNlZAAAAAADAAAAAAAAAApJbnZhbGlkVmlkAAAAAAAEAAAAAAAAABFOb25Db250cmFjdEludm9rZQAAAAAAAAUAAAAAAAAACU9ubHlBZG1pbgAAAAAAAAYAAAAFAAAAAAAAAAAAAAAMU2V0RHN0Q29uZmlnAAAAAQAAAA5zZXRfZHN0X2NvbmZpZwAAAAAAAQAAAAAAAAAGcGFyYW1zAAAAAAPqAAAH0AAAAA5Ec3RDb25maWdQYXJhbQAAAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAGU2VuZGVyAAAAAAACAAAAAAAAAC5ObyBleHBsaWNpdCBzZW5kZXIgKHBlcm1pc3Npb25sZXNzIGV4ZWN1dGlvbikuAAAAAAAETm9uZQAAAAEAAACPQSByZWdpc3RlcmVkIGFkbWluIChlZDI1NTE5KSBzdWJtaXR0aW5nIHRoZSB0cmFuc2FjdGlvbi4KVGhlIHR1cGxlIGlzIGAocHVibGljX2tleSwgc2lnbmF0dXJlKWAgd2hlcmUgdGhlIHNpZ25hdHVyZSBjb3ZlcnMgdGhlIFNvcm9iYW4gcGF5bG9hZC4AAAAABUFkbWluAAAAAAAAAgAAA+4AAAAgAAAD7gAAAEAAAAABAAAAx0F1dGhlbnRpY2F0aW9uIGRhdGEgZm9yIERWTiBjb250cmFjdCB0cmFuc2FjdGlvbnMuCgpUaGlzIHN0cnVjdCBpcyB1c2VkIHdpdGggU29yb2JhbidzIGN1c3RvbSBhY2NvdW50IGludGVyZmFjZSB0byBhdXRob3JpemUKdHJhbnNhY3Rpb25zIHRocm91Z2ggYSBjb21iaW5hdGlvbiBvZiBhZG1pbiBzaWduYXR1cmUgYW5kIG11bHRpc2lnIHF1b3J1bS4AAAAAAAAAABNUcmFuc2FjdGlvbkF1dGhEYXRhAAAAAAQAAABERXhwaXJhdGlvbiB0aW1lc3RhbXAgKGxlZGdlciB0aW1lKSBhZnRlciB3aGljaCB0aGlzIGF1dGggaXMgaW52YWxpZC4AAAAKZXhwaXJhdGlvbgAAAAAABgAAAD1FbnRpdHkgc3VibWl0dGluZyB0aGUgdHJhbnNhY3Rpb24gKGFkbWluLCBvciBwZXJtaXNzaW9ubGVzcykuAAAAAAAABnNlbmRlcgAAAAAH0AAAAAZTZW5kZXIAAAAAADxTaWduYXR1cmVzIGZyb20gbXVsdGlzaWcgc2lnbmVycyAoc2VjcDI1NmsxLCA2NSBieXRlcyBlYWNoKS4AAAAKc2lnbmF0dXJlcwAAAAAD6gAAA+4AAABBAAAAMlZlcmlmaWVyIElEIC0gbXVzdCBtYXRjaCB0aGUgRFZOJ3MgY29uZmlndXJlZCBWSUQuAAAAAAADdmlkAAAAAAQAAAABAAAAckNvbmZpZ3VyYXRpb24gZm9yIGEgZGVzdGluYXRpb24gY2hhaW4uCgpDb250YWlucyBmZWUgY2FsY3VsYXRpb24gcGFyYW1ldGVycyBzcGVjaWZpYyB0byBlYWNoIGRlc3RpbmF0aW9uIGVuZHBvaW50LgAAAAAAAAAAAAlEc3RDb25maWcAAAAAAAADAAAAO01pbmltdW0gZmVlIG1hcmdpbiBpbiBVU0QgKHNjYWxlZCBieSBuYXRpdmUgZGVjaW1hbHMgcmF0ZSkuAAAAABBmbG9vcl9tYXJnaW5fdXNkAAAACgAAAC5HYXMgZm9yIHZlcmlmaWNhdGlvbiBvbiB0aGUgZGVzdGluYXRpb24gY2hhaW4uAAAAAAADZ2FzAAAAAAoAAABnRmVlIG11bHRpcGxpZXIgaW4gYmFzaXMgcG9pbnRzICgxMDAwMCA9IDEwMCUpLgpJZiAwLCB0aGUgZGVmYXVsdCBtdWx0aXBsaWVyIGZyb20gd29ya2VyIGNvbmZpZyBpcyB1c2VkLgAAAAAObXVsdGlwbGllcl9icHMAAAAAAAQAAAABAAAANlBhcmFtZXRlciBmb3Igc2V0dGluZyBkZXN0aW5hdGlvbiBjaGFpbiBjb25maWd1cmF0aW9uLgAAAAAAAAAAAA5Ec3RDb25maWdQYXJhbQAAAAAAAgAAACdUaGUgY29uZmlndXJhdGlvbiBmb3IgdGhpcyBkZXN0aW5hdGlvbi4AAAAABmNvbmZpZwAAAAAH0AAAAAlEc3RDb25maWcAAAAAAAAcVGhlIGRlc3RpbmF0aW9uIGVuZHBvaW50IElELgAAAAdkc3RfZWlkAAAAAAQAAAABAAAAiVJlcHJlc2VudHMgYSBzaW5nbGUgY29udHJhY3QgaW52b2NhdGlvbiBmb3IgbXVsdGlzaWcgYXV0aG9yaXphdGlvbi4KClVzZWQgaW4gYGhhc2hfY2FsbF9kYXRhYCB0byBjb21wdXRlIHRoZSBoYXNoIHRoYXQgc2lnbmVycyBzaWduIG92ZXIuAAAAAAAAAAAAAARDYWxsAAAAAwAAABNGdW5jdGlvbiBhcmd1bWVudHMuAAAAAARhcmdzAAAD6gAAAAAAAAAYRnVuY3Rpb24gbmFtZSB0byBpbnZva2UuAAAABGZ1bmMAAAARAAAAGFRhcmdldCBjb250cmFjdCBhZGRyZXNzLgAAAAJ0bwAAAAAAEwAAAAAAAAA0VmFsaWRhdGVzIGF1dGhvcml6YXRpb24gZm9yIERWTiBjb250cmFjdCBvcGVyYXRpb25zLgAAAAxfX2NoZWNrX2F1dGgAAAADAAAAAAAAABFzaWduYXR1cmVfcGF5bG9hZAAAAAAAA+4AAAAgAAAAAAAAAAlhdXRoX2RhdGEAAAAAAAfQAAAAE1RyYW5zYWN0aW9uQXV0aERhdGEAAAAAAAAAAA1hdXRoX2NvbnRleHRzAAAAAAAD6gAAB9AAAAAHQ29udGV4dAAAAAABAAAD6QAAAAIAAAADAAAAAAAAAORTZXRzIHRoZSBwYXVzZWQgc3RhdGUgb2YgdGhlIHdvcmtlci4KCldoZW4gcGF1c2VkLCB0aGUgd29ya2VyIHdpbGwgcmVqZWN0IG5ldyBqb2IgYXNzaWdubWVudHMgKGUuZy4sIGFzc2lnbl9qb2IsIGdldF9mZWUpLgpFeGlzdGluZyBqb2JzIGluIHByb2dyZXNzIGFyZSBub3QgYWZmZWN0ZWQuCgojIEFyZ3VtZW50cwoqIGBwYXVzZWRgIC0gYHRydWVgIHRvIHBhdXNlLCBgZmFsc2VgIHRvIHVucGF1c2UAAAAKc2V0X3BhdXNlZAAAAAAAAQAAAAAAAAAGcGF1c2VkAAAAAAABAAAAAAAAAAAAAAD9U2V0cyBhZG1pbiBzdGF0dXMgZm9yIGFuIGFkZHJlc3MuCgpBZG1pbnMgY2FuIGNvbmZpZ3VyZSB3b3JrZXIgc2V0dGluZ3MgbGlrZSBmZWUgbXVsdGlwbGllcnMsIGRlcG9zaXQgYWRkcmVzc2VzLAphbmQgc3VwcG9ydGVkIG9wdGlvbiB0eXBlcy4KCiMgQXJndW1lbnRzCiogYGFkbWluYCAtIFRoZSBhZGRyZXNzIHRvIHNldCBhZG1pbiBzdGF0dXMgZm9yCiogYGFjdGl2ZWAgLSBgdHJ1ZWAgdG8gYWRkIGFkbWluLCBgZmFsc2VgIHRvIHJlbW92ZQAAAAAAAAlzZXRfYWRtaW4AAAAAAAACAAAAAAAAAAVhZG1pbgAAAAAAABMAAAAAAAAABmFjdGl2ZQAAAAAAAQAAAAAAAAAAAAABN1NldHMgd2hldGhlciBhIG1lc3NhZ2UgbGlicmFyeSBpcyBzdXBwb3J0ZWQgYnkgdGhpcyB3b3JrZXIuCgpNZXNzYWdlIGxpYnJhcmllcyAoZS5nLiwgVUxOMzAyKSBjYWxsIHdvcmtlcnMgdG8gYXNzaWduIGpvYnMuIE9ubHkgc3VwcG9ydGVkCmxpYnJhcmllcyBjYW4gaW50ZXJhY3Qgd2l0aCB0aGlzIHdvcmtlci4KCiMgQXJndW1lbnRzCiogYG1lc3NhZ2VfbGliYCAtIFRoZSBtZXNzYWdlIGxpYnJhcnkgY29udHJhY3QgYWRkcmVzcwoqIGBzdXBwb3J0ZWRgIC0gYHRydWVgIHRvIGFkZCBzdXBwb3J0LCBgZmFsc2VgIHRvIHJlbW92ZSBzdXBwb3J0AAAAABlzZXRfc3VwcG9ydGVkX21lc3NhZ2VfbGliAAAAAAAAAgAAAAAAAAALbWVzc2FnZV9saWIAAAAAEwAAAAAAAAAJc3VwcG9ydGVkAAAAAAAAAQAAAAAAAAAAAAABWFNldHMgYWxsb3dsaXN0IHN0YXR1cyBmb3IgYW4gT0FwcCBhZGRyZXNzLgoKV2hlbiB0aGUgYWxsb3dsaXN0IGlzIGVtcHR5LCBhbGwgT0FwcHMgYXJlIGFsbG93ZWQgKHVubGVzcyBvbiBkZW55bGlzdCkuCldoZW4gdGhlIGFsbG93bGlzdCBpcyBub3QgZW1wdHksIG9ubHkgYWxsb3dsaXN0ZWQgT0FwcHMgYXJlIGFsbG93ZWQuCkRlbnlsaXN0IGFsd2F5cyB0YWtlcyBwcmVjZWRlbmNlIG92ZXIgYWxsb3dsaXN0LgoKIyBBcmd1bWVudHMKKiBgb2FwcGAgLSBUaGUgT0FwcCBjb250cmFjdCBhZGRyZXNzCiogYGFsbG93ZWRgIC0gYHRydWVgIHRvIGFkZCB0byBhbGxvd2xpc3QsIGBmYWxzZWAgdG8gcmVtb3ZlAAAADXNldF9hbGxvd2xpc3QAAAAAAAACAAAAAAAAAARvYXBwAAAAEwAAAAAAAAAHYWxsb3dlZAAAAAABAAAAAAAAAAAAAAEJU2V0cyBkZW55bGlzdCBzdGF0dXMgZm9yIGFuIE9BcHAgYWRkcmVzcy4KCkRlbnlsaXN0ZWQgT0FwcHMgYXJlIGJsb2NrZWQgZnJvbSB1c2luZyB0aGlzIHdvcmtlciwgZXZlbiBpZiB0aGV5J3JlIG9uCnRoZSBhbGxvd2xpc3QgKGRlbnlsaXN0IHRha2VzIHByZWNlZGVuY2UpLgoKIyBBcmd1bWVudHMKKiBgb2FwcGAgLSBUaGUgT0FwcCBjb250cmFjdCBhZGRyZXNzCiogYGRlbmllZGAgLSBgdHJ1ZWAgdG8gYWRkIHRvIGRlbnlsaXN0LCBgZmFsc2VgIHRvIHJlbW92ZQAAAAAAAAxzZXRfZGVueWxpc3QAAAACAAAAAAAAAARvYXBwAAAAEwAAAAAAAAAGZGVuaWVkAAAAAAABAAAAAAAAAAAAAAE7U2V0cyB0aGUgZGVmYXVsdCBmZWUgbXVsdGlwbGllciBpbiBiYXNpcyBwb2ludHMuCgpUaGUgbXVsdGlwbGllciBpcyBhcHBsaWVkIHRvIGJhc2UgZmVlcyBkdXJpbmcgZmVlIGNhbGN1bGF0aW9uLiBVc2VkIHdoZW4Kbm8gZGVzdGluYXRpb24tc3BlY2lmaWMgbXVsdGlwbGllciBpcyBjb25maWd1cmVkLgoKIyBBcmd1bWVudHMKKiBgYWRtaW5gIC0gQWRtaW4gYWRkcmVzcyAobXVzdCBwcm92aWRlIGF1dGhvcml6YXRpb24pCiogYG11bHRpcGxpZXJfYnBzYCAtIE11bHRpcGxpZXIgaW4gYmFzaXMgcG9pbnRzICgxMDAwMCA9IDF4LCAxMjAwMCA9IDEuMngpAAAAABpzZXRfZGVmYXVsdF9tdWx0aXBsaWVyX2JwcwAAAAAAAgAAAAAAAAAFYWRtaW4AAAAAAAATAAAAAAAAAA5tdWx0aXBsaWVyX2JwcwAAAAAABAAAAAAAAAAAAAAA8VNldHMgdGhlIGRlcG9zaXQgYWRkcmVzcyB3aGVyZSB3b3JrZXIgZmVlcyBhcmUgY29sbGVjdGVkLgoKV2hlbiBqb2JzIGFyZSBhc3NpZ25lZCwgZmVlcyBhcmUgZGlyZWN0ZWQgdG8gdGhpcyBhZGRyZXNzLgoKIyBBcmd1bWVudHMKKiBgYWRtaW5gIC0gQWRtaW4gYWRkcmVzcyAobXVzdCBwcm92aWRlIGF1dGhvcml6YXRpb24pCiogYGRlcG9zaXRfYWRkcmVzc2AgLSBBZGRyZXNzIHRvIHJlY2VpdmUgY29sbGVjdGVkIGZlZXMAAAAAAAATc2V0X2RlcG9zaXRfYWRkcmVzcwAAAAACAAAAAAAAAAVhZG1pbgAAAAAAABMAAAAAAAAAD2RlcG9zaXRfYWRkcmVzcwAAAAATAAAAAAAAAAAAAAEJU2V0cyBzdXBwb3J0ZWQgZXhlY3V0b3Igb3B0aW9uIHR5cGVzIGZvciBhIGRlc3RpbmF0aW9uIGVuZHBvaW50LgoKIyBBcmd1bWVudHMKKiBgYWRtaW5gIC0gQWRtaW4gYWRkcmVzcyAobXVzdCBwcm92aWRlIGF1dGhvcml6YXRpb24pCiogYGVpZGAgLSBEZXN0aW5hdGlvbiBlbmRwb2ludCBJRCAoY2hhaW4gaWRlbnRpZmllcikKKiBgb3B0aW9uX3R5cGVzYCAtIFN1cHBvcnRlZCBvcHRpb24gdHlwZXMuIEVhY2ggYnl0ZSByZXByZXNlbnRzIGFuIG9wdGlvbiB0eXBlLgAAAAAAABpzZXRfc3VwcG9ydGVkX29wdGlvbl90eXBlcwAAAAAAAwAAAAAAAAAFYWRtaW4AAAAAAAATAAAAAAAAAANlaWQAAAAABAAAAAAAAAAMb3B0aW9uX3R5cGVzAAAADgAAAAAAAAAAAAABElNldHMgdGhlIHdvcmtlciBmZWUgbGlicmFyeSBjb250cmFjdCBhZGRyZXNzLgoKVGhlIGZlZSBsaWJyYXJ5IGNhbGN1bGF0ZXMgZmVlcyBiYXNlZCBvbiBleGVjdXRvciBvcHRpb25zIGFuZCBwcmljZSBmZWVkIGRhdGEuCgojIEFyZ3VtZW50cwoqIGBhZG1pbmAgLSBBZG1pbiBhZGRyZXNzIChtdXN0IHByb3ZpZGUgYXV0aG9yaXphdGlvbikKKiBgd29ya2VyX2ZlZV9saWJgIC0gRmVlIGxpYnJhcnkgY29udHJhY3QgYWRkcmVzcyBpbXBsZW1lbnRpbmcgYElFeGVjdXRvckZlZUxpYmAAAAAAABJzZXRfd29ya2VyX2ZlZV9saWIAAAAAAAIAAAAAAAAABWFkbWluAAAAAAAAEwAAAAAAAAAOd29ya2VyX2ZlZV9saWIAAAAAABMAAAAAAAAAAAAAARJTZXRzIHRoZSBwcmljZSBmZWVkIGNvbnRyYWN0IGFkZHJlc3MuCgpUaGUgcHJpY2UgZmVlZCBwcm92aWRlcyBnYXMgcHJpY2VzIGFuZCBleGNoYW5nZSByYXRlcyBmb3IgY3Jvc3MtY2hhaW4KZmVlIGNhbGN1bGF0aW9ucy4KCiMgQXJndW1lbnRzCiogYGFkbWluYCAtIEFkbWluIGFkZHJlc3MgKG11c3QgcHJvdmlkZSBhdXRob3JpemF0aW9uKQoqIGBwcmljZV9mZWVkYCAtIFByaWNlIGZlZWQgY29udHJhY3QgYWRkcmVzcyBpbXBsZW1lbnRpbmcgYElMYXllclplcm9QcmljZUZlZWRgAAAAAAAOc2V0X3ByaWNlX2ZlZWQAAAAAAAIAAAAAAAAABWFkbWluAAAAAAAAEwAAAAAAAAAKcHJpY2VfZmVlZAAAAAAAEwAAAAAAAAAAAAAAJVJldHVybnMgd2hldGhlciB0aGUgd29ya2VyIGlzIHBhdXNlZC4AAAAAAAAGcGF1c2VkAAAAAAAAAAAAAQAAAAEAAAAAAAAAVVJldHVybnMgd2hldGhlciBhbiBhZGRyZXNzIGlzIGFuIGFkbWluLgoKIyBBcmd1bWVudHMKKiBgYWRtaW5gIC0gVGhlIGFkZHJlc3MgdG8gY2hlY2sAAAAAAAAIaXNfYWRtaW4AAAABAAAAAAAAAAVhZG1pbgAAAAAAABMAAAABAAAAAQAAAAAAAAAcUmV0dXJucyBhbGwgYWRtaW4gYWRkcmVzc2VzLgAAAAZhZG1pbnMAAAAAAAAAAAABAAAD6gAAABMAAAAAAAAAb1JldHVybnMgd2hldGhlciBhIG1lc3NhZ2UgbGlicmFyeSBpcyBzdXBwb3J0ZWQuCgojIEFyZ3VtZW50cwoqIGBtZXNzYWdlX2xpYmAgLSBNZXNzYWdlIGxpYnJhcnkgY29udHJhY3QgYWRkcmVzcwAAAAAYaXNfc3VwcG9ydGVkX21lc3NhZ2VfbGliAAAAAQAAAAAAAAALbWVzc2FnZV9saWIAAAAAEwAAAAEAAAABAAAAAAAAAHNSZXR1cm5zIGFsbCBzdXBwb3J0ZWQgbWVzc2FnZSBsaWJyYXJ5IGFkZHJlc3Nlcy4KCiMgUmV0dXJucwpWZWN0b3Igb2Ygc3VwcG9ydGVkIG1lc3NhZ2UgbGlicmFyeSBjb250cmFjdCBhZGRyZXNzZXMuAAAAAAxtZXNzYWdlX2xpYnMAAAAAAAAAAQAAA+oAAAATAAAAAAAAAFpSZXR1cm5zIHdoZXRoZXIgYW4gT0FwcCBpcyBvbiB0aGUgYWxsb3dsaXN0LgoKIyBBcmd1bWVudHMKKiBgb2FwcGAgLSBPQXBwIGNvbnRyYWN0IGFkZHJlc3MAAAAAAA9pc19vbl9hbGxvd2xpc3QAAAAAAQAAAAAAAAAEb2FwcAAAABMAAAABAAAAAQAAAAAAAAAxUmV0dXJucyB0aGUgbnVtYmVyIG9mIGFkZHJlc3NlcyBvbiB0aGUgYWxsb3dsaXN0LgAAAAAAAA5hbGxvd2xpc3Rfc2l6ZQAAAAAAAAAAAAEAAAAEAAAAAAAAAFlSZXR1cm5zIHdoZXRoZXIgYW4gT0FwcCBpcyBvbiB0aGUgZGVueWxpc3QuCgojIEFyZ3VtZW50cwoqIGBvYXBwYCAtIE9BcHAgY29udHJhY3QgYWRkcmVzcwAAAAAAAA5pc19vbl9kZW55bGlzdAAAAAAAAQAAAAAAAAAEb2FwcAAAABMAAAABAAAAAQAAAAAAAAD5UmV0dXJucyB3aGV0aGVyIGFuIE9BcHAgaGFzIGFjY2VzcyBjb250cm9sIGxpc3QgKEFDTCkgcGVybWlzc2lvbi4KCkFDTCBldmFsdWF0aW9uIG9yZGVyOgoxLiBJZiBvbiBkZW55bGlzdCDihpIgZGVuaWVkCjIuIElmIGFsbG93bGlzdCBpcyBlbXB0eSBPUiBvbiBhbGxvd2xpc3Qg4oaSIGFsbG93ZWQKMy4gT3RoZXJ3aXNlIOKGkiBkZW5pZWQKCiMgQXJndW1lbnRzCiogYG9hcHBgIC0gT0FwcCBjb250cmFjdCBhZGRyZXNzIHRvIGNoZWNrAAAAAAAAB2hhc19hY2wAAAAAAQAAAAAAAAAEb2FwcAAAABMAAAABAAAAAQAAAAAAAAAzUmV0dXJucyB0aGUgZGVmYXVsdCBmZWUgbXVsdGlwbGllciBpbiBiYXNpcyBwb2ludHMuAAAAABZkZWZhdWx0X211bHRpcGxpZXJfYnBzAAAAAAAAAAAAAQAAAAQAAAAAAAAANVJldHVybnMgdGhlIGRlcG9zaXQgYWRkcmVzcyB3aGVyZSBmZWVzIGFyZSBjb2xsZWN0ZWQuAAAAAAAAD2RlcG9zaXRfYWRkcmVzcwAAAAAAAAAAAQAAA+gAAAATAAAAAAAAAHxSZXR1cm5zIHN1cHBvcnRlZCBvcHRpb24gdHlwZXMgZm9yIGEgZGVzdGluYXRpb24gZW5kcG9pbnQuCgojIEFyZ3VtZW50cwoqIGBlaWRgIC0gRGVzdGluYXRpb24gZW5kcG9pbnQgSUQgKGNoYWluIGlkZW50aWZpZXIpAAAAGmdldF9zdXBwb3J0ZWRfb3B0aW9uX3R5cGVzAAAAAAABAAAAAAAAAANlaWQAAAAABAAAAAEAAAPoAAAADgAAAAAAAAAwUmV0dXJucyB0aGUgd29ya2VyIGZlZSBsaWJyYXJ5IGNvbnRyYWN0IGFkZHJlc3MuAAAADndvcmtlcl9mZWVfbGliAAAAAAAAAAAAAQAAA+gAAAATAAAAAAAAAChSZXR1cm5zIHRoZSBwcmljZSBmZWVkIGNvbnRyYWN0IGFkZHJlc3MuAAAACnByaWNlX2ZlZWQAAAAAAAAAAAABAAAD6AAAABMAAAAAAAAAeENhbGN1bGF0ZXMgdGhlIHZlcmlmaWNhdGlvbiBmZWUgZm9yIGEgY3Jvc3MtY2hhaW4gbWVzc2FnZS4KCkNhbGxlZCBieSB0aGUgc2VuZCBsaWJyYXJ5IHRvIHF1b3RlIERWTiBmZWVzIGJlZm9yZSBzZW5kaW5nLgAAAAdnZXRfZmVlAAAAAAcAAAAAAAAACHNlbmRfbGliAAAAEwAAAAAAAAAGc2VuZGVyAAAAAAATAAAAAAAAAAdkc3RfZWlkAAAAAAQAAAAAAAAADXBhY2tldF9oZWFkZXIAAAAAAAAOAAAAAAAAAAxwYXlsb2FkX2hhc2gAAAPuAAAAIAAAAAAAAAANY29uZmlybWF0aW9ucwAAAAAAAAYAAAAAAAAAB29wdGlvbnMAAAAADgAAAAEAAAALAAAAAAAAALhBc3NpZ25zIGEgdmVyaWZpY2F0aW9uIGpvYiB0byB0aGlzIERWTiBhbmQgcmV0dXJucyBmZWUgcGF5bWVudCBpbmZvLgoKQ2FsbGVkIGJ5IHRoZSBzZW5kIGxpYnJhcnkgd2hlbiBhIG1lc3NhZ2UgaXMgc2VudC4gVGhlIERWTiB3aWxsIGxhdGVyCnZlcmlmeSB0aGUgbWVzc2FnZSBvbiB0aGUgZGVzdGluYXRpb24gY2hhaW4uAAAACmFzc2lnbl9qb2IAAAAAAAcAAAAAAAAACHNlbmRfbGliAAAAEwAAAAAAAAAGc2VuZGVyAAAAAAATAAAAAAAAAAdkc3RfZWlkAAAAAAQAAAAAAAAADXBhY2tldF9oZWFkZXIAAAAAAAAOAAAAAAAAAAxwYXlsb2FkX2hhc2gAAAPuAAAAIAAAAAAAAAANY29uZmlybWF0aW9ucwAAAAAAAAYAAAAAAAAAB29wdGlvbnMAAAAADgAAAAEAAAfQAAAADEZlZVJlY2lwaWVudAAAAAAAAABEU2V0cyBkZXN0aW5hdGlvbiBjaGFpbiBjb25maWd1cmF0aW9ucy4gUmVxdWlyZXMgYWRtaW4gYXV0aG9yaXphdGlvbi4AAAAOc2V0X2RzdF9jb25maWcAAAAAAAIAAAAAAAAABWFkbWluAAAAAAAAEwAAAAAAAAAGcGFyYW1zAAAAAAPqAAAH0AAAAA5Ec3RDb25maWdQYXJhbQAAAAAAAAAAAAAAAABBUmV0dXJucyB0aGUgZGVzdGluYXRpb24gY29uZmlndXJhdGlvbiBmb3IgYSBzcGVjaWZpYyBlbmRwb2ludCBJRC4AAAAAAAAKZHN0X2NvbmZpZwAAAAAAAQAAAAAAAAAHZHN0X2VpZAAAAAAEAAAAAQAAA+gAAAfQAAAACURzdENvbmZpZwAAAAAAAAAAAAAlUmV0dXJucyB0aGUgVmVyaWZpZXIgSUQgZm9yIHRoaXMgRFZOLgAAAAAAAAN2aWQAAAAAAAAAAAEAAAAEAAAAAAAAAHdDb21wdXRlcyB0aGUgaGFzaCBvZiBjYWxsIGRhdGEgZm9yIG11bHRpc2lnIHNpZ25pbmcuCgpPZmYtY2hhaW4gc2lnbmVycyB1c2UgdGhpcyB0byBjb21wdXRlIHRoZSBoYXNoIHRoZXkgbmVlZCB0byBzaWduLgAAAAAOaGFzaF9jYWxsX2RhdGEAAAAAAAMAAAAAAAAAA3ZpZAAAAAAEAAAAAAAAAApleHBpcmF0aW9uAAAAAAAGAAAAAAAAAAVjYWxscwAAAAAAA+oAAAfQAAAABENhbGwAAAABAAAD7gAAACAAAAAAAAACZEluaXRpYWxpemVzIHRoZSBEVk4gY29udHJhY3QuCgojIEFyZ3VtZW50cwoqIGB2aWRgIC0gVmVyaWZpZXIgSUQsIHVuaXF1ZSBpZGVudGlmaWVyIGZvciB0aGlzIERWTgoqIGBzaWduZXJzYCAtIEluaXRpYWwgbXVsdGlzaWcgc2lnbmVycyAoMjAtYnl0ZSBFdGhlcmV1bSBhZGRyZXNzZXMpCiogYHRocmVzaG9sZGAgLSBNaW5pbXVtIHNpZ25hdHVyZXMgcmVxdWlyZWQgZm9yIG11bHRpc2lnIG9wZXJhdGlvbnMKKiBgYWRtaW5zYCAtIEluaXRpYWwgYWRtaW4gYWRkcmVzc2VzIGZvciBvcGVyYXRpb25hbCBmdW5jdGlvbnMKKiBgc3VwcG9ydGVkX21zZ2xpYnNgIC0gTWVzc2FnZSBsaWJyYXJpZXMgdGhpcyBEVk4gc3VwcG9ydHMgKGUuZy4sIFVMTjMwMikKKiBgcHJpY2VfZmVlZGAgLSBQcmljZSBmZWVkIGNvbnRyYWN0IGZvciBmZWUgY2FsY3VsYXRpb25zCiogYGRlZmF1bHRfbXVsdGlwbGllcl9icHNgIC0gRGVmYXVsdCBmZWUgbXVsdGlwbGllciAoMTAwMDAgPSAxeCkKKiBgd29ya2VyX2ZlZV9saWJgIC0gRmVlIGxpYnJhcnkgY29udHJhY3QgZm9yIGNvbXB1dGluZyBEVk4gZmVlcwoqIGBkZXBvc2l0X2FkZHJlc3NgIC0gQWRkcmVzcyB0byByZWNlaXZlIGZlZSBwYXltZW50cwAAAA1fX2NvbnN0cnVjdG9yAAAAAAAACQAAAAAAAAADdmlkAAAAAAQAAAAAAAAAB3NpZ25lcnMAAAAD6gAAA+4AAAAUAAAAAAAAAAl0aHJlc2hvbGQAAAAAAAAEAAAAAAAAAAZhZG1pbnMAAAAAA+oAAAATAAAAAAAAABFzdXBwb3J0ZWRfbXNnbGlicwAAAAAAA+oAAAATAAAAAAAAAApwcmljZV9mZWVkAAAAAAATAAAAAAAAABZkZWZhdWx0X211bHRpcGxpZXJfYnBzAAAAAAAEAAAAAAAAAA53b3JrZXJfZmVlX2xpYgAAAAAAEwAAAAAAAAAPZGVwb3NpdF9hZGRyZXNzAAAAABMAAAAAAAAAAAAAAWpTZXRzIGFkbWluIHN0YXR1cyBmb3IgYW4gYWRkcmVzcy4gQ2FuIGJlIGNhbGxlZCBieSBhbiBleGlzdGluZyBhZG1pbi4KClRoaXMgYWxsb3dzIGV4aXN0aW5nIGFkbWlucyB0byBhZGQgb3IgcmVtb3ZlIG90aGVyIGFkbWlucyB3aXRob3V0IGdvaW5nIHRocm91Z2gKdGhlIG93bmVyL211bHRpc2lnIHBhdGguCgojIEFyZ3VtZW50cwoqIGBjYWxsZXJgIC0gVGhlIGFkbWluIGNhbGxpbmcgdGhpcyBmdW5jdGlvbiAobXVzdCBwcm92aWRlIGF1dGhvcml6YXRpb24pCiogYGFkbWluYCAtIFRoZSBhZGRyZXNzIHRvIHNldCBhZG1pbiBzdGF0dXMgZm9yCiogYGFjdGl2ZWAgLSBgdHJ1ZWAgdG8gYWRkIGFkbWluLCBgZmFsc2VgIHRvIHJlbW92ZQAAAAAAEnNldF9hZG1pbl9ieV9hZG1pbgAAAAAAAwAAAAAAAAAGY2FsbGVyAAAAAAATAAAAAAAAAAVhZG1pbgAAAAAAABMAAAAAAAAABmFjdGl2ZQAAAAAAAQAAAAAAAAAAAAAAlVRoZSB0eXBlIG9mIGRhdGEgcmVxdWlyZWQgZm9yIG1pZ3JhdGlvbi4KVXBncmFkZXMgdGhlIGNvbnRyYWN0IHRvIG5ldyBXQVNNIGJ5dGVjb2RlLgpTZXRzIGEgbWlncmF0aW9uIGZsYWcgdGhhdCBtdXN0IGJlIGNsZWFyZWQgYnkgY2FsbGluZyBgbWlncmF0ZWAuAAAAAAAAB3VwZ3JhZGUAAAAAAQAAAAAAAAANbmV3X3dhc21faGFzaAAAAAAAA+4AAAAgAAAAAAAAAAAAAAB2UnVucyBtaWdyYXRpb24gbG9naWMgYWZ0ZXIgYW4gdXBncmFkZS4KQ2FuIG9ubHkgYmUgY2FsbGVkIHdoZW4gdGhlIG1pZ3JhdGlvbiBmbGFnIGlzIHNldCBieSBhIHByZXZpb3VzIGB1cGdyYWRlYCBjYWxsLgAAAAAAB21pZ3JhdGUAAAAAAQAAAAAAAAAObWlncmF0aW9uX2RhdGEAAAAAAA4AAAAAAAAAAAAAAF5QZXJtYW5lbnRseSBmcmVlemVzIHRoZSBjb250cmFjdCwgcHJldmVudGluZyBhbnkgZnV0dXJlIHVwZ3JhZGVzLgpUaGlzIGFjdGlvbiBpcyBpcnJldmVyc2libGUuAAAAAAAGZnJlZXplAAAAAAAAAAAAAAAAAAAAAAA7UmV0dXJucyB3aGV0aGVyIHRoZSBjb250cmFjdCBpcyBmcm96ZW4gKHVwZ3JhZGVzIGRpc2FibGVkKS4AAAAACWlzX2Zyb3plbgAAAAAAAAAAAAABAAAAAQAAAAAAAAAAAAAACmF1dGhvcml6ZXIAAAAAAAAAAAABAAAAEwAAAAAAAABJQWRkcyBvciByZW1vdmVzIGEgc2lnbmVyIGZyb20gdGhlIG11bHRpc2lnLiBSZXF1aXJlcyBvd25lciBhdXRob3JpemF0aW9uLgAAAAAAAApzZXRfc2lnbmVyAAAAAAACAAAAAAAAAAZzaWduZXIAAAAAA+4AAAAUAAAAAAAAAAZhY3RpdmUAAAAAAAEAAAAAAAAAAAAAAERTZXRzIHRoZSBzaWduYXR1cmUgdGhyZXNob2xkIChxdW9ydW0pLiBSZXF1aXJlcyBvd25lciBhdXRob3JpemF0aW9uLgAAAA1zZXRfdGhyZXNob2xkAAAAAAAAAQAAAAAAAAAJdGhyZXNob2xkAAAAAAAABAAAAAAAAAAAAAAAH1JldHVybnMgYWxsIHJlZ2lzdGVyZWQgc2lnbmVycy4AAAAAC2dldF9zaWduZXJzAAAAAAAAAAABAAAD6gAAA+4AAAAUAAAAAAAAAC9SZXR1cm5zIHRoZSB0b3RhbCBudW1iZXIgb2YgcmVnaXN0ZXJlZCBzaWduZXJzLgAAAAANdG90YWxfc2lnbmVycwAAAAAAAAAAAAABAAAABAAAAAAAAAAsQ2hlY2tzIGlmIGFuIGFkZHJlc3MgaXMgYSByZWdpc3RlcmVkIHNpZ25lci4AAAAJaXNfc2lnbmVyAAAAAAAAAQAAAAAAAAAGc2lnbmVyAAAAAAPuAAAAFAAAAAEAAAABAAAAAAAAADFSZXR1cm5zIHRoZSBjdXJyZW50IHNpZ25hdHVyZSB0aHJlc2hvbGQgKHF1b3J1bSkuAAAAAAAACXRocmVzaG9sZAAAAAAAAAAAAAABAAAABAAAAAAAAAA1VmVyaWZpZXMgc2lnbmF0dXJlcyBhZ2FpbnN0IHRoZSBjb25maWd1cmVkIHRocmVzaG9sZC4AAAAAAAARdmVyaWZ5X3NpZ25hdHVyZXMAAAAAAAACAAAAAAAAAAZkaWdlc3QAAAAAA+4AAAAgAAAAAAAAAApzaWduYXR1cmVzAAAAAAPqAAAD7gAAAEEAAAAAAAAAAAAAAC9WZXJpZmllcyBzaWduYXR1cmVzIGFnYWluc3QgYSBjdXN0b20gdGhyZXNob2xkLgAAAAATdmVyaWZ5X25fc2lnbmF0dXJlcwAAAAADAAAAAAAAAAZkaWdlc3QAAAAAA+4AAAAgAAAAAAAAAApzaWduYXR1cmVzAAAAAAPqAAAD7gAAAEEAAAAAAAAACXRocmVzaG9sZAAAAAAAAAQAAAAAAAAAAAAAAKVFeHRlbmRzIHRoZSBpbnN0YW5jZSBUVEwuCgojIEFyZ3VtZW50cwoKKiBgdGhyZXNob2xkYCAtIFRoZSB0aHJlc2hvbGQgdG8gZXh0ZW5kIHRoZSBUVEwgKGlmIGN1cnJlbnQgVFRMIGlzIGJlbG93IHRoaXMsIGV4dGVuZCkuCiogYGV4dGVuZF90b2AgLSBUaGUgVFRMIHRvIGV4dGVuZCB0by4AAAAAAAATZXh0ZW5kX2luc3RhbmNlX3R0bAAAAAACAAAAAAAAAAl0aHJlc2hvbGQAAAAAAAAEAAAAAAAAAAlleHRlbmRfdG8AAAAAAAAEAAAAAAAAAAAAAAGPU2V0cyBUVEwgY29uZmlncyBmb3IgaW5zdGFuY2UgYW5kIHBlcnNpc3RlbnQgc3RvcmFnZS4KCi0gYE5vbmVgIHZhbHVlcyByZW1vdmUgdGhlIGNvcnJlc3BvbmRpbmcgY29uZmlnIChkaXNhYmxlcyBhdXRvLWV4dGVuc2lvbiBmb3IgdGhhdCB0eXBlKQotIFZhbGlkYXRlcyB0aGF0IGB0aHJlc2hvbGQgPD0gZXh0ZW5kX3RvIDw9IE1BWF9UVExgCgojIEFyZ3VtZW50cwotIGBpbnN0YW5jZWAgLSBUVEwgY29uZmlnIGZvciBpbnN0YW5jZSBzdG9yYWdlCi0gYHBlcnNpc3RlbnRgIC0gVFRMIGNvbmZpZyBmb3IgcGVyc2lzdGVudCBzdG9yYWdlCgojIFBhbmljcwotIGBUdGxDb25maWdGcm96ZW5gIGlmIGNvbmZpZ3MgYXJlIGZyb3plbgotIGBJbnZhbGlkVHRsQ29uZmlnYCBpZiB2YWxpZGF0aW9uIGZhaWxzAAAAAA9zZXRfdHRsX2NvbmZpZ3MAAAAAAgAAAAAAAAAIaW5zdGFuY2UAAAPoAAAH0AAAAAlUdGxDb25maWcAAAAAAAAAAAAACnBlcnNpc3RlbnQAAAAAA+gAAAfQAAAACVR0bENvbmZpZwAAAAAAAAAAAAAAAAAASFJldHVybnMgdGhlIGN1cnJlbnQgVFRMIGNvbmZpZ3MgYXMgKGluc3RhbmNlX2NvbmZpZywgcGVyc2lzdGVudF9jb25maWcpLgAAAAt0dGxfY29uZmlncwAAAAAAAAAAAQAAA+0AAAACAAAD6AAAB9AAAAAJVHRsQ29uZmlnAAAAAAAD6AAAB9AAAAAJVHRsQ29uZmlnAAAAAAAAAAAAAOFQZXJtYW5lbnRseSBmcmVlemVzIFRUTCBjb25maWdzLCBwcmV2ZW50aW5nIGFueSBmdXR1cmUgbW9kaWZpY2F0aW9ucy4KClRoaXMgaXMgaXJyZXZlcnNpYmxlIGFuZCBwcm92aWRlcyBpbW11dGFiaWxpdHkgZ3VhcmFudGVlcyB0byB1c2Vycy4KRW1pdHMgYFR0bENvbmZpZ3NGcm96ZW5gIGV2ZW50LgoKIyBQYW5pY3MKLSBgVHRsQ29uZmlnQWxyZWFkeUZyb3plbmAgaWYgYWxyZWFkeSBmcm96ZW4AAAAAAAASZnJlZXplX3R0bF9jb25maWdzAAAAAAAAAAAAAAAAAAAAAAAnUmV0dXJucyB3aGV0aGVyIFRUTCBjb25maWdzIGFyZSBmcm96ZW4uAAAAABVpc190dGxfY29uZmlnc19mcm96ZW4AAAAAAAAAAAAAAQAAAAEAAAACAAAAAAAAAAAAAAAKRHZuU3RvcmFnZQAAAAAAAwAAAAAAAAAAAAAAA1ZpZAAAAAABAAAAAAAAAAlEc3RDb25maWcAAAAAAAABAAAABAAAAAEAAAAAAAAACFVzZWRIYXNoAAAAAQAAA+4AAAAgAAAABQAAAAAAAAAAAAAAClBhY2tldFNlbnQAAAAAAAEAAAALcGFja2V0X3NlbnQAAAAAAwAAAAAAAAAOZW5jb2RlZF9wYWNrZXQAAAAAAA4AAAAAAAAAAAAAAAdvcHRpb25zAAAAAA4AAAAAAAAAAAAAAAxzZW5kX2xpYnJhcnkAAAATAAAAAAAAAAIAAAAFAAAAAAAAAAAAAAAOUGFja2V0VmVyaWZpZWQAAAAAAAEAAAAPcGFja2V0X3ZlcmlmaWVkAAAAAAMAAAAAAAAABm9yaWdpbgAAAAAH0AAAAAZPcmlnaW4AAAAAAAEAAAAAAAAACHJlY2VpdmVyAAAAEwAAAAEAAAAAAAAADHBheWxvYWRfaGFzaAAAA+4AAAAgAAAAAAAAAAIAAAAFAAAAAAAAAAAAAAAPUGFja2V0RGVsaXZlcmVkAAAAAAEAAAAQcGFja2V0X2RlbGl2ZXJlZAAAAAIAAAAAAAAABm9yaWdpbgAAAAAH0AAAAAZPcmlnaW4AAAAAAAEAAAAAAAAACHJlY2VpdmVyAAAAEwAAAAEAAAACAAAABQAAAAAAAAAAAAAADkx6UmVjZWl2ZUFsZXJ0AAAAAAABAAAAEGx6X3JlY2VpdmVfYWxlcnQAAAAJAAAAAAAAAAhyZWNlaXZlcgAAABMAAAABAAAAAAAAAAhleGVjdXRvcgAAABMAAAABAAAAAAAAAAZvcmlnaW4AAAAAB9AAAAAGT3JpZ2luAAAAAAABAAAAAAAAAARndWlkAAAD7gAAACAAAAABAAAAAAAAAANnYXMAAAAACwAAAAAAAAAAAAAABXZhbHVlAAAAAAAACwAAAAAAAAAAAAAAB21lc3NhZ2UAAAAADgAAAAAAAAAAAAAACmV4dHJhX2RhdGEAAAAAAA4AAAAAAAAAAAAAAAZyZWFzb24AAAAAAA4AAAAAAAAAAgAAAAUAAAAAAAAAAAAAAAZacm9TZXQAAAAAAAEAAAAHenJvX3NldAAAAAABAAAAAAAAAAN6cm8AAAAAEwAAAAAAAAACAAAABQAAAAAAAAAAAAAAC0RlbGVnYXRlU2V0AAAAAAEAAAAMZGVsZWdhdGVfc2V0AAAAAgAAAAAAAAAEb2FwcAAAABMAAAABAAAAAAAAAAhkZWxlZ2F0ZQAAA+gAAAATAAAAAAAAAAIAAAAFAAAAAAAAAAAAAAATSW5ib3VuZE5vbmNlU2tpcHBlZAAAAAABAAAAFWluYm91bmRfbm9uY2Vfc2tpcHBlZAAAAAAAAAQAAAAAAAAAB3NyY19laWQAAAAABAAAAAEAAAAAAAAABnNlbmRlcgAAAAAD7gAAACAAAAABAAAAAAAAAAhyZWNlaXZlcgAAABMAAAABAAAAAAAAAAVub25jZQAAAAAAAAYAAAABAAAAAgAAAAUAAAAAAAAAAAAAAA5QYWNrZXROaWxpZmllZAAAAAAAAQAAAA9wYWNrZXRfbmlsaWZpZWQAAAAABQAAAAAAAAAHc3JjX2VpZAAAAAAEAAAAAQAAAAAAAAAGc2VuZGVyAAAAAAPuAAAAIAAAAAEAAAAAAAAACHJlY2VpdmVyAAAAEwAAAAEAAAAAAAAABW5vbmNlAAAAAAAABgAAAAEAAAAAAAAADHBheWxvYWRfaGFzaAAAA+gAAAPuAAAAIAAAAAAAAAACAAAABQAAAAAAAAAAAAAAC1BhY2tldEJ1cm50AAAAAAEAAAAMcGFja2V0X2J1cm50AAAABQAAAAAAAAAHc3JjX2VpZAAAAAAEAAAAAQAAAAAAAAAGc2VuZGVyAAAAAAPuAAAAIAAAAAEAAAAAAAAACHJlY2VpdmVyAAAAEwAAAAEAAAAAAAAABW5vbmNlAAAAAAAABgAAAAEAAAAAAAAADHBheWxvYWRfaGFzaAAAA+4AAAAgAAAAAAAAAAIAAAAFAAAAAAAAAAAAAAARTGlicmFyeVJlZ2lzdGVyZWQAAAAAAAABAAAAEmxpYnJhcnlfcmVnaXN0ZXJlZAAAAAAAAQAAAAAAAAAHbmV3X2xpYgAAAAATAAAAAAAAAAIAAAAFAAAAAAAAAAAAAAAVRGVmYXVsdFNlbmRMaWJyYXJ5U2V0AAAAAAAAAQAAABhkZWZhdWx0X3NlbmRfbGlicmFyeV9zZXQAAAACAAAAAAAAAAdkc3RfZWlkAAAAAAQAAAABAAAAAAAAAAduZXdfbGliAAAAABMAAAAAAAAAAgAAAAUAAAAAAAAAAAAAABhEZWZhdWx0UmVjZWl2ZUxpYnJhcnlTZXQAAAABAAAAG2RlZmF1bHRfcmVjZWl2ZV9saWJyYXJ5X3NldAAAAAACAAAAAAAAAAdzcmNfZWlkAAAAAAQAAAABAAAAAAAAAAduZXdfbGliAAAAABMAAAAAAAAAAgAAAAUAAAAAAAAAAAAAABtEZWZhdWx0UmVjZWl2ZUxpYlRpbWVvdXRTZXQAAAAAAQAAAB9kZWZhdWx0X3JlY2VpdmVfbGliX3RpbWVvdXRfc2V0AAAAAAIAAAAAAAAAB3NyY19laWQAAAAABAAAAAEAAAAAAAAAB3RpbWVvdXQAAAAD6AAAB9AAAAAHVGltZW91dAAAAAAAAAAAAgAAAAUAAAAAAAAAAAAAAA5TZW5kTGlicmFyeVNldAAAAAAAAQAAABBzZW5kX2xpYnJhcnlfc2V0AAAAAwAAAAAAAAAGc2VuZGVyAAAAAAATAAAAAQAAAAAAAAAHZHN0X2VpZAAAAAAEAAAAAQAAAAAAAAAHbmV3X2xpYgAAAAPoAAAAEwAAAAAAAAACAAAABQAAAAAAAAAAAAAAEVJlY2VpdmVMaWJyYXJ5U2V0AAAAAAAAAQAAABNyZWNlaXZlX2xpYnJhcnlfc2V0AAAAAAMAAAAAAAAACHJlY2VpdmVyAAAAEwAAAAEAAAAAAAAAB3NyY19laWQAAAAABAAAAAEAAAAAAAAAB25ld19saWIAAAAD6AAAABMAAAAAAAAAAgAAAAUAAAAAAAAAAAAAABhSZWNlaXZlTGlicmFyeVRpbWVvdXRTZXQAAAABAAAAG3JlY2VpdmVfbGlicmFyeV90aW1lb3V0X3NldAAAAAADAAAAAAAAAAhyZWNlaXZlcgAAABMAAAABAAAAAAAAAANlaWQAAAAABAAAAAEAAAAAAAAAB3RpbWVvdXQAAAAD6AAAB9AAAAAHVGltZW91dAAAAAAAAAAAAgAAAAUAAAAAAAAAAAAAAAtDb21wb3NlU2VudAAAAAABAAAADGNvbXBvc2Vfc2VudAAAAAUAAAAAAAAABGZyb20AAAATAAAAAQAAAAAAAAACdG8AAAAAABMAAAABAAAAAAAAAARndWlkAAAD7gAAACAAAAABAAAAAAAAAAVpbmRleAAAAAAAAAQAAAABAAAAAAAAAAdtZXNzYWdlAAAAAA4AAAAAAAAAAgAAAAUAAAAAAAAAAAAAABBDb21wb3NlRGVsaXZlcmVkAAAAAQAAABFjb21wb3NlX2RlbGl2ZXJlZAAAAAAAAAQAAAAAAAAABGZyb20AAAATAAAAAQAAAAAAAAACdG8AAAAAABMAAAABAAAAAAAAAARndWlkAAAD7gAAACAAAAABAAAAAAAAAAVpbmRleAAAAAAAAAQAAAABAAAAAgAAAAUAAAAAAAAAAAAAAA5MekNvbXBvc2VBbGVydAAAAAAAAQAAABBsel9jb21wb3NlX2FsZXJ0AAAACgAAAAAAAAAEZnJvbQAAABMAAAABAAAAAAAAAAJ0bwAAAAAAEwAAAAEAAAAAAAAACGV4ZWN1dG9yAAAAEwAAAAEAAAAAAAAABGd1aWQAAAPuAAAAIAAAAAEAAAAAAAAABWluZGV4AAAAAAAABAAAAAEAAAAAAAAAA2dhcwAAAAALAAAAAAAAAAAAAAAFdmFsdWUAAAAAAAALAAAAAAAAAAAAAAAHbWVzc2FnZQAAAAAOAAAAAAAAAAAAAAAKZXh0cmFfZGF0YQAAAAAADgAAAAAAAAAAAAAABnJlYXNvbgAAAAAADgAAAAAAAAACAAAABAAAAAAAAAAAAAAADUVuZHBvaW50RXJyb3IAAAAAAAAZAAAAAAAAABFBbHJlYWR5UmVnaXN0ZXJlZAAAAAAAAAEAAAAAAAAADUNvbXBvc2VFeGlzdHMAAAAAAAACAAAAAAAAAA9Db21wb3NlTm90Rm91bmQAAAAAAwAAAAAAAAAcRGVmYXVsdFJlY2VpdmVMaWJVbmF2YWlsYWJsZQAAAAQAAAAAAAAAGURlZmF1bHRTZW5kTGliVW5hdmFpbGFibGUAAAAAAAAFAAAAAAAAABVJbnN1ZmZpY2llbnROYXRpdmVGZWUAAAAAAAAGAAAAAAAAABJJbnN1ZmZpY2llbnRacm9GZWUAAAAAAAcAAAAAAAAAEEludmFsaWRGZWVBbW91bnQAAAAIAAAAAAAAAA1JbnZhbGlkRXhwaXJ5AAAAAAAACQAAAAAAAAAMSW52YWxpZEluZGV4AAAACgAAAAAAAAAMSW52YWxpZE5vbmNlAAAACwAAAAAAAAASSW52YWxpZFBheWxvYWRIYXNoAAAAAAAMAAAAAAAAABVJbnZhbGlkUmVjZWl2ZUxpYnJhcnkAAAAAAAANAAAAAAAAABFPbmx5Tm9uRGVmYXVsdExpYgAAAAAAAA4AAAAAAAAADk9ubHlSZWNlaXZlTGliAAAAAAAPAAAAAAAAABFPbmx5UmVnaXN0ZXJlZExpYgAAAAAAABAAAAAAAAAAC09ubHlTZW5kTGliAAAAABEAAAAAAAAAFFBhdGhOb3RJbml0aWFsaXphYmxlAAAAEgAAAAAAAAARUGF0aE5vdFZlcmlmaWFibGUAAAAAAAATAAAAAAAAABNQYXlsb2FkSGFzaE5vdEZvdW5kAAAAABQAAAAAAAAACVNhbWVWYWx1ZQAAAAAAABUAAAAAAAAADFVuYXV0aG9yaXplZAAAABYAAAAAAAAADlVuc3VwcG9ydGVkRWlkAAAAAAAXAAAAAAAAAApaZXJvWnJvRmVlAAAAAAAYAAAAAAAAAA5acm9VbmF2YWlsYWJsZQAAAAAAGQAAAAEAAAAtUGFyYW1ldGVycyBmb3Igc2VuZGluZyBhIGNyb3NzLWNoYWluIG1lc3NhZ2UuAAAAAAAAAAAAAA9NZXNzYWdpbmdQYXJhbXMAAAAABQAAACtEZXN0aW5hdGlvbiBlbmRwb2ludCBJRCAoY2hhaW4gaWRlbnRpZmllcikuAAAAAAdkc3RfZWlkAAAAAAQAAAAcVGhlIG1lc3NhZ2UgcGF5bG9hZCB0byBzZW5kLgAAAAdtZXNzYWdlAAAAAA4AAAAhRW5jb2RlZCBleGVjdXRvciBhbmQgRFZOIG9wdGlvbnMuAAAAAAAAB29wdGlvbnMAAAAADgAAADlXaGV0aGVyIHRvIHBheSBmZWVzIGluIFpSTyB0b2tlbiBpbnN0ZWFkIG9mIG5hdGl2ZSB0b2tlbi4AAAAAAAAKcGF5X2luX3pybwAAAAAAAQAAADVSZWNlaXZlciBhZGRyZXNzIG9uIHRoZSBkZXN0aW5hdGlvbiBjaGFpbiAoMzIgYnl0ZXMpLgAAAAAAAAhyZWNlaXZlcgAAA+4AAAAgAAAAAQAAAE1Tb3VyY2UgbWVzc2FnZSBpbmZvcm1hdGlvbiBpZGVudGlmeWluZyB3aGVyZSBhIGNyb3NzLWNoYWluIG1lc3NhZ2UgY2FtZSBmcm9tLgAAAAAAAAAAAAAGT3JpZ2luAAAAAAADAAAAF05vbmNlIGZvciB0aGlzIHBhdGh3YXkuAAAAAAVub25jZQAAAAAAAAYAAAAuU2VuZGVyIGFkZHJlc3Mgb24gdGhlIHNvdXJjZSBjaGFpbiAoMzIgYnl0ZXMpLgAAAAAABnNlbmRlcgAAAAAD7gAAACAAAAAmU291cmNlIGVuZHBvaW50IElEIChjaGFpbiBpZGVudGlmaWVyKS4AAAAAAAdzcmNfZWlkAAAAAAQAAAABAAAAKEZlZSBzdHJ1Y3R1cmUgZm9yIGNyb3NzLWNoYWluIG1lc3NhZ2luZy4AAAAAAAAADE1lc3NhZ2luZ0ZlZQAAAAIAAAAfRmVlIHBhaWQgaW4gbmF0aXZlIHRva2VuIChYTE0pLgAAAAAKbmF0aXZlX2ZlZQAAAAAACwAAAChGZWUgcGFpZCBpbiBaUk8gdG9rZW4gKExheWVyWmVybyB0b2tlbikuAAAAB3pyb19mZWUAAAAACwAAAAEAAABCUmVjZWlwdCByZXR1cm5lZCBhZnRlciBzdWNjZXNzZnVsbHkgc2VuZGluZyBhIGNyb3NzLWNoYWluIG1lc3NhZ2UuAAAAAAAAAAAAEE1lc3NhZ2luZ1JlY2VpcHQAAAADAAAAKVRoZSBmZWVzIGNoYXJnZWQgZm9yIHNlbmRpbmcgdGhlIG1lc3NhZ2UuAAAAAAAAA2ZlZQAAAAfQAAAADE1lc3NhZ2luZ0ZlZQAAACtHbG9iYWxseSB1bmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIG1lc3NhZ2UuAAAAAARndWlkAAAD7gAAACAAAAAkVGhlIG91dGJvdW5kIG5vbmNlIGZvciB0aGlzIHBhdGh3YXkuAAAABW5vbmNlAAAAAAAABgAAAAIAAAA4VHlwZSBvZiBtZXNzYWdlIGxpYnJhcnkgaW5kaWNhdGluZyBzdXBwb3J0ZWQgb3BlcmF0aW9ucy4AAAAAAAAADk1lc3NhZ2VMaWJUeXBlAAAAAAADAAAAAAAAAB9TdXBwb3J0cyBvbmx5IHNlbmRpbmcgbWVzc2FnZXMuAAAAAARTZW5kAAAAAAAAACFTdXBwb3J0cyBvbmx5IHJlY2VpdmluZyBtZXNzYWdlcy4AAAAAAAAHUmVjZWl2ZQAAAAAAAAAALVN1cHBvcnRzIGJvdGggc2VuZGluZyBhbmQgcmVjZWl2aW5nIG1lc3NhZ2VzLgAAAAAAAA5TZW5kQW5kUmVjZWl2ZQAAAAAAAQAAALdWZXJzaW9uIGluZm9ybWF0aW9uIGZvciBhIG1lc3NhZ2UgbGlicmFyeS4KCk5vdGU6IGBtaW5vcmAgYW5kIGBlbmRwb2ludF92ZXJzaW9uYCB1c2UgYHUzMmAgaW5zdGVhZCBvZiBgdThgIGJlY2F1c2UgU3RlbGxhciBkb2VzIG5vdApzdXBwb3J0IGB1OGAgdHlwZXMgaW4gY29udHJhY3QgaW50ZXJmYWNlIGZ1bmN0aW9ucy4AAAAAAAAAABFNZXNzYWdlTGliVmVyc2lvbgAAAAAAAAMAAAAzRW5kcG9pbnQgdmVyc2lvbiAoc2hvdWxkIG5vdCBleGNlZWQgdTg6Ok1BWCA9IDI1NSkuAAAAABBlbmRwb2ludF92ZXJzaW9uAAAABAAAABVNYWpvciB2ZXJzaW9uIG51bWJlci4AAAAAAAAFbWFqb3IAAAAAAAAGAAAAN01pbm9yIHZlcnNpb24gbnVtYmVyIChzaG91bGQgbm90IGV4Y2VlZCB1ODo6TUFYID0gMjU1KS4AAAAABW1pbm9yAAAAAAAABAAAAAEAAAA2VGltZW91dCBjb25maWd1cmF0aW9uIGZvciByZWNlaXZlIGxpYnJhcnkgdHJhbnNpdGlvbnMuAAAAAAAAAAAAB1RpbWVvdXQAAAAAAgAAAChVbml4IHRpbWVzdGFtcCB3aGVuIHRoZSB0aW1lb3V0IGV4cGlyZXMuAAAABmV4cGlyeQAAAAAABgAAAClUaGUgbmV3IGxpYnJhcnkgYWRkcmVzcyB0byB0cmFuc2l0aW9uIHRvLgAAAAAAAANsaWIAAAAAEwAAAAEAAAA1UGFyYW1ldGVycyBmb3Igc2V0dGluZyBtZXNzYWdlIGxpYnJhcnkgY29uZmlndXJhdGlvbi4AAAAAAAAAAAAADlNldENvbmZpZ1BhcmFtAAAAAAADAAAAH1hEUi1lbmNvZGVkIGNvbmZpZ3VyYXRpb24gZGF0YS4AAAAABmNvbmZpZwAAAAAADgAAADBUaGUgdHlwZSBvZiBjb25maWd1cmF0aW9uIChlLmcuLCBleGVjdXRvciwgVUxOKS4AAAALY29uZmlnX3R5cGUAAAAABAAAACdUaGUgZW5kcG9pbnQgSUQgdGhpcyBjb25maWcgYXBwbGllcyB0by4AAAAAA2VpZAAAAAAEAAAAAQAAADFSZXNvbHZlZCBsaWJyYXJ5IGluZm9ybWF0aW9uIHdpdGggZGVmYXVsdCBzdGF0dXMuAAAAAAAAAAAAAA9SZXNvbHZlZExpYnJhcnkAAAAAAgAAAERXaGV0aGVyIHRoaXMgaXMgdGhlIGRlZmF1bHQgbGlicmFyeSAodHJ1ZSkgb3IgT0FwcC1zcGVjaWZpYyAoZmFsc2UpLgAAAAppc19kZWZhdWx0AAAAAAABAAAAHVRoZSByZXNvbHZlZCBsaWJyYXJ5IGFkZHJlc3MuAAAAAAAAA2xpYgAAAAATAAAAAQAAAEhPdXRib3VuZCBwYWNrZXQgY29udGFpbmluZyBhbGwgaW5mb3JtYXRpb24gZm9yIGNyb3NzLWNoYWluIHRyYW5zbWlzc2lvbi4AAAAAAAAADk91dGJvdW5kUGFja2V0AAAAAAAHAAAAGERlc3RpbmF0aW9uIGVuZHBvaW50IElELgAAAAdkc3RfZWlkAAAAAAQAAAAsR2xvYmFsbHkgdW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoaXMgbWVzc2FnZS4AAAAEZ3VpZAAAA+4AAAAgAAAAFFRoZSBtZXNzYWdlIHBheWxvYWQuAAAAB21lc3NhZ2UAAAAADgAAACBPdXRib3VuZCBub25jZSBmb3IgdGhpcyBwYXRod2F5LgAAAAVub25jZQAAAAAAAAYAAAAxUmVjZWl2ZXIgYWRkcmVzcyBvbiBkZXN0aW5hdGlvbiBjaGFpbiAoMzIgYnl0ZXMpLgAAAAAAAAhyZWNlaXZlcgAAA+4AAAAgAAAAH1NlbmRlciBhZGRyZXNzIG9uIHNvdXJjZSBjaGFpbi4AAAAABnNlbmRlcgAAAAAAEwAAABNTb3VyY2UgZW5kcG9pbnQgSUQuAAAAAAdzcmNfZWlkAAAAAAQAAAABAAAAK0EgZmVlIHJlY2lwaWVudCB3aXRoIHRoZSBhbW91bnQgdG8gYmUgcGFpZC4AAAAAAAAAAAxGZWVSZWNpcGllbnQAAAACAAAAFUFtb3VudCBvZiBmZWUgdG8gcGF5LgAAAAAAAAZhbW91bnQAAAAAAAsAAAAfVGhlIGFkZHJlc3MgdG8gc2VuZCB0aGUgZmVlIHRvLgAAAAACdG8AAAAAABMAAAABAAAAPFJlc3VsdCBvZiBzZW5kIG9wZXJhdGlvbiBjb250YWluaW5nIGZlZXMgYW5kIGVuY29kZWQgcGFja2V0LgAAAAAAAAANRmVlc0FuZFBhY2tldAAAAAAAAAMAAAAqVGhlIGVuY29kZWQgcGFja2V0IHJlYWR5IGZvciB0cmFuc21pc3Npb24uAAAAAAAOZW5jb2RlZF9wYWNrZXQAAAAAAA4AAAA/TGlzdCBvZiBuYXRpdmUgdG9rZW4gZmVlIHJlY2lwaWVudHMgKGV4ZWN1dG9yLCBEVk5zLCB0cmVhc3VyeSkuAAAAABVuYXRpdmVfZmVlX3JlY2lwaWVudHMAAAAAAAPqAAAH0AAAAAxGZWVSZWNpcGllbnQAAAAsTGlzdCBvZiBaUk8gdG9rZW4gZmVlIHJlY2lwaWVudHMgKHRyZWFzdXJ5KS4AAAASenJvX2ZlZV9yZWNpcGllbnRzAAAAAAPqAAAH0AAAAAxGZWVSZWNpcGllbnQAAAABAAAA4VBhcmFtZXRlcnMgZm9yIERWTiBmZWUgY2FsY3VsYXRpb24uCgpDb250YWlucyBhbGwgaW5wdXRzIG5lZWRlZCBieSB0aGUgZmVlIGxpYnJhcnkgdG8gY2FsY3VsYXRlIHZlcmlmaWNhdGlvbiBmZWVzCmZvciBjcm9zcy1jaGFpbiBtZXNzYWdlcy4gSW5jbHVkZXMgbWVzc2FnZSBwYXJhbWV0ZXJzLCBjb21tb24gY29uZmlndXJhdGlvbiwKYW5kIGRlc3RpbmF0aW9uLXNwZWNpZmljIHNldHRpbmdzLgAAAAAAAAAAAAAMRHZuRmVlUGFyYW1zAAAACgAAACdOdW1iZXIgb2YgYmxvY2sgY29uZmlybWF0aW9ucyByZXF1aXJlZC4AAAAADWNvbmZpcm1hdGlvbnMAAAAAAAAGAAAATERlZmF1bHQgZmVlIG11bHRpcGxpZXIgaW4gYmFzaXMgcG9pbnRzICh1c2VkIGlmIG5vIGRzdC1zcGVjaWZpYyBtdWx0aXBsaWVyKS4AAAAWZGVmYXVsdF9tdWx0aXBsaWVyX2JwcwAAAAAABAAAACtEZXN0aW5hdGlvbiBlbmRwb2ludCBJRCAoY2hhaW4gaWRlbnRpZmllcikuAAAAAAdkc3RfZWlkAAAAAAQAAAAjTWluaW11bSBmZWUgbWFyZ2luIGluIFVTRCAoc2NhbGVkKS4AAAAAEGZsb29yX21hcmdpbl91c2QAAAAKAAABED09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CkRlc3RpbmF0aW9uLVNwZWNpZmljIENvbmZpZ3VyYXRpb24KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KR2FzIGVzdGltYXRlIGZvciB2ZXJpZmljYXRpb24gb24gZGVzdGluYXRpb24gY2hhaW4uAAAAA2dhcwAAAAAKAAAARkRlc3RpbmF0aW9uLXNwZWNpZmljIGZlZSBtdWx0aXBsaWVyIGluIGJhc2lzIHBvaW50cyAoMCA9IHVzZSBkZWZhdWx0KS4AAAAAAA5tdWx0aXBsaWVyX2JwcwAAAAAABAAAAAtEVk4gb3B0aW9ucwAAAAAHb3B0aW9ucwAAAAAOAAABED09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CkNvbW1vbiBDb25maWd1cmF0aW9uCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClByaWNlIGZlZWQgY29udHJhY3QgYWRkcmVzcyBmb3IgZ2FzIHByaWNlIGFuZCBleGNoYW5nZSByYXRlIGRhdGEuAAAACnByaWNlX2ZlZWQAAAAAABMAAAAnTnVtYmVyIG9mIHJlcXVpcmVkIHNpZ25hdHVyZXMgKHF1b3J1bSkuAAAAAAZxdW9ydW0AAAAAAAQAAADlPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KTWVzc2FnZSBQYXJhbWV0ZXJzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClRoZSBPQXBwIHNlbmRlciBhZGRyZXNzLgAAAAAAAAZzZW5kZXIAAAAAABMAAAABAAAA41BhcmFtZXRlcnMgZm9yIGV4ZWN1dG9yIGZlZSBjYWxjdWxhdGlvbi4KCkNvbnRhaW5zIGFsbCBpbnB1dHMgbmVlZGVkIGJ5IHRoZSBmZWUgbGlicmFyeSB0byBjYWxjdWxhdGUgZXhlY3V0aW9uIGZlZXMKZm9yIGNyb3NzLWNoYWluIG1lc3NhZ2VzLiBJbmNsdWRlcyBtZXNzYWdlIHBhcmFtZXRlcnMsIGNvbW1vbiBjb25maWd1cmF0aW9uLAphbmQgZGVzdGluYXRpb24tc3BlY2lmaWMgc2V0dGluZ3MuAAAAAAAAAAAJRmVlUGFyYW1zAAAAAAAACwAAACZTaXplIG9mIHRoZSBtZXNzYWdlIGNhbGxkYXRhIGluIGJ5dGVzLgAAAAAADWNhbGxkYXRhX3NpemUAAAAAAAAEAAAATERlZmF1bHQgZmVlIG11bHRpcGxpZXIgaW4gYmFzaXMgcG9pbnRzICh1c2VkIGlmIG5vIGRzdC1zcGVjaWZpYyBtdWx0aXBsaWVyKS4AAAAWZGVmYXVsdF9tdWx0aXBsaWVyX2JwcwAAAAAABAAAACtEZXN0aW5hdGlvbiBlbmRwb2ludCBJRCAoY2hhaW4gaWRlbnRpZmllcikuAAAAAAdkc3RfZWlkAAAAAAQAAAAjTWluaW11bSBmZWUgbWFyZ2luIGluIFVTRCAoc2NhbGVkKS4AAAAAEGZsb29yX21hcmdpbl91c2QAAAAKAAAANkJhc2UgZ2FzIGZvciBlYWNoIGx6Q29tcG9zZSBjYWxsIG9uIGRlc3RpbmF0aW9uIGNoYWluLgAAAAAAE2x6X2NvbXBvc2VfYmFzZV9nYXMAAAAABgAAARM9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpEZXN0aW5hdGlvbi1TcGVjaWZpYyBDb25maWd1cmF0aW9uCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CkJhc2UgZ2FzIGZvciBselJlY2VpdmUgZXhlY3V0aW9uIG9uIGRlc3RpbmF0aW9uIGNoYWluLgAAAAATbHpfcmVjZWl2ZV9iYXNlX2dhcwAAAAAGAAAARkRlc3RpbmF0aW9uLXNwZWNpZmljIGZlZSBtdWx0aXBsaWVyIGluIGJhc2lzIHBvaW50cyAoMCA9IHVzZSBkZWZhdWx0KS4AAAAAAA5tdWx0aXBsaWVyX2JwcwAAAAAABAAAACxNYXhpbXVtIG5hdGl2ZSB0b2tlbiB2YWx1ZSB0aGF0IGNhbiBiZSBzZW50LgAAAApuYXRpdmVfY2FwAAAAAAAKAAAARkVuY29kZWQgZXhlY3V0b3Igb3B0aW9ucyAobHpSZWNlaXZlIGdhcywgbHpDb21wb3NlLCBuYXRpdmVEcm9wLCBldGMuKS4AAAAAAAdvcHRpb25zAAAAAA4AAAEQPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KQ29tbW9uIENvbmZpZ3VyYXRpb24KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUHJpY2UgZmVlZCBjb250cmFjdCBhZGRyZXNzIGZvciBnYXMgcHJpY2UgYW5kIGV4Y2hhbmdlIHJhdGUgZGF0YS4AAAAKcHJpY2VfZmVlZAAAAAAAEwAAAOU9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpNZXNzYWdlIFBhcmFtZXRlcnMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KVGhlIE9BcHAgc2VuZGVyIGFkZHJlc3MuAAAAAAAABnNlbmRlcgAAAAAAEwAAAAEAAACER2FzIHByaWNlIGluZm9ybWF0aW9uIGZvciBhIGRlc3RpbmF0aW9uIGVuZHBvaW50LgoKQ29udGFpbnMgdGhlIGV4Y2hhbmdlIHJhdGUgYW5kIGdhcyBjb3N0cyBuZWVkZWQgZm9yIGNyb3NzLWNoYWluIGZlZSBjYWxjdWxhdGlvbnMuAAAAAAAAAAVQcmljZQAAAAAAAAMAAAA3R2FzIGNvc3QgcGVyIGJ5dGUgb2YgY2FsbGRhdGEgb24gdGhlIGRlc3RpbmF0aW9uIGNoYWluLgAAAAAMZ2FzX3Blcl9ieXRlAAAABAAAAEJHYXMgcHJpY2UgaW4gdGhlIHNtYWxsZXN0IHVuaXQgKHdlaSBmb3IgRVZNLCBzdHJvb3BzIGZvciBTdGVsbGFyKS4AAAAAABFnYXNfcHJpY2VfaW5fdW5pdAAAAAAAAAYAAACpUHJpY2UgcmF0aW8gPSAocmVtb3RlIG5hdGl2ZSB0b2tlbiBwcmljZSAvIGxvY2FsIG5hdGl2ZSB0b2tlbiBwcmljZSkgKiBQUklDRV9SQVRJT19ERU5PTUlOQVRPUi4KVXNlZCB0byBjb252ZXJ0IGRlc3RpbmF0aW9uIGNoYWluIGdhcyBjb3N0cyB0byBzb3VyY2UgY2hhaW4gbmF0aXZlIHRva2VuLgAAAAAAAAtwcmljZV9yYXRpbwAAAAAKAAAAAQAAAIBGZWUgZXN0aW1hdGlvbiByZXN1bHQgd2l0aCBkZXRhaWxlZCBicmVha2Rvd24uCgpDb250YWlucyB0aGUgY2FsY3VsYXRlZCBmZWUgYW5kIGFsbCBpbnRlcm1lZGlhdGUgdmFsdWVzIHVzZWQgaW4gdGhlIGNhbGN1bGF0aW9uLgAAAAAAAAALRmVlRXN0aW1hdGUAAAAABAAAADBTb3VyY2UgY2hhaW4gbmF0aXZlIHRva2VuIHByaWNlIGluIFVTRCAoc2NhbGVkKS4AAAAQbmF0aXZlX3ByaWNlX3VzZAAAAAoAAAAlUHJpY2UgcmF0aW8gdXNlZCBmb3IgdGhlIGNhbGN1bGF0aW9uLgAAAAAAAAtwcmljZV9yYXRpbwAAAAAKAAAAMkRlbm9taW5hdG9yIGZvciB0aGUgcHJpY2UgcmF0aW8gKHR5cGljYWxseSAxMF4yMCkuAAAAAAAXcHJpY2VfcmF0aW9fZGVub21pbmF0b3IAAAAACgAAADFUb3RhbCBnYXMgZmVlIGluIHNvdXJjZSBjaGFpbiBuYXRpdmUgdG9rZW4gdW5pdHMuAAAAAAAADXRvdGFsX2dhc19mZWUAAAAAAAALAAAABAAAAB1QYWNrZXRDb2RlY1YxRXJyb3I6IDExMDAtMTEwOQAAAAAAAAAAAAASUGFja2V0Q29kZWNWMUVycm9yAAAAAAACAAAAAAAAABNJbnZhbGlkUGFja2V0SGVhZGVyAAAABEwAAAAAAAAAFEludmFsaWRQYWNrZXRWZXJzaW9uAAAETQAAAAQAAAAdV29ya2VyT3B0aW9uc0Vycm9yOiAxMTEwLTExMTkAAAAAAAAAAAAAEldvcmtlck9wdGlvbnNFcnJvcgAAAAAACQAAAAAAAAASSW52YWxpZEJ5dGVzTGVuZ3RoAAAAAARWAAAAAAAAABlJbnZhbGlkTGVnYWN5T3B0aW9uc1R5cGUxAAAAAAAEVwAAAAAAAAAZSW52YWxpZExlZ2FjeU9wdGlvbnNUeXBlMgAAAAAABFgAAAAAAAAAEUludmFsaWRPcHRpb25UeXBlAAAAAAAEWQAAAAAAAAAOSW52YWxpZE9wdGlvbnMAAAAABFoAAAAAAAAAD0ludmFsaWRXb3JrZXJJZAAAAARbAAAAAAAAAB1MZWdhY3lPcHRpb25zVHlwZTFHYXNPdmVyZmxvdwAAAAAABFwAAAAAAAAAIExlZ2FjeU9wdGlvbnNUeXBlMkFtb3VudE92ZXJmbG93AAAEXQAAAAAAAAAdTGVnYWN5T3B0aW9uc1R5cGUyR2FzT3ZlcmZsb3cAAAAAAAReAAAABAAAABxCdWZmZXJSZWFkZXJFcnJvcjogMTAwMC0xMDA5AAAAAAAAABFCdWZmZXJSZWFkZXJFcnJvcgAAAAAAAAIAAAAAAAAADUludmFsaWRMZW5ndGgAAAAAAAPoAAAAAAAAABVJbnZhbGlkQWRkcmVzc1BheWxvYWQAAAAAAAPpAAAABAAAABxCdWZmZXJXcml0ZXJFcnJvcjogMTAxMC0xMDE5AAAAAAAAABFCdWZmZXJXcml0ZXJFcnJvcgAAAAAAAAEAAAAAAAAAFUludmFsaWRBZGRyZXNzUGF5bG9hZAAAAAAAA/IAAAAEAAAAH1R0bENvbmZpZ3VyYWJsZUVycm9yOiAxMDIwLTEwMjkAAAAAAAAAABRUdGxDb25maWd1cmFibGVFcnJvcgAAAAMAAAAAAAAAEEludmFsaWRUdGxDb25maWcAAAP8AAAAAAAAAA9UdGxDb25maWdGcm96ZW4AAAAD/QAAAAAAAAAWVHRsQ29uZmlnQWxyZWFkeUZyb3plbgAAAAAD/gAAAAQAAAAXT3duYWJsZUVycm9yOiAxMDMwLTEwMzkAAAAAAAAAAAxPd25hYmxlRXJyb3IAAAAGAAAAAAAAABNJbnZhbGlkUGVuZGluZ093bmVyAAAABAYAAAAAAAAACkludmFsaWRUdGwAAAAABAcAAAAAAAAAEU5vUGVuZGluZ1RyYW5zZmVyAAAAAAAECAAAAAAAAAAPT3duZXJBbHJlYWR5U2V0AAAABAkAAAAAAAAAC093bmVyTm90U2V0AAAABAoAAAAAAAAAElRyYW5zZmVySW5Qcm9ncmVzcwAAAAAECwAAAAQAAAAYQnl0ZXNFeHRFcnJvcjogMTA0MC0xMDQ5AAAAAAAAAA1CeXRlc0V4dEVycm9yAAAAAAAAAQAAAAAAAAAOTGVuZ3RoTWlzbWF0Y2gAAAAABBAAAAAEAAAAG1VwZ3JhZGVhYmxlRXJyb3I6IDEwNTAtMTA1OQAAAAAAAAAAEFVwZ3JhZGVhYmxlRXJyb3IAAAADAAAAAAAAABRJbnZhbGlkTWlncmF0aW9uRGF0YQAABBoAAAAAAAAAE01pZ3JhdGlvbk5vdEFsbG93ZWQAAAAEGwAAAAAAAAAOVXBncmFkZXNGcm96ZW4AAAAABBwAAAAEAAAAGE11bHRpc2lnRXJyb3I6IDEwNjAtMTA2OQAAAAAAAAANTXVsdGlzaWdFcnJvcgAAAAAAAAgAAAAAAAAAEkFscmVhZHlJbml0aWFsaXplZAAAAAAEJAAAAAAAAAANSW52YWxpZFNpZ25lcgAAAAAABCUAAAAAAAAADlNpZ25hdHVyZUVycm9yAAAAAAQmAAAAAAAAABNTaWduZXJBbHJlYWR5RXhpc3RzAAAABCcAAAAAAAAADlNpZ25lck5vdEZvdW5kAAAAAAQoAAAAAAAAAB1Ub3RhbFNpZ25lcnNMZXNzVGhhblRocmVzaG9sZAAAAAAABCkAAAAAAAAAD1Vuc29ydGVkU2lnbmVycwAAAAQqAAAAAAAAAA1aZXJvVGhyZXNob2xkAAAAAAAEKwAAAAUAAAAwRXZlbnQgZW1pdHRlZCB3aGVuIGEgc2lnbmVyIGlzIGFkZGVkIG9yIHJlbW92ZWQuAAAAAAAAAAlTaWduZXJTZXQAAAAAAAABAAAACnNpZ25lcl9zZXQAAAAAAAIAAAAAAAAABnNpZ25lcgAAAAAD7gAAABQAAAABAAAAAAAAAAZhY3RpdmUAAAAAAAEAAAAAAAAAAgAAAAUAAAA2RXZlbnQgZW1pdHRlZCB3aGVuIHRoZSBzaWduYXR1cmUgdGhyZXNob2xkIGlzIGNoYW5nZWQuAAAAAAAAAAAADFRocmVzaG9sZFNldAAAAAEAAAANdGhyZXNob2xkX3NldAAAAAAAAAEAAAAAAAAACXRocmVzaG9sZAAAAAAAAAQAAAAAAAAAAgAAAAIAAAAAAAAAAAAAAA9NdWx0aXNpZ1N0b3JhZ2UAAAAAAgAAAAAAAAAAAAAAB1NpZ25lcnMAAAAAAAAAAAAAAAAJVGhyZXNob2xkAAAAAAAABQAAAFdFdmVudCBlbWl0dGVkIHdoZW4gb3duZXJzaGlwIGlzIHRyYW5zZmVycmVkIChib3RoIHNpbmdsZS1zdGVwIGFuZCB0d28tc3RlcCBjb21wbGV0aW9uKS4AAAAAAAAAABRPd25lcnNoaXBUcmFuc2ZlcnJlZAAAAAEAAAAVb3duZXJzaGlwX3RyYW5zZmVycmVkAAAAAAAAAgAAAAAAAAAJb2xkX293bmVyAAAAAAAAEwAAAAAAAAAAAAAACW5ld19vd25lcgAAAAAAABMAAAAAAAAAAgAAAAUAAAA7RXZlbnQgZW1pdHRlZCB3aGVuIGEgMi1zdGVwIG93bmVyc2hpcCB0cmFuc2ZlciBpcyBwcm9wb3NlZC4AAAAAAAAAABVPd25lcnNoaXBUcmFuc2ZlcnJpbmcAAAAAAAABAAAAFm93bmVyc2hpcF90cmFuc2ZlcnJpbmcAAAAAAAMAAAAAAAAACW9sZF9vd25lcgAAAAAAABMAAAAAAAAAAAAAAAluZXdfb3duZXIAAAAAAAATAAAAAAAAAAAAAAADdHRsAAAAAAQAAAAAAAAAAgAAAAUAAAAqRXZlbnQgZW1pdHRlZCB3aGVuIG93bmVyc2hpcCBpcyByZW5vdW5jZWQuAAAAAAAAAAAAEk93bmVyc2hpcFJlbm91bmNlZAAAAAAAAQAAABNvd25lcnNoaXBfcmVub3VuY2VkAAAAAAEAAAAAAAAACW9sZF9vd25lcgAAAAAAABMAAAAAAAAAAgAAAAIAAAAAAAAAAAAAAA5Pd25hYmxlU3RvcmFnZQAAAAAAAgAAAAAAAAAAAAAABU93bmVyAAAAAAAAAAAAAAAAAAAMUGVuZGluZ093bmVyAAAAAQAAAElUVEwgY29uZmlndXJhdGlvbjogdGhyZXNob2xkICh3aGVuIHRvIGV4dGVuZCkgYW5kIGV4dGVuZF90byAodGFyZ2V0IFRUTCkuAAAAAAAAAAAAAAlUdGxDb25maWcAAAAAAAACAAAAKFRhcmdldCBUVEwgYWZ0ZXIgZXh0ZW5zaW9uIChpbiBsZWRnZXJzKS4AAAAJZXh0ZW5kX3RvAAAAAAAABAAAADNUVEwgdGhyZXNob2xkIHRoYXQgdHJpZ2dlcnMgZXh0ZW5zaW9uIChpbiBsZWRnZXJzKS4AAAAACXRocmVzaG9sZAAAAAAAAAQAAAAFAAAAJ0V2ZW50IGVtaXR0ZWQgd2hlbiBUVEwgY29uZmlncyBhcmUgc2V0LgAAAAAAAAAADVR0bENvbmZpZ3NTZXQAAAAAAAABAAAAD3R0bF9jb25maWdzX3NldAAAAAACAAAAAAAAAAhpbnN0YW5jZQAAA+gAAAfQAAAACVR0bENvbmZpZwAAAAAAAAAAAAAAAAAACnBl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";
11
+ export declare const WASM_BASE64 = "AGFzbQEAAAABzgEhYAJ+fgF+YAF+AX5gAAF+YAN+fn4BfmAEfn5+fgF+YAN/fn4AYAAAYAABf2ABfwF/YAF/AX5gAn5+AX9gAX8AYAN+fn4AYAF+AGACfn4AYAN+fn8AYAJ/fgBgAn9/AGADf39/AGACfn8AYAR/f39/AX5gAX4Bf2ACf38BfmAFfn9/f38AYAN+f38BfmACf38Bf2ADf35+AX5gA39/fgBgB35+fn5+fn4BfmAFf35/fn4AYAR+fn9/AX5gCX5+fn5+fn5+fgF+YAN/f38BfwKhAjABbAExAAABYQEwAAEBeAE3AAIBdgEzAAEBdgExAAABYgE4AAEBYgE2AAABYgFmAAMBYwEyAAMBYwExAAEBdgFkAAABdgEyAAABdgE2AAABeAExAAABdgFfAAIBeAE0AAIBaQEwAAEBdgE4AAEBeAEwAAABYgFlAAABYgEwAAEBYwEwAAMBbAFfAAMBbAEyAAABaQFfAAEBZAFfAAMBaQE4AAEBaQE3AAEBYgE0AAIBYgFfAAEBbAE2AAEBeAEzAAIBeAE4AAIBaQEzAAABaQE1AAEBaQE0AAEBYgEzAAABbQFhAAQBdgFnAAABYgFtAAMBaQE2AAABYgFqAAABYgEyAAQBbQE5AAMBbAEwAAABbAE4AAABeAE1AAEBbAE3AAQDqwGpAQUGBwYIBwkKCwsJDAICBgoNDgcPAhAKEQoGBxIQBRMCEBALARQNFRMCFgsREQcRFQgLCxUHFQcJFRMREBcQEQUDEBARGBkHEBAQCBYaARsAAAALCwAACwANAwANAA0NAgECAQIBAgEBAgIAAQICHB0FHBEWAAECAx4fEREJDQYLAwELAQIRAgIAEA0TAQICAQIAAwARABAJAgsRAgIGEhAQEgkREhARICAEBQFwAQEBBQMBABEGIQR/AUGAgMAAC38AQeCDwAALfwBB8IrAAAt/AEHwisAACwekBzcGbWVtb3J5AgAMX19jaGVja19hdXRoAHAKc2V0X3BhdXNlZAB9CXNldF9hZG1pbgB/GXNldF9zdXBwb3J0ZWRfbWVzc2FnZV9saWIAgAENc2V0X2FsbG93bGlzdACBAQxzZXRfZGVueWxpc3QAhAEac2V0X2RlZmF1bHRfbXVsdGlwbGllcl9icHMAhQETc2V0X2RlcG9zaXRfYWRkcmVzcwCHARpzZXRfc3VwcG9ydGVkX29wdGlvbl90eXBlcwCJARJzZXRfd29ya2VyX2ZlZV9saWIAigEOc2V0X3ByaWNlX2ZlZWQAjAEGcGF1c2VkAI8BCGlzX2FkbWluAJABBmFkbWlucwCRARhpc19zdXBwb3J0ZWRfbWVzc2FnZV9saWIAkgEMbWVzc2FnZV9saWJzAJMBD2lzX29uX2FsbG93bGlzdACUAQ5hbGxvd2xpc3Rfc2l6ZQCVAQ5pc19vbl9kZW55bGlzdACWAQdoYXNfYWNsAJcBFmRlZmF1bHRfbXVsdGlwbGllcl9icHMAmAEPZGVwb3NpdF9hZGRyZXNzAJkBGmdldF9zdXBwb3J0ZWRfb3B0aW9uX3R5cGVzAJsBDndvcmtlcl9mZWVfbGliAJwBCnByaWNlX2ZlZWQAnQEHZ2V0X2ZlZQCeAQphc3NpZ25fam9iAKEBDnNldF9kc3RfY29uZmlnAKQBCmRzdF9jb25maWcApQEDdmlkAKYBDmhhc2hfY2FsbF9kYXRhAKcBDV9fY29uc3RydWN0b3IAqQESc2V0X2FkbWluX2J5X2FkbWluALABB3VwZ3JhZGUAsQEHbWlncmF0ZQCzAQZmcmVlemUAtAEJaXNfZnJvemVuALYBCmF1dGhvcml6ZXIAtwEKc2V0X3NpZ25lcgC4AQ1zZXRfdGhyZXNob2xkALwBC2dldF9zaWduZXJzAL0BDXRvdGFsX3NpZ25lcnMAvgEJaXNfc2lnbmVyAL8BCXRocmVzaG9sZADAARF2ZXJpZnlfc2lnbmF0dXJlcwDBARN2ZXJpZnlfbl9zaWduYXR1cmVzAMIBE2V4dGVuZF9pbnN0YW5jZV90dGwAwwEPc2V0X3R0bF9jb25maWdzAMUBC3R0bF9jb25maWdzAMgBEmZyZWV6ZV90dGxfY29uZmlncwDLARVpc190dGxfY29uZmlnc19mcm96ZW4AzAEBXwMBCl9fZGF0YV9lbmQDAgtfX2hlYXBfYmFzZQMDCvOiAakBNwEBfkIAIQMCQAJAIAFCAlENACABp0EBcQ0BIAAgAjcDCEIBIQMLIAAgAzcDAA8LELGAgIAAAAsJABDNgYCAAAALFAAQs4CAgABBABC0gICAAEH9AXELSAEBfyOAgICAAEEQayIAJICAgIAAIABBBGoQyYGAgAACQCAAKAIEQQFH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hkIEhBCEgICAABC5gYCAAAJAIANBAWoiA0UNACACKQMAIQQgACACKQMINwMIIAAgBDcDACABIAM2AggMAQsQsYCAgAAACyACQRBqJICAgIAACxEAIAAgARDGgICAAEH/AXFFCwkAELGAgIAAAAsOABCzgICAABDCgICAAAtRAgF/AX4jgICAgABBEGsiAySAgICAACADIAEgAhDOgYCAAEIBIQQCQCADKAIADQAgACADKQMINwMIQgAhBAsgACAENwMAIANBEGokgICAgAALRAEBfyOAgICAAEEQayICJICAgIAAIAIgATcDCCACQQhqQQEQo4GAgAAhASAAQgA3AwAgACABNwMIIAJBEGokgICAgAALSAEBfyOAgICAAEEQayIDJICAgIAAIAMgAjcDCCADIAE3AwAgA0ECEKOBgIAAIQIgAEIANwMAIAAgAjcDCCADQRBqJICAgIAAC6sCAwF/An4BfyOAgICAAEEgayICJICAgIAAEM+AgIAAIgMgABCKgICAACEEAkACQAJAAkACQCABDQAgAkEIaiAEENCAgIAAIAIoAggiBUECRg0BIAVBAXFFDQIgAigCDCIFIAMQg4CAgABCIIinTw0EIAMgBa1CIIZCBIQQi4CAgAAhAwwECyAEQgJRDQJCg4CAgICWARDAgICAAAALELGAgIAAAAtCg4CAgJCWARDAgICAAAALIAMgABCMgICAACEDCyACQQE2AhAgAkEQaiADENGAgIAAIAJBEGoQ0oCAgABCjuauueqM5NU4ENOAgIAAIQMgAiAANwMYIAIgAa03AxAgA0HUhsCAAEECIAJBEGpBAhDUgICAABCNgICAABogAkEgaiSAgICAAAtoAgF/A34jgICAgABBIGsiACSAgICAABCzgICAACAAQQE2AgAgAEEQaiAAENyAgIAAAkAgACkDECIBUA0AIAAQ0oCAgAALEI6AgIAAIQIgACkDGCEDIABBIGokgICAgAAgAyACIAGnGws9AQJ/AkACQCABQgJSDQBBACECDAELQQFBAiABQv8Bg0IEURshAiABQiCIpyEDCyAAIAM2AgQgACACNgIACxUAIAAQ54CAgAAgAUIBEJaAgIAAGgtmAgF/An4jgICAgABBEGsiASSAgICAACABQQRqELmAgIAAAkAgASgCBEEBRw0AIAE1AgwhAiABNQIIIQMgABDngICAACADQiCGQgSEIAJCIIZCBIQQu4CAgAALIAFBEGokgICAgAALYwMBfwF+AX8jgICAgABBEGsiASSAgICAACABIAA3AwBCAiECQQEhAwJAA0AgA0UNASADQX9qIQMgACECDAALCyABIAI3AwggAUEIakEBEKOBgIAAIQAgAUEQaiSAgICAACAACy4AAkAgASADRg0AAAsgAK1CIIZCBIQgAq1CIIZCBIQgAa1CIIZCBIQQq4CAgAALJwAgABCBgICAABoCQCAAENaAgIAADQBCg4CAgMCXARDAgICAAAALCxkAELOAgIAAEM+AgIAAIAAQioCAgABCAlILrwIDAX8CfgF/I4CAgIAAQSBrIgIkgICAgAAQ2ICAgAAiAyAAEIqAgIAAIQQCQAJAAkACQAJAIAENACACQQhqIAQQ0ICAgAAgAigCCCIFQQJGDQEgBUEBcUUNAiACKAIMIgUgAxCDgICAAEIgiKdPDQQgAyAFrUIghkIEhBCLgICAACEDDAQLIARCAlENAkKDgICA0JYBEMCAgIAAAAsQsYCAgAAAC0KDgICA4JYBEMCAgIAAAAsgAyAAEIyAgIAAIQMLIAJBAjYCECACQRBqIAMQ0YCAgAAgAkEQahDSgICAAEHkhsCAAEEZENmAgIAAENOAgIAAIQMgAiABrTcDGCACIAA3AxAgA0GUh8CAAEECIAJBEGpBAhDUgICAABCNgICAABogAkEgaiSAgICAAAtoAgF/A34jgICAgABBIGsiACSAgICAABCzgICAACAAQQI2AgAgAEEQaiAAENyAgIAAAkAgACkDECIBUA0AIAAQ0oCAgAALEI6AgIAAIQIgACkDGCEDIABBIGokgICAgAAgAyACIAGnGwtFAgF/AX4jgICAgABBEGsiAiSAgICAACACIAAgARDOgYCAAAJAIAIoAgBBAUcNAAALIAIpAwghAyACQRBqJICAgIAAIAMLNwEBfyOAgICAAEEQayIBJICAgIAAELOAgIAAIAFBCjYCACAAIAEQ24CAgAAgAUEQaiSAgICAAAtNAQJ+QgAhAgJAAkAgARDngICAACIDQgIQt4CAgABFDQAgA0ICEICAgIAAIgJC/wGDQs0AUg0BIAAgAjcDCEIBIQILIAAgAjcDAA8LAAtNAQJ+QgAhAgJAAkAgARDngICAACIDQgEQt4CAgABFDQAgA0IBEICAgIAAIgJC/wGDQssAUg0BIAAgAjcDCEIBIQILIAAgAjcDAA8LAAtVAQN/I4CAgIAAQSBrIgAkgICAgAAQs4CAgAAgAEEENgIQIABBCGogAEEQahDegICAACAAKAIIIQEgACgCDCECIABBIGokgICAgAAgAkEAIAFBAXEbC1oCAX4BfwJAAkACQCABEOeAgIAAIgJCAhC3gICAAA0AQQAhAQwBCyACQgIQgICAgAAiAkL/AYNCBFINASACQiCIpyEDQQEhAQsgACADNgIEIAAgATYCAA8LAAtOAQJ/I4CAgIAAQRBrIgEkgICAgAAQs4CAgAAgAUEFNgIAIAEgADcDCAJAIAEQ4ICAgAAiAkUNACABENKAgIAACyABQRBqJICAgIAAIAILEgAgABDngICAAEIBELeAgIAACzcBAX8jgICAgABBEGsiASSAgICAABCzgICAACABQQk2AgAgACABENuAgIAAIAFBEGokgICAgAALNwEBfyOAgICAAEEQayIBJICAgIAAELOAgIAAIAFBBzYCACAAIAEQ24CAgAAgAUEQaiSAgICAAAtOAQJ/I4CAgIAAQRBrIgEkgICAgAAQs4CAgAAgAUEDNgIAIAEgADcDCAJAIAEQ4ICAgAAiAkUNACABENKAgIAACyABQRBqJICAgIAAIAILVQEDfyOAgICAAEEgayIAJICAgIAAELOAgIAAIABBBjYCECAAQQhqIABBEGoQ3oCAgAAgACgCCCEBIAAoAgwhAiAAQSBqJICAgIAAIAJBACABQQFxGwsZABCzgICAABDYgICAACAAEIqAgIAAQgJSC3ACAn8BfiOAgICAAEEQayIAJICAgIAAELOAgIAAQQAhASAAQQA2AgACQCAAEOeAgIAAIgJCAhC3gICAAEUNAEEBIQECQAJAIAJCAhCAgICAAKdB/wFxDgIBAgALAAtBACEBCyAAQRBqJICAgIAAIAELpgQCAX8BfiOAgICAAEEQayIBJICAgIAAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAAKAIADgsAAQIDBAUGBwgJCgALIAFB8InAgABBBhDLgICAACABKAIADQsgASABKQMIEMyAgIAADAoLIAFB9onAgABBBhDLgICAACABKAIADQogASABKQMIEMyAgIAADAkLIAFB/InAgABBCxDLgICAACABKAIADQkgASABKQMIEMyAgIAADAgLIAFBh4rAgABBCRDLgICAACABKAIADQggASABKQMIIAApAwgQzYCAgAAMBwsgAUGQisCAAEENEMuAgIAAIAEoAgANByABIAEpAwgQzICAgAAMBgsgAUGdisCAAEEIEMuAgIAAIAEoAgANBiABIAEpAwggACkDCBDNgICAAAwFCyABQaWKwIAAQRQQy4CAgAAgASgCAA0FIAEgASkDCBDMgICAAAwECyABQbmKwIAAQQ4Qy4CAgAAgASgCAA0EIAEgASkDCBDMgICAAAwDCyABQceKwIAAQRQQy4CAgAAgASgCAA0DIAEgASkDCCAANQIEQiCGQgSEEM2AgIAADAILIAFB24rAgABBDBDLgICAACABKAIADQIgASABKQMIEMyAgIAADAELIAFB54rAgABBCRDLgICAACABKAIADQEgASABKQMIEMyAgIAACyABKQMIIQIgASkDAFANAQsACyABQRBqJICAgIAAIAILLwAQs4CAgAACQCAAEN+AgIAARQ0AQQAPCwJAEN2AgIAADQBBAQ8LIAAQ44CAgAALKQACQCAAp0EBcUUNAA8LIAFB0HZqrUIghkKDgICAgJYBhBDAgICAAAALaQIBfwF+AkAgASgCCCICIAEoAgxJDQAgAEICNwMADwsgASkDACACrUIghkIEhBCEgICAACEDAkAgAkEBaiICRQ0AIAAgAzcDCCABIAI2AgggACADQv8Bg0LNAFKtNwMADwsQsYCAgAAAC5UCAgJ/BH4jgICAgABBwABrIgIkgICAgABBACEDAkADQCADQRhGDQEgAkEIaiADakICNwMAIANBCGohAwwACwtCACEEQgEhBQJAIAFC/wGDQswAUg0AIAFBuIHAgABBAyACQQhqQQMQ7ICAgAAgAkEgaiACKQMIEO2AgIAAIAIoAiBBAUYNACACKQM4IQEgAikDMCEGIAJBIGogAikDEBDtgICAACACKAIgQQFGDQAgAikDGCIHQv8Bg0IEUg0AIAIpAzghBCACKQMwIQUgACAGNwMgIAAgBTcDECAAIAE3AyggACAENwMYIAAgB0IgiD4CMEIAIQVCACEECyAAIAU3AwAgACAENwMIIAJBwABqJICAgIAACzEAAkAgAiAERg0AAAsgACABrUIghkIEhCADrUIghkIEhCACrUIghkIEhBClgICAABoLewIBfwF+AkACQAJAIAGnQf8BcSICQcQARg0AIAJBCkcNAUIAIQMgAEIANwMYIAAgAUIIiDcDEAwCCyABEKKAgIAAIQMgARCjgICAACEBIAAgAzcDGCAAIAE3AxBCACEDDAELIABCg5CAgIABNwMIQgEhAwsgACADNwMAC64BAgF/An4jgICAgABBIGsiAiSAgICAACACQQhqIAEpAxAgASkDGBDvgICAAEIBIQMCQCACKAIIDQAgAikDECEEIAJBCGogASkDACABKQMIEO+AgIAAIAIoAggNACACIAIpAxA3AxAgAiAENwMIIAIgATUCIEIghkIEhDcDGCAAQbiBwIAAQQMgAkEIakEDENSAgIAANwMIQgAhAwsgACADNwMAIAJBIGokgICAgAALRgACQAJAIAFC//////////8AViACQgBSIAJQGw0AIAFCCIZCCoQhAgwBCyACIAEQoYCAgAAhAgsgAEIANwMAIAAgAjcDCAulEQgBfwF+AX8DfgJ/AX4BfwN+I4CAgIAAQcAAayIDJICAgIAAIANBEGogABDxgICAAAJAIAMoAhBBAUYNACADKQMYIQRBACEFAkADQCAFQSBGDQEgA0EQaiAFakICNwMAIAVBCGohBQwACwsgAUL/AYNCzABSDQAgAUGYgcCAAEEEIANBEGpBBBDsgICAACADQTBqIAMpAxAQ8oCAgAAgAygCMA0AIAMpAxgiAUL/AYNCywBSDQAgAykDOCEGIAEQg4CAgAAhACADQQA2AgggAyABNwMAIAMgAEIgiD4CDCADQTBqIAMQ84CAgAAgAykDMCIBQgJRDQAgAadBAXENAAJAIAMpAzgiAadB/wFxIgVBygBGDQAgBUEORw0BCwJAAkACQCABQfCAwIAAQQIQ9ICAgABCIIinDgIAAQMLIAMoAgggAygCDBD1gICAAA0CQQAhBQwBCyADKAIIIAMoAgwQ9YCAgABBAksNASADQTBqIAMQ84CAgAAgAykDMCIBQgJRDQEgAadBAXENASADQTBqIAMpAzgQ8YCAgAAgAygCMA0BIAMpAzghByADQTBqIAMQ84CAgAAgAykDMCIBQgJRDQEgAadBAXENASADKQM4IgBC/wGDQsgAUg0BQQEhBSAAEIWAgIAAQoCAgIBwg0KAgICAgAhSDQELIAMpAyAiCEL/AYNCywBSDQAgAykDKCIBQv8Bg0IEUg0AIAJC/wGDQssAUg0AELOAgIAAAkACQAJAEPaAgIAAIAFCIIinIglGDQBCg4CAgMAAIQEMAQsCQAJAEI+AgIAAIgGnQf8BcSIKQQZGDQAgCkHAAEcNAyABEJCAgIAAIQEMAQsgAUIIiCEBCwJAIAYgAVYNAEKDgICAECEBDAELAkACQCACEIOAgIAAQoCAgIBwg0KAgICAEFINACACEIOAgIAAQoCAgIAQVA0AIAIQkYCAgAAiAUL/AYNCywBSDQQgARCDgICAACELIANBADYCCCADIAE3AwAgAyALQiCIPgIMIANBEGogAxDzgICAACADKQMQIgFCAlENBCABp0EBcQ0EAkAgAykDGCIBp0H/AXEiCkHKAEYNACAKQQ5HDQULAkACQAJAAkAgAUGwgMCAAEEDEPSAgIAAQiCIpw4DAAECCAsgAygCCCADKAIMEPWAgIAAQQFLDQcgA0EwaiADEPOAgIAAIAMpAzAiAUICUQ0HIAGnQQFxDQcgA0EQaiADKQM4EPeAgIAAIAMoAhBBAUYNByADKQMgIQEgAykDGBCCgICAABC/gICAAEUNA0GEgsCAAEEJENmAgIAAIQsCQCABQv8Bg0IOUg0AIAtC/wGDQg5RDQMLIAEgCxCSgICAAFANBAwDCyADKAIIIAMoAgwQ9YCAgABBAUsNBiADQTBqIAMQ84CAgAAgAykDMCIBQgJRDQYgAadBAXENBiADQRBqIAMpAzgQ+ICAgAAgAygCEEUNAgwGCyADKAIIIAMoAgwQ9YCAgABBAUsNBSADQTBqIAMQ84CAgAAgAykDMCIBQgJRDQUgAadBAXENBSADQRBqIAMpAzgQ+YCAgAAgAygCEEUNAQwFCyADIAtCCIg3AxAgAyABQgiINwMwAkADQCADQTBqEPqAgIAAIQogA0EQahD6gICAACEMIApBgIDEAEYNASAKIAxHDQIMAAsLIAxBgIDEAEYNAQtCg4CAgOAAIQEgBUUNAUHgg8CAAEEMEPuAgIAAIAcQk4CAgAAQlICAgAAiC0L/AYNCzQBSDQMgCxDWgICAAEUNASAHIAQgABCVgICAABoLEI6AgIAAIQ0gAhCDgICAAEIgiCEOQgAhAUIEIQACQANAIA4gAVENAQJAAkAgAiAAEISAgIAAIgdC/wGDQssAUg0AQQAhCiAHEIOAgIAAIQQgA0EANgIIIAMgBzcDACADIARCIIg+AgwgA0EQaiADEPOAgIAAQQEhBQJAAkAgAykDECIHQgJRDQBBASEFIAenQQFxDQACQCADKQMYIg+nQf8BcSIMQcoARg0AIAxBDkcNAQsCQAJAAkAgD0GwgMCAAEEDEPSAgIAAQiCIpw4DAAECBAtBASEFIAMoAgggAygCDBD1gICAAEEBSw0CIANBMGogAxDzgICAACADKQMwIgdCAlENAiAHp0EBcQ0CIANBEGogAykDOBD3gICAACADKAIQDQIgAykDKCEHIAMpAyAhBCADKQMYIQtBASEKQQAhBQwDC0EBIQUgAygCCCADKAIMEPWAgIAAQQFLDQEgA0EwaiADEPOAgIAAIAMpAzAiB0ICUQ0BIAenQQFxDQEgA0EQaiADKQM4EPiAgIAAIAMoAhANASADKQMgIQQgAykDGCELQQAhBUEAIQoMAgtBASEFIAMoAgggAygCDBD1gICAAEEBSw0AIANBMGogAxDzgICAACADKQMwIgdCAlENACAHp0EBcQ0AIANBEGogAykDOBD5gICAACADKAIQDQAgAykDKCEHIAMpAyAhBCADKQMYIQtBACEFQQAhCgwBCwsgAUL/////D1ENBSAFDQUgCg0BQoOAgIDQACEBDAQLIAFC/////w9SGgwECyADIAs3AyAgAyAENwMYIAMgBzcDECAAQoCAgIAQfCEAIAFCAXwhASANQeyBwIAAQQMgA0EQakEDENSAgIAAEIyAgIAAIQ0MAAsLIAkgBiANEPyAgIAAIQEgA0ECNgIQIAMgATcDGAJAAkAgA0EQahC6gICAACICQgEQt4CAgABFDQACQCACQgEQgICAgACnQf8BcQ4CAAIFCyADQRBqELiAgIAACyADQQI2AhAgAyABNwMYIANBEGoQuoCAgABCAUIBEJaAgIAAGiADQRBqELiAgIAAIAEgCBDBgICAAEICIQEMAQsgA0EQahC4gICAAEKDgICAMCEBCyADQcAAaiSAgICAACABDwsQsYCAgAAACwALQgEBfkIBIQICQCABQv8Bg0LIAFINACABEIWAgIAAQoCAgIBwg0KAgICAgARSDQAgACABNwMIQgAhAgsgACACNwMAC10CAX8BfgJAAkAgAadB/wFxIgJBwABGDQACQCACQQZGDQBCASEDQoOQgICAASEBDAILIAFCCIghAUIAIQMMAQtCACEDIAEQkICAgAAhAQsgACADNwMAIAAgATcDCAtKAgF+AX9CAiECAkAgASgCCCIDIAEoAgxPDQAgACABKQMAIAOtQiCGQgSEEISAgIAANwMIIAEgA0EBajYCCEIAIQILIAAgAjcDAAscACAAIAGtQiCGQgSEIAKtQiCGQgSEEKeAgIAACxkAAkAgASAASQ0AIAEgAGsPCxCxgICAAAALbQIBfwF+I4CAgIAAQRBrIgAkgICAgAAQs4CAgAAgAEEANgIAAkACQCAAELqAgIAAIgFCAhC3gICAAEUNACABQgIQgICAgAAiAUL/AYNCBFENAQALEMmAgIAAAAsgAEEQaiSAgICAACABQiCIpwvTAQICfwN+I4CAgIAAQSBrIgIkgICAgABBACEDAkADQCADQRhGDQEgAkEIaiADakICNwMAIANBCGohAwwACwtCASEEAkAgAUL/AYNCzABSDQAgAUGEhMCAAEEDIAJBCGpBAxDsgICAACACKQMIIgFC/wGDQssAUg0AIAIpAxAiBUL/AYNCzQBSDQACQCACKQMYIganQf8BcSIDQcoARg0AIANBDkcNAQsgACABNwMYIAAgBjcDECAAIAU3AwhCACEECyAAIAQ3AwAgAkEgaiSAgICAAAu+AQICfwF+I4CAgIAAQSBrIgIkgICAgABBACEDAkADQCADQRBGDQEgAiADakICNwMAIANBCGohAwwACwtCASEEAkAgAUL/AYNCzABSDQAgAUGshMCAAEECIAJBAhDsgICAACACQRBqIAIpAwAQz4GAgAAgAigCEA0AIAIpAxghASACQRBqIAIpAwgQ8YCAgAAgAigCEA0AIAAgAikDGDcDECAAIAE3AwhCACEECyAAIAQ3AwAgAkEgaiSAgICAAAvgAQICfwJ+I4CAgIAAQTBrIgIkgICAgABBACEDAkADQCADQRhGDQEgAkEIaiADakICNwMAIANBCGohAwwACwtCASEEAkAgAUL/AYNCzABSDQAgAUHMhMCAAEEDIAJBCGpBAxDsgICAACACKQMIIgFC/wGDQssAUg0AIAJBIGogAikDEBDPgYCAACACKAIgDQAgAikDKCEFIAJBIGogAikDGBDxgICAACACKAIgDQAgAikDKCEEIAAgATcDGCAAIAQ3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AhC6gICAACIDQgEQt4CAgABFDQAgAkEQaiADQgEQgICAgAAQ64CAgAAgAigCEEEBcUUNAQALIABCADcDCCAAQgA3AwAMAQsgAEEQaiACQRBqQRBqQTAQ2IGAgAAaIABCADcDCCAAQgE3AwAgAhC4gICAAAsgAkHQAGokgICAgAALGgAgAK1CIIZCBIQgAa1CIIZCBIQQpoCAgAALrQQFAX8BfgF/AX4CfyOAgICAAEHgAWsiAiSAgICAAAJAAkAgAEL/AYNCzQBSDQAgAUL/AYNCywBSDQAQs4CAgAAgABDVgICAACABEIOAgIAAQiCIIQMgAkGgAWpBEGohBEIAIQACQANAIAAgA1ENASABIABCIIZCBIQQhICAgAAhBUEAIQYCQANAIAZBEEYNASACQeAAaiAGakICNwMAIAZBCGohBgwACwsCQAJAIAVC/wGDQswAUg0AIAVB2IHAgABBAiACQeAAakECEOyAgIAAIAJBoAFqIAIpA2AQ64CAgAAgAigCoAFBAXENACACQfAAaiAEQTAQ2IGAgAAaIAIpA2giBUL/AYNCBFENAQsgAEL/////D1ENBCACIAJBMGpBMBDYgYCAABoMBAsgAkEwaiACQfAAakEwENiBgIAAGiAAQv////8PUQ0DIAIgAkEwakEwENiBgIAAIgZBoAFqIAZBMBDYgYCAABogBiAFQiCIpyIHNgLQASAGIAc2AjQgBkEBNgIwIAZBMGoQuoCAgAAhBSAGQfAAaiAGQaABahDugICAACAGKAJwQQFGDQIgBSAGKQN4QgEQloCAgAAaIABCAXwhACAGQTBqELiAgIAADAALC0HIgMCAAEEOENmAgIAAENOAgIAAIQAgAiABNwOgASAAQdyAwIAAQQEgAkGgAWpBARDUgICAABCNgICAABogAkHgAWokgICAgABCAg8LAAsQsYCAgAAAC3oBAX8jgICAgABB0ABrIgEkgICAgAACQCAAQv8Bg0IEUg0AIAEgAEIgiKcQooGAgAACQAJAIAEoAgBBAXENAEICIQAMAQsgAUHAAGogAUEQahDugICAACABKAJAQQFxDQEgASkDSCEACyABQdAAaiSAgICAACAADwsACw8AEPaAgIAArUIghkIEhAtnAQF/I4CAgIAAQRBrIgMkgICAgAACQCAAQv8Bg0IEUg0AIAMgARDygICAACAD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QgIQloCAgAAaCwkAELKAgIAArQsIABC9gICAAAu5AgICfwF+I4CAgIAAQSBrIgIkgICAgAAgAkEQaiAAELmBgIAAAkACQAJAAkAgAigCEEEBRg0AQQEgAadB/wFxIgNBAEdBAXQgA0EBRhsiA0ECRg0AIAIpAxghABCzgICAABC+gICAAAJAAkAgA0EBcQ0AIAJBCGoQxICAgAAiASAAEIqAgIAAENCAgIAAIAIoAggiA0ECRg0DIANFDQQCQCACKAIMIgMgARCDgICAAEIgiKdPDQAgASADrUIghkIEhBCLgICAACEBCyABEIOAgIAAIQQQwoCAgAAgBEIgiKdLDQUgARC6gYCAACAAQQAQu4GAgAAMAQsgABCtgYCAAAsgAkEgaiSAgICAAEICDwsACxCxgICAAAALQoOAgICQhQEQwICAgAAAC0KDgICAoIUBEMCAgIAAAAsjAAJAIAFC/wGDQsgAUQ0AIABCATcDAA8LIAAgARDFgICAAAsbAEEAEKyBgIAAIABCARCWgICAABoQroGAgAAL0AEDAX8BfgF/I4CAgIAAQSBrIgIkgICAgABBgIXAgABBChDZgICAACEDIAIgADcDCCACIAM3AwBBACEEA0ACQCAEQRBHDQBBACEEAkADQCAEQRBGDQEgAkEQaiAEaiACIARqKQMANwMAIARBCGohBAwACwsgAkEQakECEKOBgIAAIQAgAiABrUL/AYM3AxAgAEGMhcCAAEEBIAJBEGpBARDUgICAABCNgICAABogAkEgaiSAgICAAA8LIAJBEGogBGpCAjcDACAEQQhqIQQMAAsLKwACQCAAQv8Bg0IEUQ0AAAsQs4CAgAAQvoCAgAAgAEIgiKcQr4GAgABCAgsOABCzgICAABDEgICAAAseABCzgICAABDEgICAABCDgICAAEKAgICAcINCBIQLugECAX8CfiOAgICAAEEwayIBJICAgIAAIAFBIGogABC5gYCAAAJAIAEoAiBBAUYNACABKQMoIQIQs4CAgAAQxICAgAAiABCDgICAACEDIAFBADYCCCABIAA3AwAgASADQiCIPgIMAkADQCABQSBqIAEQx4CAgAAgAUEQaiABKQMgIAEpAygQsICAgAAgASkDECIAp0EBRw0BIAEpAxggAhDIgICAAEUNAAsLIAFBMGokgICAgAAgAA8LAAsPABDKgICAAK1CIIZCBIQLVAEBfyOAgICAAEEQayICJICAgIAAIAIgABDxgICAAAJAIAIoAgBBAUYNACABQv8Bg0LLAFINACACKQMIIAEQwYCAgAAgAkEQaiSAgICAAEICDwsAC2UBAX8jgICAgABBEGsiAySAgICAACADIAAQ8YCAgAACQCADKAIAQQFGDQAgAUL/AYNCywBSDQAgAkL/AYNCBFINACADKQMIIAEgAkIgiKcQw4CAgAAgA0EQaiSAgICAAEICDwsACzEAAkAgAEL/AYNCBFINACABQv8Bg0IEUg0AIABCIIinIAFCIIinEMSBgIAAQgIPCwALGwAgAK1CIIZCBIQgAa1CIIZCBIQQrYCAgAAaC+UEAQV/I4CAgIAAQdAAayICJICAgIAAIAJBKGogABDGgYCAAAJAAkAgAigCKEECRg0AIAJBCGpBCGogAkEoakEIaiIDKAIANgIAIAIgAikCKDcDCCACQShqIAEQxoGAgAAgAigCKEECRg0AIAJBGGpBCGogAygCADYCACACIAIpAig3AxgQvICAgAAaELOAgIAAAkACQAJAELWAgIAADQAQn4CAgAAhABCggICAAEIgiCIBIABCIIgiAFQNBCABpyAAp2siA0GA+4ADIANBgPuAA0kbIQQgAiACQRhqNgIsIAIgAkEIajYCKEEAIQMDQCADQQhGDQMCQCACQShqIANqKAIAIgUoAgBBAXFFDQAgBSgCCCIGIARLDQMgBSgCBCAGSw0DCyADQQRqIQMMAAsLQoOAgIDQ/wAQwICAgAAAC0KDgICAwP8AEMCAgIAAAAsCQAJAIAIoAghBAUcNACACKAIMIAIoAhAQqoGAgAAMAQtBARC2gICAAEICEJeAgIAAGgsCQAJAIAIoAhhBAUcNACACKAIcIAIoAiAQq4GAgAAMAQtBAhC2gICAAEICEJeAgIAAGgsgAkEoakEIaiACQQhqQQhqKAIANgIAIAJBPGogAkEYakEIaigCADYCACACIAIpAwg3AyggAiACKQMYNwI0QeCFwIAAQQ8Q2YCAgAAQ04CAgAAhACACQShqEMeBgIAAIQEgAiACQTRqEMeBgIAANwNIIAIgATcDQCAAQYSGwIAAQQIgAkHAAGpBAhDUgICAABCNgICAABogAkHQAGokgICAgABCAg8LAAsQsYCAgAAAC2gBAX8jgICAgABBEGsiAiSAgICAAAJAAkAgAUICUQ0AIAJBBGogARDQgYCAAAJAIAIoAgRFDQAgAEECNgIADAILIAAgAikCCDcCBCAAQQE2AgAMAQsgAEEANgIACyACQRBqJICAgIAAC0MCAX8BfiOAgICAAEEQayIBJICAgIAAIAEgABDKgYCAAAJAIAEoAgBBAUcNAAALIAEpAwghAiABQRBqJICAgIAAIAILoAECAn8BfiOAgICAAEHAAGsiACSAgICAABCzgICAACAAQQhqEMmBgIAAIABBFGoiARC5gICAACAAQTBqIABBCGoQyoGAgAACQAJAIAAoAjANACAAKQM4IQIgAEEwaiABEMqBgIAAIAAoAjBBAUcNAQsACyAAIAApAzg3AyggACACNwMgIABBIGpBAhCjgYCAACECIABBwABqJICAgIAAIAILDAAgAEEBENOBgIAACzAAAkAgASgCAEEBRw0AIAAgASgCBCABKAIIENGBgIAADwsgAEIANwMAIABCAjcDCAuJAQEBfyOAgICAAEEQayIAJICAgIAAELyAgIAAGhCzgICAAAJAELWAgIAARQ0AQoOAgIDg/wAQwICAgAAAC0EAELaAgIAAQgFCAhCWgICAABpBlIbAgABBEhDZgICAABDTgICAAEEEQQAgAEEIakEAENSAgIAAEI2AgIAAGiAAQRBqJICAgIAAQgILCQAQtYCAgACtCwMAAAvbAQIBfgR/AkACQCACQQlLDQBCACEDIAIhBCABIQUDQAJAIAQNACADQgiGQg6EIQMMAwtBASEGAkAgBS0AACIHQd8ARg0AAkAgB0FQakH/AXFBCkkNAAJAIAdBv39qQf8BcUEaSQ0AIAdBn39qQf8BcUEZSw0EIAdBRWohBgwCCyAHQUtqIQYMAQsgB0FSaiEGCyADQgaGIAatQv8Bg4QhAyAEQX9qIQQgBUEBaiEFDAALCyABrUIghkIEhCACrUIghkIEhBCpgICAACEDCyAAQgA3AwAgACADNwMIC7MCAwF/AX4BfyOAgICAAEEgayICJICAgIAAAkACQCABQv8Bg0LLAFENACAAQgE3AwAMAQsgARCDgICAACEDIAJBADYCCCACIAE3AwAgAiADQiCIPgIMIAJBEGogAhDzgICAAAJAIAIpAxAiAUICUQ0AIAGnQQFxDQACQCACKQMYIgGnQf8BcSIE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AHNldF9zdXBwb3J0ZWRfbWVzc2FnZV9saWJtZXNzYWdlX2xpYnN1cHBvcnRlZAAAAH0DEAALAAAAiAMQAAkAAABzZXRfYWxsb3dsaXN0YWxsb3dlZG9hcHCxAxAABwAAALgDEAAEAAAAc2V0X2RlbnlsaXN0ZGVuaWVkAADYAxAABgAAALgDEAAEAAAAcGF1c2VyAADwAxAABgAAAHVucGF1c2VyAAQQAAgAAABzZXRfZGVmYXVsdF9tdWx0aXBsaWVyX2Jwc211bHRpcGxpZXJfYnBzKgQQAA4AAABzZXRfZGVwb3NpdF9hZGRyZXNzZGVwb3NpdF9hZGRyZXNzAABTBBAADwAAAHNldF9wcmljZV9mZWVkcHJpY2VfZmVlZHoEEAAKAAAAc2V0X3N1cHBvcnRlZF9vcHRpb25fdHlwZXNkc3RfZWlkb3B0aW9uX3R5cGVzAAAApgQQAAcAAACtBBAADAAAAHNldF93b3JrZXJfZmVlX2xpYmZlZV9saWIAAADeBBAABwAAAFBhdXNlZEFkbWluc01lc3NhZ2VMaWJzQWxsb3dsaXN0QWxsb3dsaXN0U2l6ZURlbnlsaXN0RGVmYXVsdE11bHRpcGxpZXJCcHNEZXBvc2l0QWRkcmVzc1N1cHBvcnRlZE9wdGlvblR5cGVzV29ya2VyRmVlTGliUHJpY2VGZWVkAKP8AQ5jb250cmFjdHNwZWN2MAAAAAQAAAAAAAAAAAAAAAhEdm5FcnJvcgAAAAYAAAAAAAAAD0F1dGhEYXRhRXhwaXJlZAAAAAABAAAAAAAAAA9FaWROb3RTdXBwb3J0ZWQAAAAAAgAAAAAAAAAPSGFzaEFscmVhZHlVc2VkAAAAAAMAAAAAAAAACkludmFsaWRWaWQAAAAAAAQAAAAAAAAAEU5vbkNvbnRyYWN0SW52b2tlAAAAAAAABQAAAAAAAAAJT25seUFkbWluAAAAAAAABgAAAAUAAAAAAAAAAAAAAAxTZXREc3RDb25maWcAAAABAAAADnNldF9kc3RfY29uZmlnAAAAAAABAAAAAAAAAAZwYXJhbXMAAAAAA+oAAAfQAAAADkRzdENvbmZpZ1BhcmFtAAAAAAAAAAAAAgAAAAIAAAAAAAAAAAAAAAZTZW5kZXIAAAAAAAIAAAAAAAAALk5vIGV4cGxpY2l0IHNlbmRlciAocGVybWlzc2lvbmxlc3MgZXhlY3V0aW9uKS4AAAAAAAROb25lAAAAAQAAAI9BIHJlZ2lzdGVyZWQgYWRtaW4gKGVkMjU1MTkpIHN1Ym1pdHRpbmcgdGhlIHRyYW5zYWN0aW9uLgpUaGUgdHVwbGUgaXMgYChwdWJsaWNfa2V5LCBzaWduYXR1cmUpYCB3aGVyZSB0aGUgc2lnbmF0dXJlIGNvdmVycyB0aGUgU29yb2JhbiBwYXlsb2FkLgAAAAAFQWRtaW4AAAAAAAACAAAD7gAAACAAAAPuAAAAQAAAAAEAAADHQXV0aGVudGljYXRpb24gZGF0YSBmb3IgRFZOIGNvbnRyYWN0IHRyYW5zYWN0aW9ucy4KClRoaXMgc3RydWN0IGlzIHVzZWQgd2l0aCBTb3JvYmFuJ3MgY3VzdG9tIGFjY291bnQgaW50ZXJmYWNlIHRvIGF1dGhvcml6ZQp0cmFuc2FjdGlvbnMgdGhyb3VnaCBhIGNvbWJpbmF0aW9uIG9mIGFkbWluIHNpZ25hdHVyZSBhbmQgbXVsdGlzaWcgcXVvcnVtLgAAAAAAAAAAE1RyYW5zYWN0aW9uQXV0aERhdGEAAAAABAAAAERFeHBpcmF0aW9uIHRpbWVzdGFtcCAobGVkZ2VyIHRpbWUpIGFmdGVyIHdoaWNoIHRoaXMgYXV0aCBpcyBpbnZhbGlkLgAAAApleHBpcmF0aW9uAAAAAAAGAAAAPUVudGl0eSBzdWJtaXR0aW5nIHRoZSB0cmFuc2FjdGlvbiAoYWRtaW4sIG9yIHBlcm1pc3Npb25sZXNzKS4AAAAAAAAGc2VuZGVyAAAAAAfQAAAABlNlbmRlcgAAAAAAPFNpZ25hdHVyZXMgZnJvbSBtdWx0aXNpZyBzaWduZXJzIChzZWNwMjU2azEsIDY1IGJ5dGVzIGVhY2gpLgAAAApzaWduYXR1cmVzAAAAAAPqAAAD7gAAAEEAAAAyVmVyaWZpZXIgSUQgLSBtdXN0IG1hdGNoIHRoZSBEVk4ncyBjb25maWd1cmVkIFZJRC4AAAAAAAN2aWQAAAAABAAAAAEAAAByQ29uZmlndXJhdGlvbiBmb3IgYSBkZXN0aW5hdGlvbiBjaGFpbi4KCkNvbnRhaW5zIGZlZSBjYWxjdWxhdGlvbiBwYXJhbWV0ZXJzIHNwZWNpZmljIHRvIGVhY2ggZGVzdGluYXRpb24gZW5kcG9pbnQuAAAAAAAAAAAACURzdENvbmZpZwAAAAAAAAMAAAA7TWluaW11bSBmZWUgbWFyZ2luIGluIFVTRCAoc2NhbGVkIGJ5IG5hdGl2ZSBkZWNpbWFscyByYXRlKS4AAAAAEGZsb29yX21hcmdpbl91c2QAAAAKAAAALkdhcyBmb3IgdmVyaWZpY2F0aW9uIG9uIHRoZSBkZXN0aW5hdGlvbiBjaGFpbi4AAAAAAANnYXMAAAAACgAAAGdGZWUgbXVsdGlwbGllciBpbiBiYXNpcyBwb2ludHMgKDEwMDAwID0gMTAwJSkuCklmIDAsIHRoZSBkZWZhdWx0IG11bHRpcGxpZXIgZnJvbSB3b3JrZXIgY29uZmlnIGlzIHVzZWQuAAAAAA5tdWx0aXBsaWVyX2JwcwAAAAAABAAAAAEAAAA2UGFyYW1ldGVyIGZvciBzZXR0aW5nIGRlc3RpbmF0aW9uIGNoYWluIGNvbmZpZ3VyYXRpb24uAAAAAAAAAAAADkRzdENvbmZpZ1BhcmFtAAAAAAACAAAAJ1RoZSBjb25maWd1cmF0aW9uIGZvciB0aGlzIGRlc3RpbmF0aW9uLgAAAAAGY29uZmlnAAAAAAfQAAAACURzdENvbmZpZwAAAAAAABxUaGUgZGVzdGluYXRpb24gZW5kcG9pbnQgSUQuAAAAB2RzdF9laWQAAAAABAAAAAEAAACJUmVwcmVzZW50cyBhIHNpbmdsZSBjb250cmFjdCBpbnZvY2F0aW9uIGZvciBtdWx0aXNpZyBhdXRob3JpemF0aW9uLgoKVXNlZCBpbiBgaGFzaF9jYWxsX2RhdGFgIHRvIGNvbXB1dGUgdGhlIGhhc2ggdGhhdCBzaWduZXJzIHNpZ24gb3Zlci4AAAAAAAAAAAAABENhbGwAAAADAAAAE0Z1bmN0aW9uIGFyZ3VtZW50cy4AAAAABGFyZ3MAAAPqAAAAAAAAABhGdW5jdGlvbiBuYW1lIHRvIGludm9rZS4AAAAEZnVuYwAAABEAAAAYVGFyZ2V0IGNvbnRyYWN0IGFkZHJlc3MuAAAAAnRvAAAAAAATAAAAAAAAADRWYWxpZGF0ZXMgYXV0aG9yaXphdGlvbiBmb3IgRFZOIGNvbnRyYWN0IG9wZXJhdGlvbnMuAAAADF9fY2hlY2tfYXV0aAAAAAMAAAAAAAAAEXNpZ25hdHVyZV9wYXlsb2FkAAAAAAAD7gAAACAAAAAAAAAACWF1dGhfZGF0YQAAAAAAB9AAAAATVHJhbnNhY3Rpb25BdXRoRGF0YQAAAAAAAAAADWF1dGhfY29udGV4dHMAAAAAAAPqAAAH0AAAAAdDb250ZXh0AAAAAAEAAAPpAAAAAgAAAAMAAAAAAAAA5FNldHMgdGhlIHBhdXNlZCBzdGF0ZSBvZiB0aGUgd29ya2VyLgoKV2hlbiBwYXVzZWQsIHRoZSB3b3JrZXIgd2lsbCByZWplY3QgbmV3IGpvYiBhc3NpZ25tZW50cyAoZS5nLiwgYXNzaWduX2pvYiwgZ2V0X2ZlZSkuCkV4aXN0aW5nIGpvYnMgaW4gcHJvZ3Jlc3MgYXJlIG5vdCBhZmZlY3RlZC4KCiMgQXJndW1lbnRzCiogYHBhdXNlZGAgLSBgdHJ1ZWAgdG8gcGF1c2UsIGBmYWxzZWAgdG8gdW5wYXVzZQAAAApzZXRfcGF1c2VkAAAAAAABAAAAAAAAAAZwYXVzZWQAAAAAAAEAAAAAAAAAAAAAAP1TZXRzIGFkbWluIHN0YXR1cyBmb3IgYW4gYWRkcmVzcy4KCkFkbWlucyBjYW4gY29uZmlndXJlIHdvcmtlciBzZXR0aW5ncyBsaWtlIGZlZSBtdWx0aXBsaWVycywgZGVwb3NpdCBhZGRyZXNzZXMsCmFuZCBzdXBwb3J0ZWQgb3B0aW9uIHR5cGVzLgoKIyBBcmd1bWVudHMKKiBgYWRtaW5gIC0gVGhlIGFkZHJlc3MgdG8gc2V0IGFkbWluIHN0YXR1cyBmb3IKKiBgYWN0aXZlYCAtIGB0cnVlYCB0byBhZGQgYWRtaW4sIGBmYWxzZWAgdG8gcmVtb3ZlAAAAAAAACXNldF9hZG1pbgAAAAAAAAIAAAAAAAAABWFkbWluAAAAAAAAEwAAAAAAAAAGYWN0aXZlAAAAAAABAAAAAAAAAAAAAAE3U2V0cyB3aGV0aGVyIGEgbWVzc2FnZSBsaWJyYXJ5IGlzIHN1cHBvcnRlZCBieSB0aGlzIHdvcmtlci4KCk1lc3NhZ2UgbGlicmFyaWVzIChlLmcuLCBVTE4zMDIpIGNhbGwgd29ya2VycyB0byBhc3NpZ24gam9icy4gT25seSBzdXBwb3J0ZWQKbGlicmFyaWVzIGNhbiBpbnRlcmFjdCB3aXRoIHRoaXMgd29ya2VyLgoKIyBBcmd1bWVudHMKKiBgbWVzc2FnZV9saWJgIC0gVGhlIG1lc3NhZ2UgbGlicmFyeSBjb250cmFjdCBhZGRyZXNzCiogYHN1cHBvcnRlZGAgLSBgdHJ1ZWAgdG8gYWRkIHN1cHBvcnQsIGBmYWxzZWAgdG8gcmVtb3ZlIHN1cHBvcnQAAAAAGXNldF9zdXBwb3J0ZWRfbWVzc2FnZV9saWIAAAAAAAACAAAAAAAAAAttZXNzYWdlX2xpYgAAAAATAAAAAAAAAAlzdXBwb3J0ZWQAAAAAAAABAAAAAAAAAAAAAAFYU2V0cyBhbGxvd2xpc3Qgc3RhdHVzIGZvciBhbiBPQXBwIGFkZHJlc3MuCgpXaGVuIHRoZSBhbGxvd2xpc3QgaXMgZW1wdHksIGFsbCBPQXBwcyBhcmUgYWxsb3dlZCAodW5sZXNzIG9uIGRlbnlsaXN0KS4KV2hlbiB0aGUgYWxsb3dsaXN0IGlzIG5vdCBlbXB0eSwgb25seSBhbGxvd2xpc3RlZCBPQXBwcyBhcmUgYWxsb3dlZC4KRGVueWxpc3QgYWx3YXlzIHRha2VzIHByZWNlZGVuY2Ugb3ZlciBhbGxvd2xpc3QuCgojIEFyZ3VtZW50cwoqIGBvYXBwYCAtIFRoZSBPQXBwIGNvbnRyYWN0IGFkZHJlc3MKKiBgYWxsb3dlZGAgLSBgdHJ1ZWAgdG8gYWRkIHRvIGFsbG93bGlzdCwgYGZhbHNlYCB0byByZW1vdmUAAAANc2V0X2FsbG93bGlzdAAAAAAAAAIAAAAAAAAABG9hcHAAAAATAAAAAAAAAAdhbGxvd2VkAAAAAAEAAAAAAAAAAAAAAQlTZXRzIGRlbnlsaXN0IHN0YXR1cyBmb3IgYW4gT0FwcCBhZGRyZXNzLgoKRGVueWxpc3RlZCBPQXBwcyBhcmUgYmxvY2tlZCBmcm9tIHVzaW5nIHRoaXMgd29ya2VyLCBldmVuIGlmIHRoZXkncmUgb24KdGhlIGFsbG93bGlzdCAoZGVueWxpc3QgdGFrZXMgcHJlY2VkZW5jZSkuCgojIEFyZ3VtZW50cwoqIGBvYXBwYCAtIFRoZSBPQXBwIGNvbnRyYWN0IGFkZHJlc3MKKiBgZGVuaWVkYCAtIGB0cnVlYCB0byBhZGQgdG8gZGVueWxpc3QsIGBmYWxzZWAgdG8gcmVtb3ZlAAAAAAAADHNldF9kZW55bGlzdAAAAAIAAAAAAAAABG9hcHAAAAATAAAAAAAAAAZkZW5pZWQAAAAAAAEAAAAAAAAAAAAAATtTZXRzIHRoZSBkZWZhdWx0IGZlZSBtdWx0aXBsaWVyIGluIGJhc2lzIHBvaW50cy4KClRoZSBtdWx0aXBsaWVyIGlzIGFwcGxpZWQgdG8gYmFzZSBmZWVzIGR1cmluZyBmZWUgY2FsY3VsYXRpb24uIFVzZWQgd2hlbgpubyBkZXN0aW5hdGlvbi1zcGVjaWZpYyBtdWx0aXBsaWVyIGlzIGNvbmZpZ3VyZWQuCgojIEFyZ3VtZW50cwoqIGBhZG1pbmAgLSBBZG1pbiBhZGRyZXNzIChtdXN0IHByb3ZpZGUgYXV0aG9yaXphdGlvbikKKiBgbXVsdGlwbGllcl9icHNgIC0gTXVsdGlwbGllciBpbiBiYXNpcyBwb2ludHMgKDEwMDAwID0gMXgsIDEyMDAwID0gMS4yeCkAAAAAGnNldF9kZWZhdWx0X211bHRpcGxpZXJfYnBzAAAAAAACAAAAAAAAAAVhZG1pbgAAAAAAABMAAAAAAAAADm11bHRpcGxpZXJfYnBzAAAAAAAEAAAAAAAAAAAAAADxU2V0cyB0aGUgZGVwb3NpdCBhZGRyZXNzIHdoZXJlIHdvcmtlciBmZWVzIGFyZSBjb2xsZWN0ZWQuCgpXaGVuIGpvYnMgYXJlIGFzc2lnbmVkLCBmZWVzIGFyZSBkaXJlY3RlZCB0byB0aGlzIGFkZHJlc3MuCgojIEFyZ3VtZW50cwoqIGBhZG1pbmAgLSBBZG1pbiBhZGRyZXNzIChtdXN0IHByb3ZpZGUgYXV0aG9yaXphdGlvbikKKiBgZGVwb3NpdF9hZGRyZXNzYCAtIEFkZHJlc3MgdG8gcmVjZWl2ZSBjb2xsZWN0ZWQgZmVlcwAAAAAAABNzZXRfZGVwb3NpdF9hZGRyZXNzAAAAAAIAAAAAAAAABWFkbWluAAAAAAAAEwAAAAAAAAAPZGVwb3NpdF9hZGRyZXNzAAAAABMAAAAAAAAAAAAAAQlTZXRzIHN1cHBvcnRlZCBleGVjdXRvciBvcHRpb24gdHlwZXMgZm9yIGEgZGVzdGluYXRpb24gZW5kcG9pbnQuCgojIEFyZ3VtZW50cwoqIGBhZG1pbmAgLSBBZG1pbiBhZGRyZXNzIChtdXN0IHByb3ZpZGUgYXV0aG9yaXphdGlvbikKKiBgZWlkYCAtIERlc3RpbmF0aW9uIGVuZHBvaW50IElEIChjaGFpbiBpZGVudGlmaWVyKQoqIGBvcHRpb25fdHlwZXNgIC0gU3VwcG9ydGVkIG9wdGlvbiB0eXBlcy4gRWFjaCBieXRlIHJlcHJlc2VudHMgYW4gb3B0aW9uIHR5cGUuAAAAAAAAGnNldF9zdXBwb3J0ZWRfb3B0aW9uX3R5cGVzAAAAAAADAAAAAAAAAAVhZG1pbgAAAAAAABMAAAAAAAAAA2VpZAAAAAAEAAAAAAAAAAxvcHRpb25fdHlwZXMAAAAOAAAAAAAAAAAAAAESU2V0cyB0aGUgd29ya2VyIGZlZSBsaWJyYXJ5IGNvbnRyYWN0IGFkZHJlc3MuCgpUaGUgZmVlIGxpYnJhcnkgY2FsY3VsYXRlcyBmZWVzIGJhc2VkIG9uIGV4ZWN1dG9yIG9wdGlvbnMgYW5kIHByaWNlIGZlZWQgZGF0YS4KCiMgQXJndW1lbnRzCiogYGFkbWluYCAtIEFkbWluIGFkZHJlc3MgKG11c3QgcHJvdmlkZSBhdXRob3JpemF0aW9uKQoqIGB3b3JrZXJfZmVlX2xpYmAgLSBGZWUgbGlicmFyeSBjb250cmFjdCBhZGRyZXNzIGltcGxlbWVudGluZyBgSUV4ZWN1dG9yRmVlTGliYAAAAAAAEnNldF93b3JrZXJfZmVlX2xpYgAAAAAAAgAAAAAAAAAFYWRtaW4AAAAAAAATAAAAAAAAAA53b3JrZXJfZmVlX2xpYgAAAAAAEwAAAAAAAAAAAAABElNldHMgdGhlIHByaWNlIGZlZWQgY29udHJhY3QgYWRkcmVzcy4KClRoZSBwcmljZSBmZWVkIHByb3ZpZGVzIGdhcyBwcmljZXMgYW5kIGV4Y2hhbmdlIHJhdGVzIGZvciBjcm9zcy1jaGFpbgpmZWUgY2FsY3VsYXRpb25zLgoKIyBBcmd1bWVudHMKKiBgYWRtaW5gIC0gQWRtaW4gYWRkcmVzcyAobXVzdCBwcm92aWRlIGF1dGhvcml6YXRpb24pCiogYHByaWNlX2ZlZWRgIC0gUHJpY2UgZmVlZCBjb250cmFjdCBhZGRyZXNzIGltcGxlbWVudGluZyBgSUxheWVyWmVyb1ByaWNlRmVlZGAAAAAAAA5zZXRfcHJpY2VfZmVlZAAAAAAAAgAAAAAAAAAFYWRtaW4AAAAAAAATAAAAAAAAAApwcmljZV9mZWVkAAAAAAATAAAAAAAAAAAAAAAlUmV0dXJucyB3aGV0aGVyIHRoZSB3b3JrZXIgaXMgcGF1c2VkLgAAAAAAAAZwYXVzZWQAAAAAAAAAAAABAAAAAQAAAAAAAABVUmV0dXJucyB3aGV0aGVyIGFuIGFkZHJlc3MgaXMgYW4gYWRtaW4uCgojIEFyZ3VtZW50cwoqIGBhZG1pbmAgLSBUaGUgYWRkcmVzcyB0byBjaGVjawAAAAAAAAhpc19hZG1pbgAAAAEAAAAAAAAABWFkbWluAAAAAAAAEwAAAAEAAAABAAAAAAAAABxSZXR1cm5zIGFsbCBhZG1pbiBhZGRyZXNzZXMuAAAABmFkbWlucwAAAAAAAAAAAAEAAAPqAAAAEwAAAAAAAABvUmV0dXJucyB3aGV0aGVyIGEgbWVzc2FnZSBsaWJyYXJ5IGlzIHN1cHBvcnRlZC4KCiMgQXJndW1lbnRzCiogYG1lc3NhZ2VfbGliYCAtIE1lc3NhZ2UgbGlicmFyeSBjb250cmFjdCBhZGRyZXNzAAAAABhpc19zdXBwb3J0ZWRfbWVzc2FnZV9saWIAAAABAAAAAAAAAAttZXNzYWdlX2xpYgAAAAATAAAAAQAAAAEAAAAAAAAAc1JldHVybnMgYWxsIHN1cHBvcnRlZCBtZXNzYWdlIGxpYnJhcnkgYWRkcmVzc2VzLgoKIyBSZXR1cm5zClZlY3RvciBvZiBzdXBwb3J0ZWQgbWVzc2FnZSBsaWJyYXJ5IGNvbnRyYWN0IGFkZHJlc3Nlcy4AAAAADG1lc3NhZ2VfbGlicwAAAAAAAAABAAAD6gAAABMAAAAAAAAAWlJldHVybnMgd2hldGhlciBhbiBPQXBwIGlzIG9uIHRoZSBhbGxvd2xpc3QuCgojIEFyZ3VtZW50cwoqIGBvYXBwYCAtIE9BcHAgY29udHJhY3QgYWRkcmVzcwAAAAAAD2lzX29uX2FsbG93bGlzdAAAAAABAAAAAAAAAARvYXBwAAAAEwAAAAEAAAABAAAAAAAAADFSZXR1cm5zIHRoZSBudW1iZXIgb2YgYWRkcmVzc2VzIG9uIHRoZSBhbGxvd2xpc3QuAAAAAAAADmFsbG93bGlzdF9zaXplAAAAAAAAAAAAAQAAAAQAAAAAAAAAWVJldHVybnMgd2hldGhlciBhbiBPQXBwIGlzIG9uIHRoZSBkZW55bGlzdC4KCiMgQXJndW1lbnRzCiogYG9hcHBgIC0gT0FwcCBjb250cmFjdCBhZGRyZXNzAAAAAAAADmlzX29uX2RlbnlsaXN0AAAAAAABAAAAAAAAAARvYXBwAAAAEwAAAAEAAAABAAAAAAAAAPlSZXR1cm5zIHdoZXRoZXIgYW4gT0FwcCBoYXMgYWNjZXNzIGNvbnRyb2wgbGlzdCAoQUNMKSBwZXJtaXNzaW9uLgoKQUNMIGV2YWx1YXRpb24gb3JkZXI6CjEuIElmIG9uIGRlbnlsaXN0IOKGkiBkZW5pZWQKMi4gSWYgYWxsb3dsaXN0IGlzIGVtcHR5IE9SIG9uIGFsbG93bGlzdCDihpIgYWxsb3dlZAozLiBPdGhlcndpc2Ug4oaSIGRlbmllZAoKIyBBcmd1bWVudHMKKiBgb2FwcGAgLSBPQXBwIGNvbnRyYWN0IGFkZHJlc3MgdG8gY2hlY2sAAAAAAAAHaGFzX2FjbAAAAAABAAAAAAAAAARvYXBwAAAAEwAAAAEAAAABAAAAAAAAADNSZXR1cm5zIHRoZSBkZWZhdWx0IGZlZSBtdWx0aXBsaWVyIGluIGJhc2lzIHBvaW50cy4AAAAAFmRlZmF1bHRfbXVsdGlwbGllcl9icHMAAAAAAAAAAAABAAAABAAAAAAAAAA1UmV0dXJucyB0aGUgZGVwb3NpdCBhZGRyZXNzIHdoZXJlIGZlZXMgYXJlIGNvbGxlY3RlZC4AAAAAAAAPZGVwb3NpdF9hZGRyZXNzAAAAAAAAAAABAAAD6AAAABMAAAAAAAAAfFJldHVybnMgc3VwcG9ydGVkIG9wdGlvbiB0eXBlcyBmb3IgYSBkZXN0aW5hdGlvbiBlbmRwb2ludC4KCiMgQXJndW1lbnRzCiogYGVpZGAgLSBEZXN0aW5hdGlvbiBlbmRwb2ludCBJRCAoY2hhaW4gaWRlbnRpZmllcikAAAAaZ2V0X3N1cHBvcnRlZF9vcHRpb25fdHlwZXMAAAAAAAEAAAAAAAAAA2VpZAAAAAAEAAAAAQAAA+gAAAAOAAAAAAAAADBSZXR1cm5zIHRoZSB3b3JrZXIgZmVlIGxpYnJhcnkgY29udHJhY3QgYWRkcmVzcy4AAAAOd29ya2VyX2ZlZV9saWIAAAAAAAAAAAABAAAD6AAAABMAAAAAAAAAKFJldHVybnMgdGhlIHByaWNlIGZlZWQgY29udHJhY3QgYWRkcmVzcy4AAAAKcHJpY2VfZmVlZAAAAAAAAAAAAAEAAAPoAAAAEwAAAAAAAAB4Q2FsY3VsYXRlcyB0aGUgdmVyaWZpY2F0aW9uIGZlZSBmb3IgYSBjcm9zcy1jaGFpbiBtZXNzYWdlLgoKQ2FsbGVkIGJ5IHRoZSBzZW5kIGxpYnJhcnkgdG8gcXVvdGUgRFZOIGZlZXMgYmVmb3JlIHNlbmRpbmcuAAAAB2dldF9mZWUAAAAABwAAAAAAAAAIc2VuZF9saWIAAAATAAAAAAAAAAZzZW5kZXIAAAAAABMAAAAAAAAAB2RzdF9laWQAAAAABAAAAAAAAAANcGFja2V0X2hlYWRlcgAAAAAAAA4AAAAAAAAADHBheWxvYWRfaGFzaAAAA+4AAAAgAAAAAAAAAA1jb25maXJtYXRpb25zAAAAAAAABgAAAAAAAAAHb3B0aW9ucwAAAAAOAAAAAQAAAAsAAAAAAAAAuEFzc2lnbnMgYSB2ZXJpZmljYXRpb24gam9iIHRvIHRoaXMgRFZOIGFuZCByZXR1cm5zIGZlZSBwYXltZW50IGluZm8uCgpDYWxsZWQgYnkgdGhlIHNlbmQgbGlicmFyeSB3aGVuIGEgbWVzc2FnZSBpcyBzZW50LiBUaGUgRFZOIHdpbGwgbGF0ZXIKdmVyaWZ5IHRoZSBtZXNzYWdlIG9uIHRoZSBkZXN0aW5hdGlvbiBjaGFpbi4AAAAKYXNzaWduX2pvYgAAAAAABwAAAAAAAAAIc2VuZF9saWIAAAATAAAAAAAAAAZzZW5kZXIAAAAAABMAAAAAAAAAB2RzdF9laWQAAAAABAAAAAAAAAANcGFja2V0X2hlYWRlcgAAAAAAAA4AAAAAAAAADHBheWxvYWRfaGFzaAAAA+4AAAAgAAAAAAAAAA1jb25maXJtYXRpb25zAAAAAAAABgAAAAAAAAAHb3B0aW9ucwAAAAAOAAAAAQAAB9AAAAAMRmVlUmVjaXBpZW50AAAAAAAAAERTZXRzIGRlc3RpbmF0aW9uIGNoYWluIGNvbmZpZ3VyYXRpb25zLiBSZXF1aXJlcyBhZG1pbiBhdXRob3JpemF0aW9uLgAAAA5zZXRfZHN0X2NvbmZpZwAAAAAAAgAAAAAAAAAFYWRtaW4AAAAAAAATAAAAAAAAAAZwYXJhbXMAAAAAA+oAAAfQAAAADkRzdENvbmZpZ1BhcmFtAAAAAAAAAAAAAAAAAEFSZXR1cm5zIHRoZSBkZXN0aW5hdGlvbiBjb25maWd1cmF0aW9uIGZvciBhIHNwZWNpZmljIGVuZHBvaW50IElELgAAAAAAAApkc3RfY29uZmlnAAAAAAABAAAAAAAAAAdkc3RfZWlkAAAAAAQAAAABAAAD6AAAB9AAAAAJRHN0Q29uZmlnAAAAAAAAAAAAACVSZXR1cm5zIHRoZSBWZXJpZmllciBJRCBmb3IgdGhpcyBEVk4uAAAAAAAAA3ZpZAAAAAAAAAAAAQAAAAQAAAAAAAAAd0NvbXB1dGVzIHRoZSBoYXNoIG9mIGNhbGwgZGF0YSBmb3IgbXVsdGlzaWcgc2lnbmluZy4KCk9mZi1jaGFpbiBzaWduZXJzIHVzZSB0aGlzIHRvIGNvbXB1dGUgdGhlIGhhc2ggdGhleSBuZWVkIHRvIHNpZ24uAAAAAA5oYXNoX2NhbGxfZGF0YQAAAAAAAwAAAAAAAAADdmlkAAAAAAQAAAAAAAAACmV4cGlyYXRpb24AAAAAAAYAAAAAAAAABWNhbGxzAAAAAAAD6gAAB9AAAAAEQ2FsbAAAAAEAAAPuAAAAIAAAAAAAAAJkSW5pdGlhbGl6ZXMgdGhlIERWTiBjb250cmFjdC4KCiMgQXJndW1lbnRzCiogYHZpZGAgLSBWZXJpZmllciBJRCwgdW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoaXMgRFZOCiogYHNpZ25lcnNgIC0gSW5pdGlhbCBtdWx0aXNpZyBzaWduZXJzICgyMC1ieXRlIEV0aGVyZXVtIGFkZHJlc3NlcykKKiBgdGhyZXNob2xkYCAtIE1pbmltdW0gc2lnbmF0dXJlcyByZXF1aXJlZCBmb3IgbXVsdGlzaWcgb3BlcmF0aW9ucwoqIGBhZG1pbnNgIC0gSW5pdGlhbCBhZG1pbiBhZGRyZXNzZXMgZm9yIG9wZXJhdGlvbmFsIGZ1bmN0aW9ucwoqIGBzdXBwb3J0ZWRfbXNnbGlic2AgLSBNZXNzYWdlIGxpYnJhcmllcyB0aGlzIERWTiBzdXBwb3J0cyAoZS5nLiwgVUxOMzAyKQoqIGBwcmljZV9mZWVkYCAtIFByaWNlIGZlZWQgY29udHJhY3QgZm9yIGZlZSBjYWxjdWxhdGlvbnMKKiBgZGVmYXVsdF9tdWx0aXBsaWVyX2Jwc2AgLSBEZWZhdWx0IGZlZSBtdWx0aXBsaWVyICgxMDAwMCA9IDF4KQoqIGB3b3JrZXJfZmVlX2xpYmAgLSBGZWUgbGlicmFyeSBjb250cmFjdCBmb3IgY29tcHV0aW5nIERWTiBmZWVzCiogYGRlcG9zaXRfYWRkcmVzc2AgLSBBZGRyZXNzIHRvIHJlY2VpdmUgZmVlIHBheW1lbnRzAAAADV9fY29uc3RydWN0b3IAAAAAAAAJAAAAAAAAAAN2aWQAAAAABAAAAAAAAAAHc2lnbmVycwAAAAPqAAAD7gAAABQAAAAAAAAACXRocmVzaG9sZAAAAAAAAAQAAAAAAAAABmFkbWlucwAAAAAD6gAAABMAAAAAAAAAEXN1cHBvcnRlZF9tc2dsaWJzAAAAAAAD6gAAABMAAAAAAAAACnByaWNlX2ZlZWQAAAAAABMAAAAAAAAAFmRlZmF1bHRfbXVsdGlwbGllcl9icHMAAAAAAAQAAAAAAAAADndvcmtlcl9mZWVfbGliAAAAAAATAAAAAAAAAA9kZXBvc2l0X2FkZHJlc3MAAAAAEwAAAAAAAAAAAAABalNldHMgYWRtaW4gc3RhdHVzIGZvciBhbiBhZGRyZXNzLiBDYW4gYmUgY2FsbGVkIGJ5IGFuIGV4aXN0aW5nIGFkbWluLgoKVGhpcyBhbGxvd3MgZXhpc3RpbmcgYWRtaW5zIHRvIGFkZCBvciByZW1vdmUgb3RoZXIgYWRtaW5zIHdpdGhvdXQgZ29pbmcgdGhyb3VnaAp0aGUgb3duZXIvbXVsdGlzaWcgcGF0aC4KCiMgQXJndW1lbnRzCiogYGNhbGxlcmAgLSBUaGUgYWRtaW4gY2FsbGluZyB0aGlzIGZ1bmN0aW9uIChtdXN0IHByb3ZpZGUgYXV0aG9yaXphdGlvbikKKiBgYWRtaW5gIC0gVGhlIGFkZHJlc3MgdG8gc2V0IGFkbWluIHN0YXR1cyBmb3IKKiBgYWN0aXZlYCAtIGB0cnVlYCB0byBhZGQgYWRtaW4sIGBmYWxzZWAgdG8gcmVtb3ZlAAAAAAASc2V0X2FkbWluX2J5X2FkbWluAAAAAAADAAAAAAAAAAZjYWxsZXIAAAAAABMAAAAAAAAABWFkbWluAAAAAAAAEwAAAAAAAAAGYWN0aXZlAAAAAAABAAAAAAAAAAAAAABsVXBncmFkZXMgdGhlIGNvbnRyYWN0IHRvIG5ldyBXQVNNIGJ5dGVjb2RlLgpTZXRzIGEgbWlncmF0aW9uIGZsYWcgdGhhdCBtdXN0IGJlIGNsZWFyZWQgYnkgY2FsbGluZyBgbWlncmF0ZWAuAAAAB3VwZ3JhZGUAAAAAAQAAAAAAAAANbmV3X3dhc21faGFzaAAAAAAAA+4AAAAgAAAAAAAAAAAAAACHUnVucyBtaWdyYXRpb24gbG9naWMgYWZ0ZXIgYW4gdXBncmFkZS4KUGFyc2VzIFhEUi1lbmNvZGVkIGBtaWdyYXRpb25fZGF0YWAgYW5kIGNhbGxzIGBfX21pZ3JhdGVgLiBDbGVhcnMgdGhlIG1pZ3JhdGlvbiBmbGFnIG9uIHN1Y2Nlc3MuAAAAAAdtaWdyYXRlAAAAAAEAAAAAAAAADm1pZ3JhdGlvbl9kYXRhAAAAAAAOAAAAAAAAAAAAAABPUGVybWFuZW50bHkgZnJlZXplcyB0aGUgY29udHJhY3QsIHByZXZlbnRpbmcgYW55IGZ1dHVyZSB1cGdyYWRlcy4gSXJyZXZlcnNpYmxlLgAAAAAGZnJlZXplAAAAAAAAAAAAAAAAAAAAAAA7UmV0dXJucyB3aGV0aGVyIHRoZSBjb250cmFjdCBpcyBmcm96ZW4gKHVwZ3JhZGVzIGRpc2FibGVkKS4AAAAACWlzX2Zyb3plbgAAAAAAAAAAAAABAAAAAQAAAAAAAAAAAAAACmF1dGhvcml6ZXIAAAAAAAAAAAABAAAAEwAAAAAAAABJQWRkcyBvciByZW1vdmVzIGEgc2lnbmVyIGZyb20gdGhlIG11bHRpc2lnLiBSZXF1aXJlcyBvd25lciBhdXRob3JpemF0aW9uLgAAAAAAAApzZXRfc2lnbmVyAAAAAAACAAAAAAAAAAZzaWduZXIAAAAAA+4AAAAUAAAAAAAAAAZhY3RpdmUAAAAAAAEAAAAAAAAAAAAAAERTZXRzIHRoZSBzaWduYXR1cmUgdGhyZXNob2xkIChxdW9ydW0pLiBSZXF1aXJlcyBvd25lciBhdXRob3JpemF0aW9uLgAAAA1zZXRfdGhyZXNob2xkAAAAAAAAAQAAAAAAAAAJdGhyZXNob2xkAAAAAAAABAAAAAAAAAAAAAAAH1JldHVybnMgYWxsIHJlZ2lzdGVyZWQgc2lnbmVycy4AAAAAC2dldF9zaWduZXJzAAAAAAAAAAABAAAD6gAAA+4AAAAUAAAAAAAAAC9SZXR1cm5zIHRoZSB0b3RhbCBudW1iZXIgb2YgcmVnaXN0ZXJlZCBzaWduZXJzLgAAAAANdG90YWxfc2lnbmVycwAAAAAAAAAAAAABAAAABAAAAAAAAAAsQ2hlY2tzIGlmIGFuIGFkZHJlc3MgaXMgYSByZWdpc3RlcmVkIHNpZ25lci4AAAAJaXNfc2lnbmVyAAAAAAAAAQAAAAAAAAAGc2lnbmVyAAAAAAPuAAAAFAAAAAEAAAABAAAAAAAAADFSZXR1cm5zIHRoZSBjdXJyZW50IHNpZ25hdHVyZSB0aHJlc2hvbGQgKHF1b3J1bSkuAAAAAAAACXRocmVzaG9sZAAAAAAAAAAAAAABAAAABAAAAAAAAAA1VmVyaWZpZXMgc2lnbmF0dXJlcyBhZ2FpbnN0IHRoZSBjb25maWd1cmVkIHRocmVzaG9sZC4AAAAAAAARdmVyaWZ5X3NpZ25hdHVyZXMAAAAAAAACAAAAAAAAAAZkaWdlc3QAAAAAA+4AAAAgAAAAAAAAAApzaWduYXR1cmVzAAAAAAPqAAAD7gAAAEEAAAAAAAAAAAAAAC9WZXJpZmllcyBzaWduYXR1cmVzIGFnYWluc3QgYSBjdXN0b20gdGhyZXNob2xkLgAAAAATdmVyaWZ5X25fc2lnbmF0dXJlcwAAAAADAAAAAAAAAAZkaWdlc3QAAAAAA+4AAAAgAAAAAAAAAApzaWduYXR1cmVzAAAAAAPqAAAD7gAAAEEAAAAAAAAACXRocmVzaG9sZAAAAAAAAAQAAAAAAAAAAAAAAKVFeHRlbmRzIHRoZSBpbnN0YW5jZSBUVEwuCgojIEFyZ3VtZW50cwoKKiBgdGhyZXNob2xkYCAtIFRoZSB0aHJlc2hvbGQgdG8gZXh0ZW5kIHRoZSBUVEwgKGlmIGN1cnJlbnQgVFRMIGlzIGJlbG93IHRoaXMsIGV4dGVuZCkuCiogYGV4dGVuZF90b2AgLSBUaGUgVFRMIHRvIGV4dGVuZCB0by4AAAAAAAATZXh0ZW5kX2luc3RhbmNlX3R0bAAAAAACAAAAAAAAAAl0aHJlc2hvbGQAAAAAAAAEAAAAAAAAAAlleHRlbmRfdG8AAAAAAAAEAAAAAAAAAAAAAAGPU2V0cyBUVEwgY29uZmlncyBmb3IgaW5zdGFuY2UgYW5kIHBlcnNpc3RlbnQgc3RvcmFnZS4KCi0gYE5vbmVgIHZhbHVlcyByZW1vdmUgdGhlIGNvcnJlc3BvbmRpbmcgY29uZmlnIChkaXNhYmxlcyBhdXRvLWV4dGVuc2lvbiBmb3IgdGhhdCB0eXBlKQotIFZhbGlkYXRlcyB0aGF0IGB0aHJlc2hvbGQgPD0gZXh0ZW5kX3RvIDw9IE1BWF9UVExgCgojIEFyZ3VtZW50cwotIGBpbnN0YW5jZWAgLSBUVEwgY29uZmlnIGZvciBpbnN0YW5jZSBzdG9yYWdlCi0gYHBlcnNpc3RlbnRgIC0gVFRMIGNvbmZpZyBmb3IgcGVyc2lzdGVudCBzdG9yYWdlCgojIFBhbmljcwotIGBUdGxDb25maWdGcm96ZW5gIGlmIGNvbmZpZ3MgYXJlIGZyb3plbgotIGBJbnZhbGlkVHRsQ29uZmlnYCBpZiB2YWxpZGF0aW9uIGZhaWxzAAAAAA9zZXRfdHRsX2NvbmZpZ3MAAAAAAgAAAAAAAAAIaW5zdGFuY2UAAAPoAAAH0AAAAAlUdGxDb25maWcAAAAAAAAAAAAACnBlcnNpc3RlbnQAAAAAA+gAAAfQAAAACVR0bENvbmZpZwAAAAAAAAAAAAAAAAAASFJldHVybnMgdGhlIGN1cnJlbnQgVFRMIGNvbmZpZ3MgYXMgKGluc3RhbmNlX2NvbmZpZywgcGVyc2lzdGVudF9jb25maWcpLgAAAAt0dGxfY29uZmlncwAAAAAAAAAAAQAAA+0AAAACAAAD6AAAB9AAAAAJVHRsQ29uZmlnAAAA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dGggdGhlIGVuZHBvaW50AAAAABFBbHJlYWR5UmVnaXN0ZXJlZAAAAAAAAAEAAAA2Q29tcG9zZSBtZXNzYWdlIGFscmVhZHkgZXhpc3RzIGZvciB0aGlzIEdVSUQgYW5kIGluZGV4AAAAAAANQ29tcG9zZUV4aXN0cwAAAAAAAAIAAAA2Q29tcG9zZSBtZXNzYWdlIG5vdCBmb3VuZCBmb3IgdGhlIGdpdmVuIEdVSUQgYW5kIGluZGV4AAAAAAAPQ29tcG9zZU5vdEZvdW5kAAAAAAMAAAA6RGVmYXVsdCByZWNlaXZlIGxpYnJhcnkgaXMgbm90IHNldCBmb3IgdGhlIHNvdXJjZSBlbmRwb2ludAAAAAAAHERlZmF1bHRSZWNlaXZlTGliVW5hdmFpbGFibGUAAAAEAAAAPERlZmF1bHQgc2VuZCBsaWJyYXJ5IGlzIG5vdCBzZXQgZm9yIHRoZSBkZXN0aW5hdGlvbiBlbmRwb2ludAAAABlEZWZhdWx0U2VuZExpYlVuYXZhaWxhYmxlAAAAAAAABQAAAC9TdXBwbGllZCBuYXRpdmUgdG9rZW4gZmVlIGlzIGxlc3MgdGhhbiByZXF1aXJlZAAAAAAVSW5zdWZmaWNpZW50TmF0aXZlRmVlAAAAAAAABgAAACxTdXBwbGllZCBaUk8gdG9rZW4gZmVlIGlzIGxlc3MgdGhhbiByZXF1aXJlZAAAABJJbnN1ZmZpY2llbnRacm9GZWUAAAAAAAcAAAArVGltZW91dCBleHBpcnkgaXMgaW52YWxpZCAoYWxyZWFkeSBleHBpcmVkKQAAAAANSW52YWxpZEV4cGlyeQAAAAAAAAgAAAAgRmVlIGFtb3VudCBpcyBpbnZhbGlkIChuZWdhdGl2ZSkAAAAQSW52YWxpZEZlZUFtb3VudAAAAAkAAAArQ29tcG9zZSBpbmRleCBleGNlZWRzIG1heGltdW0gYWxsb3dlZCB2YWx1ZQAAAAAMSW52YWxpZEluZGV4AAAACgAAACxOb25jZSBpcyBpbnZhbGlkIGZvciB0aGUgcmVxdWVzdGVkIG9wZXJhdGlvbgAAAAxJbnZhbGlkTm9uY2UAAAALAAAAMFBheWxvYWQgaGFzaCBpcyBpbnZhbGlkIChlbXB0eSBoYXNoIG5vdCBhbGxvd2VkKQAAABJJbnZhbGlkUGF5bG9hZEhhc2gAAAAAAAwAAABBUmVjZWl2ZSBsaWJyYXJ5IGlzIG5vdCB2YWxpZCBmb3IgdGhlIHJlY2VpdmVyIGFuZCBzb3VyY2UgZW5kcG9pbnQAAAAAAAAVSW52YWxpZFJlY2VpdmVMaWJyYXJ5AAAAAAAADQAAADFPcGVyYXRpb24gcmVxdWlyZXMgYSBub24tZGVmYXVsdCAoY3VzdG9tKSBsaWJyYXJ5AAAAAAAAEU9ubHlOb25EZWZhdWx0TGliAAAAAAAADgAAACdMaWJyYXJ5IG11c3Qgc3VwcG9ydCByZWNlaXZpbmcgbWVzc2FnZXMAAAAADk9ubHlSZWNlaXZlTGliAAAAAAAPAAAALExpYnJhcnkgbXVzdCBiZSByZWdpc3RlcmVkIHdpdGggdGhlIGVuZHBvaW50AAAAEU9ubHlSZWdpc3RlcmVkTGliAAAAAAAAEAAAACVMaWJyYXJ5IG11c3Qgc3VwcG9ydCBzZW5kaW5nIG1lc3NhZ2VzAAAAAAAAC09ubHlTZW5kTGliAAAAABEAAAA5TWVzc2FnaW5nIHBhdGggY2Fubm90IGJlIGluaXRpYWxpemVkIGZvciB0aGUgZ2l2ZW4gb3JpZ2luAAAAAAAAFFBhdGhOb3RJbml0aWFsaXphYmxlAAAAEgAAAC9NZXNzYWdlIGNhbm5vdCBiZSB2ZXJpZmllZCBmb3IgdGhlIGdpdmVuIG9yaWdpbgAAAAARUGF0aE5vdFZlcmlmaWFibGUAAAAAAAATAAAAK1BheWxvYWQgaGFzaCBkb2VzIG5vdCBtYXRjaCB0aGUgc3RvcmVkIGhhc2gAAAAAE1BheWxvYWRIYXNoTm90Rm91bmQAAAAAFAAAACdOZXcgdmFsdWUgaXMgdGhlIHNhbWUgYXMgZXhpc3RpbmcgdmFsdWUAAAAACVNhbWVWYWx1ZQAAAAAAABUAAAAvQ2FsbGVyIGlzIG5vdCBhdXRob3JpemVkIChub3QgT0FwcCBvciBkZWxlZ2F0ZSkAAAAADFVuYXV0aG9yaXplZAAAABYAAAArRW5kcG9pbnQgSUQgaXMgbm90IHN1cHBvcnRlZCBieSB0aGUgbGlicmFyeQAAAAAOVW5zdXBwb3J0ZWRFaWQAAAAAABcAAAA5WlJPIGZlZSBtdXN0IGJlIGdyZWF0ZXIgdGhhbiB6ZXJvIHdoZW4gcGF5X2luX3pybyBpcyB0cnVlAAAAAAAAClplcm9acm9GZWUAAAAAABgAAAAcWlJPIHRva2VuIGFkZHJlc3MgaXMgbm90IHNldAAAAA5acm9VbmF2YWlsYWJsZQAAAAAAGQAAAAEAAAAtUGFyYW1ldGVycyBmb3Igc2VuZGluZyBhIGNyb3NzLWNoYWluIG1lc3NhZ2UuAAAAAAAAAAAAAA9NZXNzYWdpbmdQYXJhbXMAAAAABQAAACtEZXN0aW5hdGlvbiBlbmRwb2ludCBJRCAoY2hhaW4gaWRlbnRpZmllcikuAAAAAAdkc3RfZWlkAAAAAAQAAAAcVGhlIG1lc3NhZ2UgcGF5bG9hZCB0byBzZW5kLgAAAAdtZXNzYWdlAAAAAA4AAAAhRW5jb2RlZCBleGVjdXRvciBhbmQgRFZOIG9wdGlvbnMuAAAAAAAAB29wdGlvbnMAAAAADgAAADlXaGV0aGVyIHRvIHBheSBmZWVzIGluIFpSTyB0b2tlbiBpbnN0ZWFkIG9mIG5hdGl2ZSB0b2tlbi4AAAAAAAAKcGF5X2luX3pybwAAAAAAAQAAADVSZWNlaXZlciBhZGRyZXNzIG9uIHRoZSBkZXN0aW5hdGlvbiBjaGFpbiAoMzIgYnl0ZXMpLgAAAAAAAAhyZWNlaXZlcgAAA+4AAAAgAAAAAQAAAE1Tb3VyY2UgbWVzc2FnZSBpbmZvcm1hdGlvbiBpZGVudGlmeWluZyB3aGVyZSBhIGNyb3NzLWNoYWluIG1lc3NhZ2UgY2FtZSBmcm9tLgAAAAAAAAAAAAAGT3JpZ2luAAAAAAADAAAAF05vbmNlIGZvciB0aGlzIHBhdGh3YXkuAAAAAAVub25jZQAAAAAAAAYAAAAuU2VuZGVyIGFkZHJlc3Mgb24gdGhlIHNvdXJjZSBjaGFpbiAoMzIgYnl0ZXMpLgAAAAAABnNlbmRlcgAAAAAD7gAAACAAAAAmU291cmNlIGVuZHBvaW50IElEIChjaGFpbiBpZGVudGlmaWVyKS4AAAAAAAdzcmNfZWlkAAAAAAQAAAABAAAAKEZlZSBzdHJ1Y3R1cmUgZm9yIGNyb3NzLWNoYWluIG1lc3NhZ2luZy4AAAAAAAAADE1lc3NhZ2luZ0ZlZQAAAAIAAAAfRmVlIHBhaWQgaW4gbmF0aXZlIHRva2VuIChYTE0pLgAAAAAKbmF0aXZlX2ZlZQAAAAAACwAAAChGZWUgcGFpZCBpbiBaUk8gdG9rZW4gKExheWVyWmVybyB0b2tlbikuAAAAB3pyb19mZWUAAAAACwAAAAEAAABCUmVjZWlwdCByZXR1cm5lZCBhZnRlciBzdWNjZXNzZnVsbHkgc2VuZGluZyBhIGNyb3NzLWNoYWluIG1lc3NhZ2UuAAAAAAAAAAAAEE1lc3NhZ2luZ1JlY2VpcHQAAAADAAAAKVRoZSBmZWVzIGNoYXJnZWQgZm9yIHNlbmRpbmcgdGhlIG1lc3NhZ2UuAAAAAAAAA2ZlZQAAAAfQAAAADE1lc3NhZ2luZ0ZlZQAAACtHbG9iYWxseSB1bmlxdWUgaWRlbnRpZmllciBmb3IgdGhlIG1lc3NhZ2UuAAAAAARndWlkAAAD7gAAACAAAAAkVGhlIG91dGJvdW5kIG5vbmNlIGZvciB0aGlzIHBhdGh3YXkuAAAABW5vbmNlAAAAAAAABgAAAAIAAAA4VHlwZSBvZiBtZXNzYWdlIGxpYnJhcnkgaW5kaWNhdGluZyBzdXBwb3J0ZWQgb3BlcmF0aW9ucy4AAAAAAAAADk1lc3NhZ2VMaWJUeXBlAAAAAAADAAAAAAAAAB9TdXBwb3J0cyBvbmx5IHNlbmRpbmcgbWVzc2FnZXMuAAAAAARTZW5kAAAAAAAAACFTdXBwb3J0cyBvbmx5IHJlY2VpdmluZyBtZXNzYWdlcy4AAAAAAAAHUmVjZWl2ZQAAAAAAAAAALVN1cHBvcnRzIGJvdGggc2VuZGluZyBhbmQgcmVjZWl2aW5nIG1lc3NhZ2VzLgAAAAAAAA5TZW5kQW5kUmVjZWl2ZQAAAAAAAQAAALdWZXJzaW9uIGluZm9ybWF0aW9uIGZvciBhIG1lc3NhZ2UgbGlicmFyeS4KCk5vdGU6IGBtaW5vcmAgYW5kIGBlbmRwb2ludF92ZXJzaW9uYCB1c2UgYHUzMmAgaW5zdGVhZCBvZiBgdThgIGJlY2F1c2UgU3RlbGxhciBkb2VzIG5vdApzdXBwb3J0IGB1OGAgdHlwZXMgaW4gY29udHJhY3QgaW50ZXJmYWNlIGZ1bmN0aW9ucy4AAAAAAAAAABFNZXNzYWdlTGliVmVyc2lvbgAAAAAAAAMAAAAzRW5kcG9pbnQgdmVyc2lvbiAoc2hvdWxkIG5vdCBleGNlZWQgdTg6Ok1BWCA9IDI1NSkuAAAAABBlbmRwb2ludF92ZXJzaW9uAAAABAAAABVNYWpvciB2ZXJzaW9uIG51bWJlci4AAAAAAAAFbWFqb3IAAAAAAAAGAAAAN01pbm9yIHZlcnNpb24gbnVtYmVyIChzaG91bGQgbm90IGV4Y2VlZCB1ODo6TUFYID0gMjU1KS4AAAAABW1pbm9yAAAAAAAABAAAAAEAAAA2VGltZW91dCBjb25maWd1cmF0aW9uIGZvciByZWNlaXZlIGxpYnJhcnkgdHJhbnNpdGlvbnMuAAAAAAAAAAAAB1RpbWVvdXQAAAAAAgAAADNVbml4IHRpbWVzdGFtcCBpbiBzZWNvbmRzIHdoZW4gdGhlIHRpbWVvdXQgZXhwaXJlcy4AAAAABmV4cGlyeQAAAAAABgAAAENUaGUgb2xkIGxpYnJhcnkgYWRkcmVzcyB0aGF0IHJlbWFpbnMgdmFsaWQgZHVyaW5nIHRoZSBncmFjZSBwZXJpb2QuAAAAAANsaWIAAAAAEwAAAAEAAAA1UGFyYW1ldGVycyBmb3Igc2V0dGluZyBtZXNzYWdlIGxpYnJhcnkgY29uZmlndXJhdGlvbi4AAAAAAAAAAAAADlNldENvbmZpZ1BhcmFtAAAAAAADAAAAH1hEUi1lbmNvZGVkIGNvbmZpZ3VyYXRpb24gZGF0YS4AAAAABmNvbmZpZwAAAAAADgAAADBUaGUgdHlwZSBvZiBjb25maWd1cmF0aW9uIChlLmcuLCBleGVjdXRvciwgVUxOKS4AAAALY29uZmlnX3R5cGUAAAAABAAAACdUaGUgZW5kcG9pbnQgSUQgdGhpcyBjb25maWcgYXBwbGllcyB0by4AAAAAA2VpZAAAAAAEAAAAAQAAADFSZXNvbHZlZCBsaWJyYXJ5IGluZm9ybWF0aW9uIHdpdGggZGVmYXVsdCBzdGF0dXMuAAAAAAAAAAAAAA9SZXNvbHZlZExpYnJhcnkAAAAAAgAAAERXaGV0aGVyIHRoaXMgaXMgdGhlIGRlZmF1bHQgbGlicmFyeSAodHJ1ZSkgb3IgT0FwcC1zcGVjaWZpYyAoZmFsc2UpLgAAAAppc19kZWZhdWx0AAAAAAABAAAAHVRoZSByZXNvbHZlZCBsaWJyYXJ5IGFkZHJlc3MuAAAAAAAAA2xpYgAAAAATAAAAAQAAAEhPdXRib3VuZCBwYWNrZXQgY29udGFpbmluZyBhbGwgaW5mb3JtYXRpb24gZm9yIGNyb3NzLWNoYWluIHRyYW5zbWlzc2lvbi4AAAAAAAAADk91dGJvdW5kUGFja2V0AAAAAAAHAAAAGERlc3RpbmF0aW9uIGVuZHBvaW50IElELgAAAAdkc3RfZWlkAAAAAAQAAAAsR2xvYmFsbHkgdW5pcXVlIGlkZW50aWZpZXIgZm9yIHRoaXMgbWVzc2FnZS4AAAAEZ3VpZAAAA+4AAAAgAAAAFFRoZSBtZXNzYWdlIHBheWxvYWQuAAAAB21lc3NhZ2UAAAAADgAAACBPdXRib3VuZCBub25jZSBmb3IgdGhpcyBwYXRod2F5LgAAAAVub25jZQAAAAAAAAYAAAAxUmVjZWl2ZXIgYWRkcmVzcyBvbiBkZXN0aW5hdGlvbiBjaGFpbiAoMzIgYnl0ZXMpLgAAAAAAAAhyZWNlaXZlcgAAA+4AAAAgAAAAH1NlbmRlciBhZGRyZXNzIG9uIHNvdXJjZSBjaGFpbi4AAAAABnNlbmRlcgAAAAAAEwAAABNTb3VyY2UgZW5kcG9pbnQgSUQuAAAAAAdzcmNfZWlkAAAAAAQAAAABAAAAK0EgZmVlIHJlY2lwaWVudCB3aXRoIHRoZSBhbW91bnQgdG8gYmUgcGFpZC4AAAAAAAAAAAxGZWVSZWNpcGllbnQAAAACAAAAFUFtb3VudCBvZiBmZWUgdG8gcGF5LgAAAAAAAAZhbW91bnQAAAAAAAsAAAAfVGhlIGFkZHJlc3MgdG8gc2VuZCB0aGUgZmVlIHRvLgAAAAACdG8AAAAAABMAAAABAAAAPFJlc3VsdCBvZiBzZW5kIG9wZXJhdGlvbiBjb250YWluaW5nIGZlZXMgYW5kIGVuY29kZWQgcGFja2V0LgAAAAAAAAANRmVlc0FuZFBhY2tldAAAAAAAAAMAAAAqVGhlIGVuY29kZWQgcGFja2V0IHJlYWR5IGZvciB0cmFuc21pc3Npb24uAAAAAAAOZW5jb2RlZF9wYWNrZXQAAAAAAA4AAAA/TGlzdCBvZiBuYXRpdmUgdG9rZW4gZmVlIHJlY2lwaWVudHMgKGV4ZWN1dG9yLCBEVk5zLCB0cmVhc3VyeSkuAAAAABVuYXRpdmVfZmVlX3JlY2lwaWVudHMAAAAAAAPqAAAH0AAAAAxGZWVSZWNpcGllbnQAAAAsTGlzdCBvZiBaUk8gdG9rZW4gZmVlIHJlY2lwaWVudHMgKHRyZWFzdXJ5KS4AAAASenJvX2ZlZV9yZWNpcGllbnRzAAAAAAPqAAAH0AAAAAxGZWVSZWNpcGllbnQAAAABAAAA4VBhcmFtZXRlcnMgZm9yIERWTiBmZWUgY2FsY3VsYXRpb24uCgpDb250YWlucyBhbGwgaW5wdXRzIG5lZWRlZCBieSB0aGUgZmVlIGxpYnJhcnkgdG8gY2FsY3VsYXRlIHZlcmlmaWNhdGlvbiBmZWVzCmZvciBjcm9zcy1jaGFpbiBtZXNzYWdlcy4gSW5jbHVkZXMgbWVzc2FnZSBwYXJhbWV0ZXJzLCBjb21tb24gY29uZmlndXJhdGlvbiwKYW5kIGRlc3RpbmF0aW9uLXNwZWNpZmljIHNldHRpbmdzLgAAAAAAAAAAAAAMRHZuRmVlUGFyYW1zAAAACgAAACdOdW1iZXIgb2YgYmxvY2sgY29uZmlybWF0aW9ucyByZXF1aXJlZC4AAAAADWNvbmZpcm1hdGlvbnMAAAAAAAAGAAAATERlZmF1bHQgZmVlIG11bHRpcGxpZXIgaW4gYmFzaXMgcG9pbnRzICh1c2VkIGlmIG5vIGRzdC1zcGVjaWZpYyBtdWx0aXBsaWVyKS4AAAAWZGVmYXVsdF9tdWx0aXBsaWVyX2JwcwAAAAAABAAAACtEZXN0aW5hdGlvbiBlbmRwb2ludCBJRCAoY2hhaW4gaWRlbnRpZmllcikuAAAAAAdkc3RfZWlkAAAAAAQAAAAjTWluaW11bSBmZWUgbWFyZ2luIGluIFVTRCAoc2NhbGVkKS4AAAAAEGZsb29yX21hcmdpbl91c2QAAAAKAAABED09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CkRlc3RpbmF0aW9uLVNwZWNpZmljIENvbmZpZ3VyYXRpb24KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KR2FzIGVzdGltYXRlIGZvciB2ZXJpZmljYXRpb24gb24gZGVzdGluYXRpb24gY2hhaW4uAAAAA2dhcwAAAAAKAAAARkRlc3RpbmF0aW9uLXNwZWNpZmljIGZlZSBtdWx0aXBsaWVyIGluIGJhc2lzIHBvaW50cyAoMCA9IHVzZSBkZWZhdWx0KS4AAAAAAA5tdWx0aXBsaWVyX2JwcwAAAAAABAAAAAtEVk4gb3B0aW9ucwAAAAAHb3B0aW9ucwAAAAAOAAABED09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CkNvbW1vbiBDb25maWd1cmF0aW9uCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClByaWNlIGZlZWQgY29udHJhY3QgYWRkcmVzcyBmb3IgZ2FzIHByaWNlIGFuZCBleGNoYW5nZSByYXRlIGRhdGEuAAAACnByaWNlX2ZlZWQAAAAAABMAAAAnTnVtYmVyIG9mIHJlcXVpcmVkIHNpZ25hdHVyZXMgKHF1b3J1bSkuAAAAAAZxdW9ydW0AAAAAAAQAAADlPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KTWVzc2FnZSBQYXJhbWV0ZXJzCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClRoZSBPQXBwIHNlbmRlciBhZGRyZXNzLgAAAAAAAAZzZW5kZXIAAAAAABMAAAABAAAA41BhcmFtZXRlcnMgZm9yIGV4ZWN1dG9yIGZlZSBjYWxjdWxhdGlvbi4KCkNvbnRhaW5zIGFsbCBpbnB1dHMgbmVlZGVkIGJ5IHRoZSBmZWUgbGlicmFyeSB0byBjYWxjdWxhdGUgZXhlY3V0aW9uIGZlZXMKZm9yIGNyb3NzLWNoYWluIG1lc3NhZ2VzLiBJbmNsdWRlcyBtZXNzYWdlIHBhcmFtZXRlcnMsIGNvbW1vbiBjb25maWd1cmF0aW9uLAphbmQgZGVzdGluYXRpb24tc3BlY2lmaWMgc2V0dGluZ3MuAAAAAAAAAAAJRmVlUGFyYW1zAAAAAAAACwAAACZTaXplIG9mIHRoZSBtZXNzYWdlIGNhbGxkYXRhIGluIGJ5dGVzLgAAAAAADWNhbGxkYXRhX3NpemUAAAAAAAAEAAAATERlZmF1bHQgZmVlIG11bHRpcGxpZXIgaW4gYmFzaXMgcG9pbnRzICh1c2VkIGlmIG5vIGRzdC1zcGVjaWZpYyBtdWx0aXBsaWVyKS4AAAAWZGVmYXVsdF9tdWx0aXBsaWVyX2JwcwAAAAAABAAAACtEZXN0aW5hdGlvbiBlbmRwb2ludCBJRCAoY2hhaW4gaWRlbnRpZmllcikuAAAAAAdkc3RfZWlkAAAAAAQAAAAjTWluaW11bSBmZWUgbWFyZ2luIGluIFVTRCAoc2NhbGVkKS4AAAAAEGZsb29yX21hcmdpbl91c2QAAAAKAAAANkJhc2UgZ2FzIGZvciBlYWNoIGx6Q29tcG9zZSBjYWxsIG9uIGRlc3RpbmF0aW9uIGNoYWluLgAAAAAAE2x6X2NvbXBvc2VfYmFzZV9nYXMAAAAABgAAARM9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpEZXN0aW5hdGlvbi1TcGVjaWZpYyBDb25maWd1cmF0aW9uCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CkJhc2UgZ2FzIGZvciBselJlY2VpdmUgZXhlY3V0aW9uIG9uIGRlc3RpbmF0aW9uIGNoYWluLgAAAAATbHpfcmVjZWl2ZV9iYXNlX2dhcwAAAAAGAAAARkRlc3RpbmF0aW9uLXNwZWNpZmljIGZlZSBtdWx0aXBsaWVyIGluIGJhc2lzIHBvaW50cyAoMCA9IHVzZSBkZWZhdWx0KS4AAAAAAA5tdWx0aXBsaWVyX2JwcwAAAAAABAAAACxNYXhpbXVtIG5hdGl2ZSB0b2tlbiB2YWx1ZSB0aGF0IGNhbiBiZSBzZW50LgAAAApuYXRpdmVfY2FwAAAAAAAKAAAARkVuY29kZWQgZXhlY3V0b3Igb3B0aW9ucyAobHpSZWNlaXZlIGdhcywgbHpDb21wb3NlLCBuYXRpdmVEcm9wLCBldGMuKS4AAAAAAAdvcHRpb25zAAAAAA4AAAEQPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KQ29tbW9uIENvbmZpZ3VyYXRpb24KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KUHJpY2UgZmVlZCBjb250cmFjdCBhZGRyZXNzIGZvciBnYXMgcHJpY2UgYW5kIGV4Y2hhbmdlIHJhdGUgZGF0YS4AAAAKcHJpY2VfZmVlZAAAAAAAEwAAAOU9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpNZXNzYWdlIFBhcmFtZXRlcnMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KVGhlIE9BcHAgc2VuZGVyIGFkZHJlc3MuAAAAAAAABnNlbmRlcgAAAAAAEwAAAAEAAACER2FzIHByaWNlIGluZm9ybWF0aW9uIGZvciBhIGRlc3RpbmF0aW9uIGVuZHBvaW50LgoKQ29udGFpbnMgdGhlIGV4Y2hhbmdlIHJhdGUgYW5kIGdhcyBjb3N0cyBuZWVkZWQgZm9yIGNyb3NzLWNoYWluIGZlZSBjYWxjdWxhdGlvbnMuAAAAAAAAAAVQcmljZQAAAAAAAAMAAAA3R2FzIGNvc3QgcGVyIGJ5dGUgb2YgY2FsbGRhdGEgb24gdGhlIGRlc3RpbmF0aW9uIGNoYWluLgAAAAAMZ2FzX3Blcl9ieXRlAAAABAAAAEJHYXMgcHJpY2UgaW4gdGhlIHNtYWxsZXN0IHVuaXQgKHdlaSBmb3IgRVZNLCBzdHJvb3BzIGZvciBTdGVsbGFyKS4AAAAAABFnYXNfcHJpY2VfaW5fdW5pdAAAAAAAAAYAAACpUHJpY2UgcmF0aW8gPSAocmVtb3RlIG5hdGl2ZSB0b2tlbiBwcmljZSAvIGxvY2FsIG5hdGl2ZSB0b2tlbiBwcmljZSkgKiBQUklDRV9SQVRJT19ERU5PTUlOQVRPUi4KVXNlZCB0byBjb252ZXJ0IGRlc3RpbmF0aW9uIGNoYWluIGdhcyBjb3N0cyB0byBzb3VyY2UgY2hhaW4gbmF0aXZlIHRva2VuLgAAAAAAAAtwcmljZV9yYXRpbwAAAAAKAAAAAQAAAIBGZWUgZXN0aW1hdGlvbiByZXN1bHQgd2l0aCBkZXRhaWxlZCBicmVha2Rvd24uCgpDb250YWlucyB0aGUgY2FsY3VsYXRlZCBmZWUgYW5kIGFsbCBpbnRlcm1lZGlhdGUgdmFsdWVzIHVzZWQgaW4gdGhlIGNhbGN1bGF0aW9uLgAAAAAAAAALRmVlRXN0aW1hdGUAAAAABAAAADBTb3VyY2UgY2hhaW4gbmF0aXZlIHRva2VuIHByaWNlIGluIFVTRCAoc2NhbGVkKS4AAAAQbmF0aXZlX3ByaWNlX3VzZAAAAAoAAAAlUHJpY2UgcmF0aW8gdXNlZCBmb3IgdGhlIGNhbGN1bGF0aW9uLgAAAAAAAAtwcmljZV9yYXRpbwAAAAAKAAAAMkRlbm9taW5hdG9yIGZvciB0aGUgcHJpY2UgcmF0aW8gKHR5cGljYWxseSAxMF4yMCkuAAAAAAAXcHJpY2VfcmF0aW9fZGVub21pbmF0b3IAAAAACgAAADFUb3RhbCBnYXMgZmVlIGluIHNvdXJjZSBjaGFpbiBuYXRpdmUgdG9rZW4gdW5pdHMuAAAAAAAADXRvdGFsX2dhc19mZWUAAAAAAAALAAAABAAAAB1QYWNrZXRDb2RlY1YxRXJyb3I6IDExMDAtMTEwOQAAAAAAAAAAAAASUGFja2V0Q29kZWNWMUVycm9yAAAAAAACAAAAAAAAABNJbnZhbGlkUGFja2V0SGVhZGVyAAAABEwAAAAAAAAAFEludmFsaWRQYWNrZXRWZXJzaW9uAAAETQAAAAQAAAAdV29ya2VyT3B0aW9uc0Vycm9yOiAxMTEwLTExMTkAAAAAAAAAAAAAEldvcmtlck9wdGlvbnNFcnJvcgAAAAAACQAAAAAAAAASSW52YWxpZEJ5dGVzTGVuZ3RoAAAAAARWAAAAAAAAABlJbnZhbGlkTGVnYWN5T3B0aW9uc1R5cGUxAAAAAAAEVwAAAAAAAAAZSW52YWxpZExlZ2FjeU9wdGlvbnNUeXBlMgAAAAAABFgAAAAAAAAAEUludmFsaWRPcHRpb25UeXBlAAAAAAAEWQAAAAAAAAAOSW52YWxpZE9wdGlvbnMAAAAABFoAAAAAAAAAD0ludmFsaWRXb3JrZXJJZAAAAARbAAAAAAAAAB1MZWdhY3lPcHRpb25zVHlwZTFHYXNPdmVyZmxvdwAAAAAABFwAAAAAAAAAIExlZ2FjeU9wdGlvbnNUeXBlMkFtb3VudE92ZXJmbG93AAAEXQAAAAAAAAAdTGVnYWN5T3B0aW9uc1R5cGUyR2FzT3ZlcmZsb3cAAAAAAAReAAAABAAAABxCdWZmZXJSZWFkZXJFcnJvcjogMTAwMC0xMDA5AAAAAAAAABFCdWZmZXJSZWFkZXJFcnJvcgAAAAAAAAIAAAAAAAAADUludmFsaWRMZW5ndGgAAAAAAAPoAAAAAAAAABVJbnZhbGlkQWRkcmVzc1BheWxvYWQAAAAAAAPpAAAABAAAABxCdWZmZXJXcml0ZXJFcnJvcjogMTAxMC0xMDE5AAAAAAAAABFCdWZmZXJXcml0ZXJFcnJvcgAAAAAAAAEAAAAAAAAAFUludmFsaWRBZGRyZXNzUGF5bG9hZAAAAAAAA/IAAAAEAAAAH1R0bENvbmZpZ3VyYWJsZUVycm9yOiAxMDIwLTEwMjkAAAAAAAAAABRUdGxDb25maWd1cmFibGVFcnJvcgAAAAMAAAAAAAAAEEludmFsaWRUdGxDb25maWcAAAP8AAAAAAAAAA9UdGxDb25maWdGcm96ZW4AAAAD/QAAAAAAAAAWVHRsQ29uZmlnQWxyZWFkeUZyb3plbgAAAAAD/gAAAAQAAAAXT3duYWJsZUVycm9yOiAxMDMwLTEwMzkAAAAAAAAAAAxPd25hYmxlRXJyb3IAAAAHAAAAAAAAABFJbnZhbGlkQXV0aG9yaXplcgAAAAAABAYAAAAAAAAAE0ludmFsaWRQZW5kaW5nT3duZXIAAAAEBwAAAAAAAAAKSW52YWxpZFR0bAAAAAAECAAAAAAAAAARTm9QZW5kaW5nVHJhbnNmZXIAAAAAAAQJAAAAAAAAAA9Pd25lckFscmVhZHlTZXQAAAAECgAAAAAAAAALT3duZXJOb3RTZXQAAAAECwAAAAAAAAASVHJhbnNmZXJJblByb2dyZXNzAAAAAAQMAAAABAAAABhCeXRlc0V4dEVycm9yOiAxMDQwLTEwNDkAAAAAAAAADUJ5dGVzRXh0RXJyb3IAAAAAAAABAAAAAAAAAA5MZW5ndGhNaXNtYXRjaAAAAAAEEAAAAAQAAAAbVXBncmFkZWFibGVFcnJvcjogMTA1MC0xMDU5AAAAAAAAAAAQVXBncmFkZWFibGVFcnJvcgAAAAMAAAAAAAAAFEludmFsaWRNaWdyYXRpb25EYXRhAAAEGgAAAAAAAAATTWlncmF0aW9uTm90QWxsb3dlZAAAAAQbAAAAAAAAAA5VcGdyYWRlc0Zyb3plbgAAAAAEHAAAAAQAAAAYTXVsdGlTaWdFcnJvcjogMTA2MC0xMDY5AAAAAAAAAA1NdWx0aVNpZ0Vycm9yAAAAAAAACQAAAAAAAAASQWxyZWFkeUluaXRpYWxpemVkAAAAAAQkAAAAAAAAABFJbnZhbGlkQXV0aG9yaXplcgAAAAAABCUAAAAAAAAADUludmFsaWRTaWduZXIAAAAAAAQmAAAAAAAAAA5TaWduYXR1cmVFcnJvcgAAAAAEJwAAAAAAAAATU2lnbmVyQWxyZWFkeUV4aXN0cwAAAAQoAAAAAAAAAA5TaWduZXJOb3RGb3VuZAAAAAAEKQAAAAAAAAAdVG90YWxTaWduZXJzTGVzc1RoYW5UaHJlc2hvbGQAAAAAAAQqAAAAAAAAAA9VbnNvcnRlZFNpZ25lcnMAAAAEKwAAAAAAAAANWmVyb1RocmVzaG9sZAAAAAAABCwAAAAFAAAAMEV2ZW50IGVtaXR0ZWQgd2hlbiBhIHNpZ25lciBpcyBhZGRlZCBvciByZW1vdmVkLgAAAAAAAAAJU2lnbmVyU2V0AAAAAAAAAQAAAApzaWduZXJfc2V0AAAAAAACAAAAAAAAAAZzaWduZXIAAAAAA+4AAAAUAAAAAQAAAAAAAAAGYWN0aXZlAAAAAAABAAAAAAAAAAIAAAAFAAAANkV2ZW50IGVtaXR0ZWQgd2hlbiB0aGUgc2lnbmF0dXJlIHRocmVzaG9sZCBpcyBjaGFuZ2VkLgAAAAAAAAAAAAxUaHJlc2hvbGRTZXQAAAABAAAADXRocmVzaG9sZF9zZXQAAAAAAAABAAAAAAAAAAl0aHJlc2hvbGQAAAAAAAAEAAAAAAAAAAIAAAACAAAAAAAAAAAAAAAPTXVsdGlTaWdTdG9yYWdlAAAAAAIAAAAAAAAAAAAAAAdTaWduZXJzAAAAAAAAAAAAAAAACVRocmVzaG9sZAAAAAAAAAUAAABXRXZlbnQgZW1pdHRlZCB3aGVuIG93bmVyc2hpcCBpcyB0cmFuc2ZlcnJlZCAoYm90aCBzaW5nbGUtc3RlcCBhbmQgdHdvLXN0ZXAgY29tcGxldGlvbikuAAAAAAAAAAAUT3duZXJzaGlwVHJhbnNmZXJyZWQAAAABAAAAFW93bmVyc2hpcF90cmFuc2ZlcnJlZAAAAAAAAAIAAAAAAAAACW9sZF9vd25lcgAAAAAAABMAAAAAAAAAAAAAAAluZXdfb3duZXIAAAAAAAATAAAAAAAAAAIAAAAFAAAAO0V2ZW50IGVtaXR0ZWQgd2hlbiBhIDItc3RlcCBvd25lcnNoaXAgdHJhbnNmZXIgaXMgcHJvcG9zZWQuAAAAAAAAAAAVT3duZXJzaGlwVHJhbnNmZXJyaW5nAAAAAAAAAQAAABZvd25lcnNoaXBfdHJhbnNmZXJyaW5nAAAAAAADAAAAAAAAAAlvbGRfb3duZXIAAAAAAAATAAAAAAAAAAAAAAAJbmV3X293bmVyAAAAAAAAEwAAAAAAAAAAAAAAA3R0bAAAAAAEAAAAAAAAAAIAAAAFAAAAPEV2ZW50IGVtaXR0ZWQgd2hlbiBhIDItc3RlcCBvd25lcnNoaXAgdHJhbnNmZXIgaXMgY2FuY2VsbGVkLgAAAAAAAAAaT3duZXJzaGlwVHJhbnNmZXJDYW5jZWxsZWQAAAAAAAEAAAAcb3duZXJzaGlwX3RyYW5zZmVyX2NhbmNlbGxlZAAAAAIAAAAAAAAABW93bmVyAAAAAAAAEwAAAAAAAAAAAAAAF2NhbmNlbGxlZF9wZW5kaW5nX293bmVyAAAAABMAAAAAAAAAAgAAAAUAAAAqRXZlbnQgZW1pdHRlZCB3aGVuIG93bmVyc2hpcCBpcyByZW5vdW5jZWQuAAAAAAAAAAAAEk93bmVyc2hpcFJlbm91bmNlZAAAAAAAAQAAABNvd25lcnNoaXBfcmVub3VuY2VkAAAAAAEAAAAAAAAACW9sZF9vd25lcgAAAAAAABMAAAAAAAAAAgAAAAIAAAAAAAAAAAAAAA5Pd25hYmxlU3RvcmFnZQAAAAAAAgAAAAAAAAAAAAAABU93bmVyAAAAAAAAAAAAAAAAAAAMUGVuZGluZ093bmVyAAAAAQAAAElUVEwgY29uZmlndXJhdGlvbjogdGhyZXNob2xkICh3aGVuIHRvIGV4dGVuZCkgYW5kIGV4dGVuZF90byAodGFyZ2V0IFRUTCkuAAAAAAAAAAAAAAlUdGxDb25maWcAAAAAAAACAAAAKFRhcmdldCBUVEwgYWZ0ZXIgZXh0ZW5zaW9uIChpbiBsZWRnZXJzKS4AAAAJZXh0ZW5kX3RvAAAAAAAABAAAADNUVEwgdGhyZXNob2xkIHRoYXQgdHJpZ2dlcnMgZXh0ZW5zaW9uIChpbiBsZWRnZXJzKS4AAAAACXRocmVzaG9sZAAAAAAAAAQAAAAFAAAAJ0V2ZW50IGVtaXR0ZWQgd2hlbiBUVEwgY29uZmlncyBhcmUgc2V0LgAAAAAAAAAADVR0bENvbmZpZ3NTZXQAAAAAAAABAAAAD3R0bF9jb25maWdzX3NldAAAAAACAAAAAAAAAAhpbnN0YW5jZQAAA+gAAAfQAAAACVR0bENvbmZpZwAAAAAAAAAAAAAAAAAACnBlcnNpc3RlbnQAAAAAA+gAAAfQAAAACVR0bENvbmZpZwAAAAAAAAAAAAACAAAABQAAACpFdmVudCBlbWl0dGVkIHdoZW4gVFRMIGNvbmZpZ3MgYXJlIGZyb3plbi4AAAAAAAAAAAAQVHRsQ29uZmlnc0Zyb3plbgAAAAEAAAAS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";
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 = "58784606010f24b0342599b3f6f0da7c5a0ed3254c26bdc4d64b51e71c213368";
16
+ export declare const WASM_HASH = "1712d4e0a74d9b3a5a42aff8ff587d4a559d43bd8137aea1a5c3184d433896dd";
17
17
  /**
18
18
  * Get the WASM bytecode as a Buffer
19
19
  * Use this to upload the WASM to the network
@@ -133,78 +133,153 @@ export type DvnStorage = {
133
133
  values: readonly [Buffer];
134
134
  };
135
135
  export declare const EndpointError: {
136
+ /**
137
+ * Library is already registered with the endpoint
138
+ */
136
139
  1: {
137
140
  message: string;
138
141
  };
142
+ /**
143
+ * Compose message already exists for this GUID and index
144
+ */
139
145
  2: {
140
146
  message: string;
141
147
  };
148
+ /**
149
+ * Compose message not found for the given GUID and index
150
+ */
142
151
  3: {
143
152
  message: string;
144
153
  };
154
+ /**
155
+ * Default receive library is not set for the source endpoint
156
+ */
145
157
  4: {
146
158
  message: string;
147
159
  };
160
+ /**
161
+ * Default send library is not set for the destination endpoint
162
+ */
148
163
  5: {
149
164
  message: string;
150
165
  };
166
+ /**
167
+ * Supplied native token fee is less than required
168
+ */
151
169
  6: {
152
170
  message: string;
153
171
  };
172
+ /**
173
+ * Supplied ZRO token fee is less than required
174
+ */
154
175
  7: {
155
176
  message: string;
156
177
  };
178
+ /**
179
+ * Timeout expiry is invalid (already expired)
180
+ */
157
181
  8: {
158
182
  message: string;
159
183
  };
184
+ /**
185
+ * Fee amount is invalid (negative)
186
+ */
160
187
  9: {
161
188
  message: string;
162
189
  };
190
+ /**
191
+ * Compose index exceeds maximum allowed value
192
+ */
163
193
  10: {
164
194
  message: string;
165
195
  };
196
+ /**
197
+ * Nonce is invalid for the requested operation
198
+ */
166
199
  11: {
167
200
  message: string;
168
201
  };
202
+ /**
203
+ * Payload hash is invalid (empty hash not allowed)
204
+ */
169
205
  12: {
170
206
  message: string;
171
207
  };
208
+ /**
209
+ * Receive library is not valid for the receiver and source endpoint
210
+ */
172
211
  13: {
173
212
  message: string;
174
213
  };
214
+ /**
215
+ * Operation requires a non-default (custom) library
216
+ */
175
217
  14: {
176
218
  message: string;
177
219
  };
220
+ /**
221
+ * Library must support receiving messages
222
+ */
178
223
  15: {
179
224
  message: string;
180
225
  };
226
+ /**
227
+ * Library must be registered with the endpoint
228
+ */
181
229
  16: {
182
230
  message: string;
183
231
  };
232
+ /**
233
+ * Library must support sending messages
234
+ */
184
235
  17: {
185
236
  message: string;
186
237
  };
238
+ /**
239
+ * Messaging path cannot be initialized for the given origin
240
+ */
187
241
  18: {
188
242
  message: string;
189
243
  };
244
+ /**
245
+ * Message cannot be verified for the given origin
246
+ */
190
247
  19: {
191
248
  message: string;
192
249
  };
250
+ /**
251
+ * Payload hash does not match the stored hash
252
+ */
193
253
  20: {
194
254
  message: string;
195
255
  };
256
+ /**
257
+ * New value is the same as existing value
258
+ */
196
259
  21: {
197
260
  message: string;
198
261
  };
262
+ /**
263
+ * Caller is not authorized (not OApp or delegate)
264
+ */
199
265
  22: {
200
266
  message: string;
201
267
  };
268
+ /**
269
+ * Endpoint ID is not supported by the library
270
+ */
202
271
  23: {
203
272
  message: string;
204
273
  };
274
+ /**
275
+ * ZRO fee must be greater than zero when pay_in_zro is true
276
+ */
205
277
  24: {
206
278
  message: string;
207
279
  };
280
+ /**
281
+ * ZRO token address is not set
282
+ */
208
283
  25: {
209
284
  message: string;
210
285
  };
@@ -319,11 +394,11 @@ export interface MessageLibVersion {
319
394
  */
320
395
  export interface Timeout {
321
396
  /**
322
- * Unix timestamp when the timeout expires.
397
+ * Unix timestamp in seconds when the timeout expires.
323
398
  */
324
399
  expiry: u64;
325
400
  /**
326
- * The new library address to transition to.
401
+ * The old library address that remains valid during the grace period.
327
402
  */
328
403
  lib: string;
329
404
  }
@@ -681,6 +756,9 @@ export declare const OwnableError: {
681
756
  1035: {
682
757
  message: string;
683
758
  };
759
+ 1036: {
760
+ message: string;
761
+ };
684
762
  };
685
763
  /**
686
764
  * BytesExtError: 1040-1049
@@ -705,9 +783,9 @@ export declare const UpgradeableError: {
705
783
  };
706
784
  };
707
785
  /**
708
- * MultisigError: 1060-1069
786
+ * MultiSigError: 1060-1069
709
787
  */
710
- export declare const MultisigError: {
788
+ export declare const MultiSigError: {
711
789
  1060: {
712
790
  message: string;
713
791
  };
@@ -732,8 +810,11 @@ export declare const MultisigError: {
732
810
  1067: {
733
811
  message: string;
734
812
  };
813
+ 1068: {
814
+ message: string;
815
+ };
735
816
  };
736
- export type MultisigStorage = {
817
+ export type MultiSigStorage = {
737
818
  tag: "Signers";
738
819
  values: void;
739
820
  } | {
@@ -877,20 +958,7 @@ export interface Client {
877
958
  */
878
959
  set_paused: ({ paused }: {
879
960
  paused: boolean;
880
- }, txnOptions?: {
881
- /**
882
- * The fee to pay for the transaction. Default: BASE_FEE
883
- */
884
- fee?: number;
885
- /**
886
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
887
- */
888
- timeoutInSeconds?: number;
889
- /**
890
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
891
- */
892
- simulate?: boolean;
893
- }) => Promise<AssembledTransaction<null>>;
961
+ }, txnOptions?: MethodOptions) => Promise<AssembledTransaction<null>>;
894
962
  /**
895
963
  * Construct and simulate a set_admin 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.
896
964
  * Sets admin status for an address.
@@ -905,20 +973,7 @@ export interface Client {
905
973
  set_admin: ({ admin, active }: {
906
974
  admin: string;
907
975
  active: boolean;
908
- }, txnOptions?: {
909
- /**
910
- * The fee to pay for the transaction. Default: BASE_FEE
911
- */
912
- fee?: number;
913
- /**
914
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
915
- */
916
- timeoutInSeconds?: number;
917
- /**
918
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
919
- */
920
- simulate?: boolean;
921
- }) => Promise<AssembledTransaction<null>>;
976
+ }, txnOptions?: MethodOptions) => Promise<AssembledTransaction<null>>;
922
977
  /**
923
978
  * Construct and simulate a set_supported_message_lib 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.
924
979
  * Sets whether a message library is supported by this worker.
@@ -933,20 +988,7 @@ export interface Client {
933
988
  set_supported_message_lib: ({ message_lib, supported }: {
934
989
  message_lib: string;
935
990
  supported: boolean;
936
- }, txnOptions?: {
937
- /**
938
- * The fee to pay for the transaction. Default: BASE_FEE
939
- */
940
- fee?: number;
941
- /**
942
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
943
- */
944
- timeoutInSeconds?: number;
945
- /**
946
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
947
- */
948
- simulate?: boolean;
949
- }) => Promise<AssembledTransaction<null>>;
991
+ }, txnOptions?: MethodOptions) => Promise<AssembledTransaction<null>>;
950
992
  /**
951
993
  * Construct and simulate a set_allowlist 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.
952
994
  * Sets allowlist status for an OApp address.
@@ -962,20 +1004,7 @@ export interface Client {
962
1004
  set_allowlist: ({ oapp, allowed }: {
963
1005
  oapp: string;
964
1006
  allowed: boolean;
965
- }, txnOptions?: {
966
- /**
967
- * The fee to pay for the transaction. Default: BASE_FEE
968
- */
969
- fee?: number;
970
- /**
971
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
972
- */
973
- timeoutInSeconds?: number;
974
- /**
975
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
976
- */
977
- simulate?: boolean;
978
- }) => Promise<AssembledTransaction<null>>;
1007
+ }, txnOptions?: MethodOptions) => Promise<AssembledTransaction<null>>;
979
1008
  /**
980
1009
  * Construct and simulate a set_denylist 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.
981
1010
  * Sets denylist status for an OApp address.
@@ -990,20 +1019,7 @@ export interface Client {
990
1019
  set_denylist: ({ oapp, denied }: {
991
1020
  oapp: string;
992
1021
  denied: boolean;
993
- }, txnOptions?: {
994
- /**
995
- * The fee to pay for the transaction. Default: BASE_FEE
996
- */
997
- fee?: number;
998
- /**
999
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1000
- */
1001
- timeoutInSeconds?: number;
1002
- /**
1003
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1004
- */
1005
- simulate?: boolean;
1006
- }) => Promise<AssembledTransaction<null>>;
1022
+ }, txnOptions?: MethodOptions) => Promise<AssembledTransaction<null>>;
1007
1023
  /**
1008
1024
  * Construct and simulate a set_default_multiplier_bps 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.
1009
1025
  * Sets the default fee multiplier in basis points.
@@ -1018,20 +1034,7 @@ export interface Client {
1018
1034
  set_default_multiplier_bps: ({ admin, multiplier_bps }: {
1019
1035
  admin: string;
1020
1036
  multiplier_bps: u32;
1021
- }, txnOptions?: {
1022
- /**
1023
- * The fee to pay for the transaction. Default: BASE_FEE
1024
- */
1025
- fee?: number;
1026
- /**
1027
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1028
- */
1029
- timeoutInSeconds?: number;
1030
- /**
1031
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1032
- */
1033
- simulate?: boolean;
1034
- }) => Promise<AssembledTransaction<null>>;
1037
+ }, txnOptions?: MethodOptions) => Promise<AssembledTransaction<null>>;
1035
1038
  /**
1036
1039
  * Construct and simulate a set_deposit_address 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.
1037
1040
  * Sets the deposit address where worker fees are collected.
@@ -1045,20 +1048,7 @@ export interface Client {
1045
1048
  set_deposit_address: ({ admin, deposit_address }: {
1046
1049
  admin: string;
1047
1050
  deposit_address: string;
1048
- }, txnOptions?: {
1049
- /**
1050
- * The fee to pay for the transaction. Default: BASE_FEE
1051
- */
1052
- fee?: number;
1053
- /**
1054
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1055
- */
1056
- timeoutInSeconds?: number;
1057
- /**
1058
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1059
- */
1060
- simulate?: boolean;
1061
- }) => Promise<AssembledTransaction<null>>;
1051
+ }, txnOptions?: MethodOptions) => Promise<AssembledTransaction<null>>;
1062
1052
  /**
1063
1053
  * Construct and simulate a set_supported_option_types 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.
1064
1054
  * Sets supported executor option types for a destination endpoint.
@@ -1072,20 +1062,7 @@ export interface Client {
1072
1062
  admin: string;
1073
1063
  eid: u32;
1074
1064
  option_types: Buffer;
1075
- }, txnOptions?: {
1076
- /**
1077
- * The fee to pay for the transaction. Default: BASE_FEE
1078
- */
1079
- fee?: number;
1080
- /**
1081
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1082
- */
1083
- timeoutInSeconds?: number;
1084
- /**
1085
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1086
- */
1087
- simulate?: boolean;
1088
- }) => Promise<AssembledTransaction<null>>;
1065
+ }, txnOptions?: MethodOptions) => Promise<AssembledTransaction<null>>;
1089
1066
  /**
1090
1067
  * Construct and simulate a set_worker_fee_lib 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.
1091
1068
  * Sets the worker fee library contract address.
@@ -1099,20 +1076,7 @@ export interface Client {
1099
1076
  set_worker_fee_lib: ({ admin, worker_fee_lib }: {
1100
1077
  admin: string;
1101
1078
  worker_fee_lib: string;
1102
- }, txnOptions?: {
1103
- /**
1104
- * The fee to pay for the transaction. Default: BASE_FEE
1105
- */
1106
- fee?: number;
1107
- /**
1108
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1109
- */
1110
- timeoutInSeconds?: number;
1111
- /**
1112
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1113
- */
1114
- simulate?: boolean;
1115
- }) => Promise<AssembledTransaction<null>>;
1079
+ }, txnOptions?: MethodOptions) => Promise<AssembledTransaction<null>>;
1116
1080
  /**
1117
1081
  * Construct and simulate a set_price_feed 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.
1118
1082
  * Sets the price feed contract address.
@@ -1127,38 +1091,12 @@ export interface Client {
1127
1091
  set_price_feed: ({ admin, price_feed }: {
1128
1092
  admin: string;
1129
1093
  price_feed: string;
1130
- }, txnOptions?: {
1131
- /**
1132
- * The fee to pay for the transaction. Default: BASE_FEE
1133
- */
1134
- fee?: number;
1135
- /**
1136
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1137
- */
1138
- timeoutInSeconds?: number;
1139
- /**
1140
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1141
- */
1142
- simulate?: boolean;
1143
- }) => Promise<AssembledTransaction<null>>;
1094
+ }, txnOptions?: MethodOptions) => Promise<AssembledTransaction<null>>;
1144
1095
  /**
1145
1096
  * Construct and simulate a paused 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.
1146
1097
  * Returns whether the worker is paused.
1147
1098
  */
1148
- paused: (txnOptions?: {
1149
- /**
1150
- * The fee to pay for the transaction. Default: BASE_FEE
1151
- */
1152
- fee?: number;
1153
- /**
1154
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1155
- */
1156
- timeoutInSeconds?: number;
1157
- /**
1158
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1159
- */
1160
- simulate?: boolean;
1161
- }) => Promise<AssembledTransaction<boolean>>;
1099
+ paused: (options?: MethodOptions) => Promise<AssembledTransaction<boolean>>;
1162
1100
  /**
1163
1101
  * Construct and simulate a is_admin 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.
1164
1102
  * Returns whether an address is an admin.
@@ -1168,38 +1106,12 @@ export interface Client {
1168
1106
  */
1169
1107
  is_admin: ({ admin }: {
1170
1108
  admin: string;
1171
- }, txnOptions?: {
1172
- /**
1173
- * The fee to pay for the transaction. Default: BASE_FEE
1174
- */
1175
- fee?: number;
1176
- /**
1177
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1178
- */
1179
- timeoutInSeconds?: number;
1180
- /**
1181
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1182
- */
1183
- simulate?: boolean;
1184
- }) => Promise<AssembledTransaction<boolean>>;
1109
+ }, txnOptions?: MethodOptions) => Promise<AssembledTransaction<boolean>>;
1185
1110
  /**
1186
1111
  * Construct and simulate a admins 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.
1187
1112
  * Returns all admin addresses.
1188
1113
  */
1189
- admins: (txnOptions?: {
1190
- /**
1191
- * The fee to pay for the transaction. Default: BASE_FEE
1192
- */
1193
- fee?: number;
1194
- /**
1195
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1196
- */
1197
- timeoutInSeconds?: number;
1198
- /**
1199
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1200
- */
1201
- simulate?: boolean;
1202
- }) => Promise<AssembledTransaction<Array<string>>>;
1114
+ admins: (options?: MethodOptions) => Promise<AssembledTransaction<Array<string>>>;
1203
1115
  /**
1204
1116
  * Construct and simulate a is_supported_message_lib 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.
1205
1117
  * Returns whether a message library is supported.
@@ -1209,20 +1121,7 @@ export interface Client {
1209
1121
  */
1210
1122
  is_supported_message_lib: ({ message_lib }: {
1211
1123
  message_lib: string;
1212
- }, txnOptions?: {
1213
- /**
1214
- * The fee to pay for the transaction. Default: BASE_FEE
1215
- */
1216
- fee?: number;
1217
- /**
1218
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1219
- */
1220
- timeoutInSeconds?: number;
1221
- /**
1222
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1223
- */
1224
- simulate?: boolean;
1225
- }) => Promise<AssembledTransaction<boolean>>;
1124
+ }, txnOptions?: MethodOptions) => Promise<AssembledTransaction<boolean>>;
1226
1125
  /**
1227
1126
  * Construct and simulate a message_libs 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.
1228
1127
  * Returns all supported message library addresses.
@@ -1230,20 +1129,7 @@ export interface Client {
1230
1129
  * # Returns
1231
1130
  * Vector of supported message library contract addresses.
1232
1131
  */
1233
- message_libs: (txnOptions?: {
1234
- /**
1235
- * The fee to pay for the transaction. Default: BASE_FEE
1236
- */
1237
- fee?: number;
1238
- /**
1239
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1240
- */
1241
- timeoutInSeconds?: number;
1242
- /**
1243
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1244
- */
1245
- simulate?: boolean;
1246
- }) => Promise<AssembledTransaction<Array<string>>>;
1132
+ message_libs: (options?: MethodOptions) => Promise<AssembledTransaction<Array<string>>>;
1247
1133
  /**
1248
1134
  * Construct and simulate a is_on_allowlist 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.
1249
1135
  * Returns whether an OApp is on the allowlist.
@@ -1253,38 +1139,12 @@ export interface Client {
1253
1139
  */
1254
1140
  is_on_allowlist: ({ oapp }: {
1255
1141
  oapp: string;
1256
- }, txnOptions?: {
1257
- /**
1258
- * The fee to pay for the transaction. Default: BASE_FEE
1259
- */
1260
- fee?: number;
1261
- /**
1262
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1263
- */
1264
- timeoutInSeconds?: number;
1265
- /**
1266
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1267
- */
1268
- simulate?: boolean;
1269
- }) => Promise<AssembledTransaction<boolean>>;
1142
+ }, txnOptions?: MethodOptions) => Promise<AssembledTransaction<boolean>>;
1270
1143
  /**
1271
1144
  * Construct and simulate a allowlist_size 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.
1272
1145
  * Returns the number of addresses on the allowlist.
1273
1146
  */
1274
- allowlist_size: (txnOptions?: {
1275
- /**
1276
- * The fee to pay for the transaction. Default: BASE_FEE
1277
- */
1278
- fee?: number;
1279
- /**
1280
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1281
- */
1282
- timeoutInSeconds?: number;
1283
- /**
1284
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1285
- */
1286
- simulate?: boolean;
1287
- }) => Promise<AssembledTransaction<u32>>;
1147
+ allowlist_size: (options?: MethodOptions) => Promise<AssembledTransaction<u32>>;
1288
1148
  /**
1289
1149
  * Construct and simulate a is_on_denylist 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.
1290
1150
  * Returns whether an OApp is on the denylist.
@@ -1294,20 +1154,7 @@ export interface Client {
1294
1154
  */
1295
1155
  is_on_denylist: ({ oapp }: {
1296
1156
  oapp: string;
1297
- }, txnOptions?: {
1298
- /**
1299
- * The fee to pay for the transaction. Default: BASE_FEE
1300
- */
1301
- fee?: number;
1302
- /**
1303
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1304
- */
1305
- timeoutInSeconds?: number;
1306
- /**
1307
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1308
- */
1309
- simulate?: boolean;
1310
- }) => Promise<AssembledTransaction<boolean>>;
1157
+ }, txnOptions?: MethodOptions) => Promise<AssembledTransaction<boolean>>;
1311
1158
  /**
1312
1159
  * Construct and simulate a has_acl 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.
1313
1160
  * Returns whether an OApp has access control list (ACL) permission.
@@ -1322,56 +1169,17 @@ export interface Client {
1322
1169
  */
1323
1170
  has_acl: ({ oapp }: {
1324
1171
  oapp: string;
1325
- }, txnOptions?: {
1326
- /**
1327
- * The fee to pay for the transaction. Default: BASE_FEE
1328
- */
1329
- fee?: number;
1330
- /**
1331
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1332
- */
1333
- timeoutInSeconds?: number;
1334
- /**
1335
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1336
- */
1337
- simulate?: boolean;
1338
- }) => Promise<AssembledTransaction<boolean>>;
1172
+ }, txnOptions?: MethodOptions) => Promise<AssembledTransaction<boolean>>;
1339
1173
  /**
1340
1174
  * Construct and simulate a default_multiplier_bps 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.
1341
1175
  * Returns the default fee multiplier in basis points.
1342
1176
  */
1343
- default_multiplier_bps: (txnOptions?: {
1344
- /**
1345
- * The fee to pay for the transaction. Default: BASE_FEE
1346
- */
1347
- fee?: number;
1348
- /**
1349
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1350
- */
1351
- timeoutInSeconds?: number;
1352
- /**
1353
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1354
- */
1355
- simulate?: boolean;
1356
- }) => Promise<AssembledTransaction<u32>>;
1177
+ default_multiplier_bps: (options?: MethodOptions) => Promise<AssembledTransaction<u32>>;
1357
1178
  /**
1358
1179
  * Construct and simulate a deposit_address 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.
1359
1180
  * Returns the deposit address where fees are collected.
1360
1181
  */
1361
- deposit_address: (txnOptions?: {
1362
- /**
1363
- * The fee to pay for the transaction. Default: BASE_FEE
1364
- */
1365
- fee?: number;
1366
- /**
1367
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1368
- */
1369
- timeoutInSeconds?: number;
1370
- /**
1371
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1372
- */
1373
- simulate?: boolean;
1374
- }) => Promise<AssembledTransaction<Option<string>>>;
1182
+ deposit_address: (options?: MethodOptions) => Promise<AssembledTransaction<Option<string>>>;
1375
1183
  /**
1376
1184
  * Construct and simulate a get_supported_option_types 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.
1377
1185
  * Returns supported option types for a destination endpoint.
@@ -1381,56 +1189,17 @@ export interface Client {
1381
1189
  */
1382
1190
  get_supported_option_types: ({ eid }: {
1383
1191
  eid: u32;
1384
- }, txnOptions?: {
1385
- /**
1386
- * The fee to pay for the transaction. Default: BASE_FEE
1387
- */
1388
- fee?: number;
1389
- /**
1390
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1391
- */
1392
- timeoutInSeconds?: number;
1393
- /**
1394
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1395
- */
1396
- simulate?: boolean;
1397
- }) => Promise<AssembledTransaction<Option<Buffer>>>;
1192
+ }, txnOptions?: MethodOptions) => Promise<AssembledTransaction<Option<Buffer>>>;
1398
1193
  /**
1399
1194
  * Construct and simulate a worker_fee_lib 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.
1400
1195
  * Returns the worker fee library contract address.
1401
1196
  */
1402
- worker_fee_lib: (txnOptions?: {
1403
- /**
1404
- * The fee to pay for the transaction. Default: BASE_FEE
1405
- */
1406
- fee?: number;
1407
- /**
1408
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1409
- */
1410
- timeoutInSeconds?: number;
1411
- /**
1412
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1413
- */
1414
- simulate?: boolean;
1415
- }) => Promise<AssembledTransaction<Option<string>>>;
1197
+ worker_fee_lib: (options?: MethodOptions) => Promise<AssembledTransaction<Option<string>>>;
1416
1198
  /**
1417
1199
  * Construct and simulate a price_feed 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.
1418
1200
  * Returns the price feed contract address.
1419
1201
  */
1420
- price_feed: (txnOptions?: {
1421
- /**
1422
- * The fee to pay for the transaction. Default: BASE_FEE
1423
- */
1424
- fee?: number;
1425
- /**
1426
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1427
- */
1428
- timeoutInSeconds?: number;
1429
- /**
1430
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1431
- */
1432
- simulate?: boolean;
1433
- }) => Promise<AssembledTransaction<Option<string>>>;
1202
+ price_feed: (options?: MethodOptions) => Promise<AssembledTransaction<Option<string>>>;
1434
1203
  /**
1435
1204
  * Construct and simulate a get_fee 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.
1436
1205
  * Calculates the verification fee for a cross-chain message.
@@ -1445,20 +1214,7 @@ export interface Client {
1445
1214
  payload_hash: Buffer;
1446
1215
  confirmations: u64;
1447
1216
  options: Buffer;
1448
- }, txnOptions?: {
1449
- /**
1450
- * The fee to pay for the transaction. Default: BASE_FEE
1451
- */
1452
- fee?: number;
1453
- /**
1454
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1455
- */
1456
- timeoutInSeconds?: number;
1457
- /**
1458
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1459
- */
1460
- simulate?: boolean;
1461
- }) => Promise<AssembledTransaction<i128>>;
1217
+ }, txnOptions?: MethodOptions) => Promise<AssembledTransaction<i128>>;
1462
1218
  /**
1463
1219
  * Construct and simulate a assign_job 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.
1464
1220
  * Assigns a verification job to this DVN and returns fee payment info.
@@ -1474,20 +1230,7 @@ export interface Client {
1474
1230
  payload_hash: Buffer;
1475
1231
  confirmations: u64;
1476
1232
  options: Buffer;
1477
- }, txnOptions?: {
1478
- /**
1479
- * The fee to pay for the transaction. Default: BASE_FEE
1480
- */
1481
- fee?: number;
1482
- /**
1483
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1484
- */
1485
- timeoutInSeconds?: number;
1486
- /**
1487
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1488
- */
1489
- simulate?: boolean;
1490
- }) => Promise<AssembledTransaction<FeeRecipient>>;
1233
+ }, txnOptions?: MethodOptions) => Promise<AssembledTransaction<FeeRecipient>>;
1491
1234
  /**
1492
1235
  * Construct and simulate a set_dst_config 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.
1493
1236
  * Sets destination chain configurations. Requires admin authorization.
@@ -1495,58 +1238,19 @@ export interface Client {
1495
1238
  set_dst_config: ({ admin, params }: {
1496
1239
  admin: string;
1497
1240
  params: Array<DstConfigParam>;
1498
- }, txnOptions?: {
1499
- /**
1500
- * The fee to pay for the transaction. Default: BASE_FEE
1501
- */
1502
- fee?: number;
1503
- /**
1504
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1505
- */
1506
- timeoutInSeconds?: number;
1507
- /**
1508
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1509
- */
1510
- simulate?: boolean;
1511
- }) => Promise<AssembledTransaction<null>>;
1241
+ }, txnOptions?: MethodOptions) => Promise<AssembledTransaction<null>>;
1512
1242
  /**
1513
1243
  * Construct and simulate a dst_config 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.
1514
1244
  * Returns the destination configuration for a specific endpoint ID.
1515
1245
  */
1516
1246
  dst_config: ({ dst_eid }: {
1517
1247
  dst_eid: u32;
1518
- }, txnOptions?: {
1519
- /**
1520
- * The fee to pay for the transaction. Default: BASE_FEE
1521
- */
1522
- fee?: number;
1523
- /**
1524
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1525
- */
1526
- timeoutInSeconds?: number;
1527
- /**
1528
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1529
- */
1530
- simulate?: boolean;
1531
- }) => Promise<AssembledTransaction<Option<DstConfig>>>;
1248
+ }, txnOptions?: MethodOptions) => Promise<AssembledTransaction<Option<DstConfig>>>;
1532
1249
  /**
1533
1250
  * Construct and simulate a vid 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.
1534
1251
  * Returns the Verifier ID for this DVN.
1535
1252
  */
1536
- vid: (txnOptions?: {
1537
- /**
1538
- * The fee to pay for the transaction. Default: BASE_FEE
1539
- */
1540
- fee?: number;
1541
- /**
1542
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1543
- */
1544
- timeoutInSeconds?: number;
1545
- /**
1546
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1547
- */
1548
- simulate?: boolean;
1549
- }) => Promise<AssembledTransaction<u32>>;
1253
+ vid: (options?: MethodOptions) => Promise<AssembledTransaction<u32>>;
1550
1254
  /**
1551
1255
  * Construct and simulate a hash_call_data 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.
1552
1256
  * Computes the hash of call data for multisig signing.
@@ -1557,20 +1261,7 @@ export interface Client {
1557
1261
  vid: u32;
1558
1262
  expiration: u64;
1559
1263
  calls: Array<Call>;
1560
- }, txnOptions?: {
1561
- /**
1562
- * The fee to pay for the transaction. Default: BASE_FEE
1563
- */
1564
- fee?: number;
1565
- /**
1566
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1567
- */
1568
- timeoutInSeconds?: number;
1569
- /**
1570
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1571
- */
1572
- simulate?: boolean;
1573
- }) => Promise<AssembledTransaction<Buffer>>;
1264
+ }, txnOptions?: MethodOptions) => Promise<AssembledTransaction<Buffer>>;
1574
1265
  /**
1575
1266
  * Construct and simulate a set_admin_by_admin 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.
1576
1267
  * Sets admin status for an address. Can be called by an existing admin.
@@ -1587,117 +1278,37 @@ export interface Client {
1587
1278
  caller: string;
1588
1279
  admin: string;
1589
1280
  active: boolean;
1590
- }, txnOptions?: {
1591
- /**
1592
- * The fee to pay for the transaction. Default: BASE_FEE
1593
- */
1594
- fee?: number;
1595
- /**
1596
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1597
- */
1598
- timeoutInSeconds?: number;
1599
- /**
1600
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1601
- */
1602
- simulate?: boolean;
1603
- }) => Promise<AssembledTransaction<null>>;
1281
+ }, txnOptions?: MethodOptions) => Promise<AssembledTransaction<null>>;
1604
1282
  /**
1605
1283
  * 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.
1606
- * The type of data required for migration.
1607
1284
  * Upgrades the contract to new WASM bytecode.
1608
1285
  * Sets a migration flag that must be cleared by calling `migrate`.
1609
1286
  */
1610
1287
  upgrade: ({ new_wasm_hash }: {
1611
1288
  new_wasm_hash: Buffer;
1612
- }, txnOptions?: {
1613
- /**
1614
- * The fee to pay for the transaction. Default: BASE_FEE
1615
- */
1616
- fee?: number;
1617
- /**
1618
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1619
- */
1620
- timeoutInSeconds?: number;
1621
- /**
1622
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1623
- */
1624
- simulate?: boolean;
1625
- }) => Promise<AssembledTransaction<null>>;
1289
+ }, txnOptions?: MethodOptions) => Promise<AssembledTransaction<null>>;
1626
1290
  /**
1627
1291
  * 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.
1628
1292
  * Runs migration logic after an upgrade.
1629
- * Can only be called when the migration flag is set by a previous `upgrade` call.
1293
+ * Parses XDR-encoded `migration_data` and calls `__migrate`. Clears the migration flag on success.
1630
1294
  */
1631
1295
  migrate: ({ migration_data }: {
1632
1296
  migration_data: Buffer;
1633
- }, txnOptions?: {
1634
- /**
1635
- * The fee to pay for the transaction. Default: BASE_FEE
1636
- */
1637
- fee?: number;
1638
- /**
1639
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1640
- */
1641
- timeoutInSeconds?: number;
1642
- /**
1643
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1644
- */
1645
- simulate?: boolean;
1646
- }) => Promise<AssembledTransaction<null>>;
1297
+ }, txnOptions?: MethodOptions) => Promise<AssembledTransaction<null>>;
1647
1298
  /**
1648
1299
  * 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.
1649
- * Permanently freezes the contract, preventing any future upgrades.
1650
- * This action is irreversible.
1651
- */
1652
- freeze: (txnOptions?: {
1653
- /**
1654
- * The fee to pay for the transaction. Default: BASE_FEE
1655
- */
1656
- fee?: number;
1657
- /**
1658
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1659
- */
1660
- timeoutInSeconds?: number;
1661
- /**
1662
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1663
- */
1664
- simulate?: boolean;
1665
- }) => Promise<AssembledTransaction<null>>;
1300
+ * Permanently freezes the contract, preventing any future upgrades. Irreversible.
1301
+ */
1302
+ freeze: (options?: MethodOptions) => Promise<AssembledTransaction<null>>;
1666
1303
  /**
1667
1304
  * 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.
1668
1305
  * Returns whether the contract is frozen (upgrades disabled).
1669
1306
  */
1670
- is_frozen: (txnOptions?: {
1671
- /**
1672
- * The fee to pay for the transaction. Default: BASE_FEE
1673
- */
1674
- fee?: number;
1675
- /**
1676
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1677
- */
1678
- timeoutInSeconds?: number;
1679
- /**
1680
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1681
- */
1682
- simulate?: boolean;
1683
- }) => Promise<AssembledTransaction<boolean>>;
1307
+ is_frozen: (options?: MethodOptions) => Promise<AssembledTransaction<boolean>>;
1684
1308
  /**
1685
1309
  * 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.
1686
1310
  */
1687
- authorizer: (txnOptions?: {
1688
- /**
1689
- * The fee to pay for the transaction. Default: BASE_FEE
1690
- */
1691
- fee?: number;
1692
- /**
1693
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1694
- */
1695
- timeoutInSeconds?: number;
1696
- /**
1697
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1698
- */
1699
- simulate?: boolean;
1700
- }) => Promise<AssembledTransaction<string>>;
1311
+ authorizer: (options?: MethodOptions) => Promise<AssembledTransaction<string>>;
1701
1312
  /**
1702
1313
  * Construct and simulate a set_signer 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.
1703
1314
  * Adds or removes a signer from the multisig. Requires owner authorization.
@@ -1705,114 +1316,36 @@ export interface Client {
1705
1316
  set_signer: ({ signer, active }: {
1706
1317
  signer: Buffer;
1707
1318
  active: boolean;
1708
- }, txnOptions?: {
1709
- /**
1710
- * The fee to pay for the transaction. Default: BASE_FEE
1711
- */
1712
- fee?: number;
1713
- /**
1714
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1715
- */
1716
- timeoutInSeconds?: number;
1717
- /**
1718
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1719
- */
1720
- simulate?: boolean;
1721
- }) => Promise<AssembledTransaction<null>>;
1319
+ }, txnOptions?: MethodOptions) => Promise<AssembledTransaction<null>>;
1722
1320
  /**
1723
1321
  * Construct and simulate a set_threshold 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.
1724
1322
  * Sets the signature threshold (quorum). Requires owner authorization.
1725
1323
  */
1726
1324
  set_threshold: ({ threshold }: {
1727
1325
  threshold: u32;
1728
- }, txnOptions?: {
1729
- /**
1730
- * The fee to pay for the transaction. Default: BASE_FEE
1731
- */
1732
- fee?: number;
1733
- /**
1734
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1735
- */
1736
- timeoutInSeconds?: number;
1737
- /**
1738
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1739
- */
1740
- simulate?: boolean;
1741
- }) => Promise<AssembledTransaction<null>>;
1326
+ }, txnOptions?: MethodOptions) => Promise<AssembledTransaction<null>>;
1742
1327
  /**
1743
1328
  * Construct and simulate a get_signers 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.
1744
1329
  * Returns all registered signers.
1745
1330
  */
1746
- get_signers: (txnOptions?: {
1747
- /**
1748
- * The fee to pay for the transaction. Default: BASE_FEE
1749
- */
1750
- fee?: number;
1751
- /**
1752
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1753
- */
1754
- timeoutInSeconds?: number;
1755
- /**
1756
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1757
- */
1758
- simulate?: boolean;
1759
- }) => Promise<AssembledTransaction<Array<Buffer>>>;
1331
+ get_signers: (options?: MethodOptions) => Promise<AssembledTransaction<Array<Buffer>>>;
1760
1332
  /**
1761
1333
  * Construct and simulate a total_signers 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.
1762
1334
  * Returns the total number of registered signers.
1763
1335
  */
1764
- total_signers: (txnOptions?: {
1765
- /**
1766
- * The fee to pay for the transaction. Default: BASE_FEE
1767
- */
1768
- fee?: number;
1769
- /**
1770
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1771
- */
1772
- timeoutInSeconds?: number;
1773
- /**
1774
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1775
- */
1776
- simulate?: boolean;
1777
- }) => Promise<AssembledTransaction<u32>>;
1336
+ total_signers: (options?: MethodOptions) => Promise<AssembledTransaction<u32>>;
1778
1337
  /**
1779
1338
  * Construct and simulate a is_signer 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.
1780
1339
  * Checks if an address is a registered signer.
1781
1340
  */
1782
1341
  is_signer: ({ signer }: {
1783
1342
  signer: Buffer;
1784
- }, txnOptions?: {
1785
- /**
1786
- * The fee to pay for the transaction. Default: BASE_FEE
1787
- */
1788
- fee?: number;
1789
- /**
1790
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1791
- */
1792
- timeoutInSeconds?: number;
1793
- /**
1794
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1795
- */
1796
- simulate?: boolean;
1797
- }) => Promise<AssembledTransaction<boolean>>;
1343
+ }, txnOptions?: MethodOptions) => Promise<AssembledTransaction<boolean>>;
1798
1344
  /**
1799
1345
  * Construct and simulate a threshold 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.
1800
1346
  * Returns the current signature threshold (quorum).
1801
1347
  */
1802
- threshold: (txnOptions?: {
1803
- /**
1804
- * The fee to pay for the transaction. Default: BASE_FEE
1805
- */
1806
- fee?: number;
1807
- /**
1808
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1809
- */
1810
- timeoutInSeconds?: number;
1811
- /**
1812
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1813
- */
1814
- simulate?: boolean;
1815
- }) => Promise<AssembledTransaction<u32>>;
1348
+ threshold: (options?: MethodOptions) => Promise<AssembledTransaction<u32>>;
1816
1349
  /**
1817
1350
  * Construct and simulate a verify_signatures 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.
1818
1351
  * Verifies signatures against the configured threshold.
@@ -1820,20 +1353,7 @@ export interface Client {
1820
1353
  verify_signatures: ({ digest, signatures }: {
1821
1354
  digest: Buffer;
1822
1355
  signatures: Array<Buffer>;
1823
- }, txnOptions?: {
1824
- /**
1825
- * The fee to pay for the transaction. Default: BASE_FEE
1826
- */
1827
- fee?: number;
1828
- /**
1829
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1830
- */
1831
- timeoutInSeconds?: number;
1832
- /**
1833
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1834
- */
1835
- simulate?: boolean;
1836
- }) => Promise<AssembledTransaction<null>>;
1356
+ }, txnOptions?: MethodOptions) => Promise<AssembledTransaction<null>>;
1837
1357
  /**
1838
1358
  * Construct and simulate a verify_n_signatures 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.
1839
1359
  * Verifies signatures against a custom threshold.
@@ -1842,20 +1362,7 @@ export interface Client {
1842
1362
  digest: Buffer;
1843
1363
  signatures: Array<Buffer>;
1844
1364
  threshold: u32;
1845
- }, txnOptions?: {
1846
- /**
1847
- * The fee to pay for the transaction. Default: BASE_FEE
1848
- */
1849
- fee?: number;
1850
- /**
1851
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1852
- */
1853
- timeoutInSeconds?: number;
1854
- /**
1855
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1856
- */
1857
- simulate?: boolean;
1858
- }) => Promise<AssembledTransaction<null>>;
1365
+ }, txnOptions?: MethodOptions) => Promise<AssembledTransaction<null>>;
1859
1366
  /**
1860
1367
  * 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.
1861
1368
  * Extends the instance TTL.
@@ -1868,20 +1375,7 @@ export interface Client {
1868
1375
  extend_instance_ttl: ({ threshold, extend_to }: {
1869
1376
  threshold: u32;
1870
1377
  extend_to: u32;
1871
- }, txnOptions?: {
1872
- /**
1873
- * The fee to pay for the transaction. Default: BASE_FEE
1874
- */
1875
- fee?: number;
1876
- /**
1877
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1878
- */
1879
- timeoutInSeconds?: number;
1880
- /**
1881
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1882
- */
1883
- simulate?: boolean;
1884
- }) => Promise<AssembledTransaction<null>>;
1378
+ }, txnOptions?: MethodOptions) => Promise<AssembledTransaction<null>>;
1885
1379
  /**
1886
1380
  * 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.
1887
1381
  * Sets TTL configs for instance and persistent storage.
@@ -1900,38 +1394,12 @@ export interface Client {
1900
1394
  set_ttl_configs: ({ instance, persistent }: {
1901
1395
  instance: Option<TtlConfig>;
1902
1396
  persistent: Option<TtlConfig>;
1903
- }, txnOptions?: {
1904
- /**
1905
- * The fee to pay for the transaction. Default: BASE_FEE
1906
- */
1907
- fee?: number;
1908
- /**
1909
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1910
- */
1911
- timeoutInSeconds?: number;
1912
- /**
1913
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1914
- */
1915
- simulate?: boolean;
1916
- }) => Promise<AssembledTransaction<null>>;
1397
+ }, txnOptions?: MethodOptions) => Promise<AssembledTransaction<null>>;
1917
1398
  /**
1918
1399
  * 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.
1919
1400
  * Returns the current TTL configs as (instance_config, persistent_config).
1920
1401
  */
1921
- ttl_configs: (txnOptions?: {
1922
- /**
1923
- * The fee to pay for the transaction. Default: BASE_FEE
1924
- */
1925
- fee?: number;
1926
- /**
1927
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1928
- */
1929
- timeoutInSeconds?: number;
1930
- /**
1931
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1932
- */
1933
- simulate?: boolean;
1934
- }) => Promise<AssembledTransaction<readonly [Option<TtlConfig>, Option<TtlConfig>]>>;
1402
+ ttl_configs: (options?: MethodOptions) => Promise<AssembledTransaction<readonly [Option<TtlConfig>, Option<TtlConfig>]>>;
1935
1403
  /**
1936
1404
  * 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.
1937
1405
  * Permanently freezes TTL configs, preventing any future modifications.
@@ -1942,38 +1410,12 @@ export interface Client {
1942
1410
  * # Panics
1943
1411
  * - `TtlConfigAlreadyFrozen` if already frozen
1944
1412
  */
1945
- freeze_ttl_configs: (txnOptions?: {
1946
- /**
1947
- * The fee to pay for the transaction. Default: BASE_FEE
1948
- */
1949
- fee?: number;
1950
- /**
1951
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1952
- */
1953
- timeoutInSeconds?: number;
1954
- /**
1955
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1956
- */
1957
- simulate?: boolean;
1958
- }) => Promise<AssembledTransaction<null>>;
1413
+ freeze_ttl_configs: (options?: MethodOptions) => Promise<AssembledTransaction<null>>;
1959
1414
  /**
1960
1415
  * 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.
1961
1416
  * Returns whether TTL configs are frozen.
1962
1417
  */
1963
- is_ttl_configs_frozen: (txnOptions?: {
1964
- /**
1965
- * The fee to pay for the transaction. Default: BASE_FEE
1966
- */
1967
- fee?: number;
1968
- /**
1969
- * The maximum amount of time to wait for the transaction to complete. Default: DEFAULT_TIMEOUT
1970
- */
1971
- timeoutInSeconds?: number;
1972
- /**
1973
- * Whether to automatically simulate the transaction when constructing the AssembledTransaction. Default: true
1974
- */
1975
- simulate?: boolean;
1976
- }) => Promise<AssembledTransaction<boolean>>;
1418
+ is_ttl_configs_frozen: (options?: MethodOptions) => Promise<AssembledTransaction<boolean>>;
1977
1419
  }
1978
1420
  export declare class Client extends ContractClient {
1979
1421
  readonly options: ContractClientOptions;