@aztec/bb.js 1.2.1 → 2.0.0-nightly.20250814

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 (135) hide show
  1. package/dest/browser/barretenberg/backend.d.ts +1 -0
  2. package/dest/browser/barretenberg/backend.d.ts.map +1 -1
  3. package/dest/browser/barretenberg/backend.js +116 -108
  4. package/dest/browser/barretenberg/index.d.ts +13 -0
  5. package/dest/browser/barretenberg/index.d.ts.map +1 -1
  6. package/dest/browser/barretenberg/index.js +40 -2
  7. package/dest/browser/barretenberg/verifier.js +2 -2
  8. package/dest/browser/barretenberg_api/index.d.ts +2 -2
  9. package/dest/browser/barretenberg_api/index.d.ts.map +1 -1
  10. package/dest/browser/barretenberg_api/index.js +5 -5
  11. package/dest/browser/barretenberg_wasm/barretenberg_wasm_base/index.d.ts +1 -0
  12. package/dest/browser/barretenberg_wasm/barretenberg_wasm_base/index.d.ts.map +1 -1
  13. package/dest/browser/barretenberg_wasm/barretenberg_wasm_base/index.js +5 -4
  14. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/index.d.ts +2 -0
  15. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/index.d.ts.map +1 -1
  16. package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/index.js +17 -1
  17. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts +1 -0
  18. package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts.map +1 -1
  19. package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg-threads.js +1 -1
  20. package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg.js +1 -1
  21. package/dest/browser/cbind/generate.d.ts +5 -0
  22. package/dest/browser/cbind/generate.d.ts.map +1 -0
  23. package/dest/browser/cbind/generate.js +64 -0
  24. package/dest/browser/cbind/generated/api_types.d.ts +634 -0
  25. package/dest/browser/cbind/generated/api_types.d.ts.map +1 -0
  26. package/dest/browser/cbind/generated/api_types.js +851 -0
  27. package/dest/browser/cbind/generated/async.d.ts +23 -0
  28. package/dest/browser/cbind/generated/async.d.ts.map +1 -0
  29. package/dest/browser/cbind/generated/async.js +148 -0
  30. package/dest/browser/cbind/generated/native.d.ts +31 -0
  31. package/dest/browser/cbind/generated/native.d.ts.map +1 -0
  32. package/dest/browser/cbind/generated/native.js +234 -0
  33. package/dest/browser/cbind/generated/sync.d.ts +23 -0
  34. package/dest/browser/cbind/generated/sync.d.ts.map +1 -0
  35. package/dest/browser/cbind/generated/sync.js +133 -0
  36. package/dest/browser/cbind/schema_compiler.d.ts +70 -0
  37. package/dest/browser/cbind/schema_compiler.d.ts.map +1 -0
  38. package/dest/browser/cbind/schema_compiler.js +683 -0
  39. package/dest/browser/proof/index.d.ts +2 -0
  40. package/dest/browser/proof/index.d.ts.map +1 -1
  41. package/dest/browser/proof/index.js +3 -3
  42. package/dest/node/barretenberg/backend.d.ts +1 -0
  43. package/dest/node/barretenberg/backend.d.ts.map +1 -1
  44. package/dest/node/barretenberg/backend.js +116 -108
  45. package/dest/node/barretenberg/index.d.ts +13 -0
  46. package/dest/node/barretenberg/index.d.ts.map +1 -1
  47. package/dest/node/barretenberg/index.js +40 -2
  48. package/dest/node/barretenberg/verifier.js +2 -2
  49. package/dest/node/barretenberg_api/index.d.ts +2 -2
  50. package/dest/node/barretenberg_api/index.d.ts.map +1 -1
  51. package/dest/node/barretenberg_api/index.js +5 -5
  52. package/dest/node/barretenberg_wasm/barretenberg-threads.wasm.gz +0 -0
  53. package/dest/node/barretenberg_wasm/barretenberg_wasm_base/index.d.ts +1 -0
  54. package/dest/node/barretenberg_wasm/barretenberg_wasm_base/index.d.ts.map +1 -1
  55. package/dest/node/barretenberg_wasm/barretenberg_wasm_base/index.js +5 -4
  56. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/index.d.ts +2 -0
  57. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/index.d.ts.map +1 -1
  58. package/dest/node/barretenberg_wasm/barretenberg_wasm_main/index.js +17 -1
  59. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts +1 -0
  60. package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts.map +1 -1
  61. package/dest/node/cbind/generate.d.ts +5 -0
  62. package/dest/node/cbind/generate.d.ts.map +1 -0
  63. package/dest/node/cbind/generate.js +64 -0
  64. package/dest/node/cbind/generated/api_types.d.ts +634 -0
  65. package/dest/node/cbind/generated/api_types.d.ts.map +1 -0
  66. package/dest/node/cbind/generated/api_types.js +851 -0
  67. package/dest/node/cbind/generated/async.d.ts +23 -0
  68. package/dest/node/cbind/generated/async.d.ts.map +1 -0
  69. package/dest/node/cbind/generated/async.js +148 -0
  70. package/dest/node/cbind/generated/native.d.ts +31 -0
  71. package/dest/node/cbind/generated/native.d.ts.map +1 -0
  72. package/dest/node/cbind/generated/native.js +234 -0
  73. package/dest/node/cbind/generated/sync.d.ts +23 -0
  74. package/dest/node/cbind/generated/sync.d.ts.map +1 -0
  75. package/dest/node/cbind/generated/sync.js +133 -0
  76. package/dest/node/cbind/schema_compiler.d.ts +70 -0
  77. package/dest/node/cbind/schema_compiler.d.ts.map +1 -0
  78. package/dest/node/cbind/schema_compiler.js +683 -0
  79. package/dest/node/main.js +3 -3
  80. package/dest/node/proof/index.d.ts +2 -0
  81. package/dest/node/proof/index.d.ts.map +1 -1
  82. package/dest/node/proof/index.js +3 -3
  83. package/dest/node-cjs/barretenberg/backend.d.ts +1 -0
  84. package/dest/node-cjs/barretenberg/backend.d.ts.map +1 -1
  85. package/dest/node-cjs/barretenberg/backend.js +117 -109
  86. package/dest/node-cjs/barretenberg/index.d.ts +13 -0
  87. package/dest/node-cjs/barretenberg/index.d.ts.map +1 -1
  88. package/dest/node-cjs/barretenberg/index.js +40 -2
  89. package/dest/node-cjs/barretenberg/verifier.js +2 -2
  90. package/dest/node-cjs/barretenberg_api/index.d.ts +2 -2
  91. package/dest/node-cjs/barretenberg_api/index.d.ts.map +1 -1
  92. package/dest/node-cjs/barretenberg_api/index.js +5 -5
  93. package/dest/node-cjs/barretenberg_wasm/barretenberg-threads.wasm.gz +0 -0
  94. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_base/index.d.ts +1 -0
  95. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_base/index.d.ts.map +1 -1
  96. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_base/index.js +5 -4
  97. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/index.d.ts +2 -0
  98. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/index.d.ts.map +1 -1
  99. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/index.js +17 -1
  100. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts +1 -0
  101. package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts.map +1 -1
  102. package/dest/node-cjs/cbind/generate.d.ts +5 -0
  103. package/dest/node-cjs/cbind/generate.d.ts.map +1 -0
  104. package/dest/node-cjs/cbind/generate.js +66 -0
  105. package/dest/node-cjs/cbind/generated/api_types.d.ts +634 -0
  106. package/dest/node-cjs/cbind/generated/api_types.d.ts.map +1 -0
  107. package/dest/node-cjs/cbind/generated/api_types.js +925 -0
  108. package/dest/node-cjs/cbind/generated/async.d.ts +23 -0
  109. package/dest/node-cjs/cbind/generated/async.d.ts.map +1 -0
  110. package/dest/node-cjs/cbind/generated/async.js +152 -0
  111. package/dest/node-cjs/cbind/generated/native.d.ts +31 -0
  112. package/dest/node-cjs/cbind/generated/native.d.ts.map +1 -0
  113. package/dest/node-cjs/cbind/generated/native.js +238 -0
  114. package/dest/node-cjs/cbind/generated/sync.d.ts +23 -0
  115. package/dest/node-cjs/cbind/generated/sync.d.ts.map +1 -0
  116. package/dest/node-cjs/cbind/generated/sync.js +137 -0
  117. package/dest/node-cjs/cbind/schema_compiler.d.ts +70 -0
  118. package/dest/node-cjs/cbind/schema_compiler.d.ts.map +1 -0
  119. package/dest/node-cjs/cbind/schema_compiler.js +691 -0
  120. package/dest/node-cjs/main.js +3 -3
  121. package/dest/node-cjs/proof/index.d.ts +2 -0
  122. package/dest/node-cjs/proof/index.d.ts.map +1 -1
  123. package/dest/node-cjs/proof/index.js +3 -1
  124. package/package.json +4 -3
  125. package/src/barretenberg/backend.ts +129 -137
  126. package/src/barretenberg/index.ts +52 -1
  127. package/src/barretenberg/verifier.ts +1 -1
  128. package/src/barretenberg_api/index.ts +4 -4
  129. package/src/barretenberg_wasm/barretenberg_wasm_base/index.ts +5 -3
  130. package/src/barretenberg_wasm/barretenberg_wasm_main/index.ts +23 -0
  131. package/src/cbind/README.md +1 -0
  132. package/src/cbind/generate.ts +89 -0
  133. package/src/cbind/schema_compiler.ts +833 -0
  134. package/src/main.ts +2 -2
  135. package/src/proof/index.ts +2 -2
@@ -111,7 +111,23 @@ class BarretenbergWasmMain extends index_js_3.BarretenbergWasmBase {
111
111
  return this.getMemorySlice(ptr + 4, ptr + 4 + length);
112
112
  });
113
113
  }
114
+ cbindCall(cbind, inputBuffer) {
115
+ const outputSizePtr = this.call('bbmalloc', 4);
116
+ const outputMsgpackPtr = this.call('bbmalloc', 4);
117
+ const inputPtr = this.call('bbmalloc', inputBuffer.length);
118
+ this.writeMemory(inputPtr, inputBuffer);
119
+ this.call(cbind, inputPtr, inputBuffer.length, outputMsgpackPtr, outputSizePtr);
120
+ const readPtr32 = (ptr32) => {
121
+ const dataView = new DataView(this.getMemorySlice(ptr32, ptr32 + 4).buffer);
122
+ return dataView.getUint32(0, true);
123
+ };
124
+ const encodedResult = this.getMemorySlice(readPtr32(outputMsgpackPtr), readPtr32(outputMsgpackPtr) + readPtr32(outputSizePtr));
125
+ this.call('bbfree', inputPtr);
126
+ this.call('bbfree', outputSizePtr);
127
+ this.call('bbfree', outputMsgpackPtr);
128
+ return encodedResult;
129
+ }
114
130
  }
115
131
  exports.BarretenbergWasmMain = BarretenbergWasmMain;
116
132
  BarretenbergWasmMain.MAX_THREADS = 32;
117
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYmFycmV0ZW5iZXJnX3dhc20vYmFycmV0ZW5iZXJnX3dhc21fbWFpbi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFFQSxrREFBcUc7QUFDckcsZ0ZBQXVGO0FBRXZGLGlFQUEwRTtBQUMxRSwyREFBb0Q7QUFDcEQsaURBQXVEO0FBRXZEOzs7O0dBSUc7QUFDSCxNQUFhLG9CQUFxQixTQUFRLCtCQUFvQjtJQUE5RDs7UUFFVSxZQUFPLEdBQWEsRUFBRSxDQUFDO1FBQ3ZCLGdCQUFXLEdBQW1DLEVBQUUsQ0FBQztRQUNqRCxlQUFVLEdBQUcsQ0FBQyxDQUFDO1FBQ2YsaUJBQVksR0FBRyxDQUFDLENBQUM7SUF1SDNCLENBQUM7SUFySFEsYUFBYTtRQUNsQixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxLQUFLLENBQUMsSUFBSSxDQUNmLE1BQTBCLEVBQzFCLE9BQU8sR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUEsb0JBQVMsR0FBRSxFQUFFLG9CQUFvQixDQUFDLFdBQVcsQ0FBQyxFQUNqRSxTQUFnQyxJQUFBLDRCQUFpQixFQUFDLFNBQVMsQ0FBQyxFQUM1RCxPQUFPLEdBQUcsRUFBRSxFQUNaLE9BQU8sR0FBRyxJQUFJLENBQUMsNEJBQTRCLEVBQUU7UUFFN0MsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFFckIsTUFBTSxTQUFTLEdBQUcsQ0FBQyxPQUFPLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxDQUFDO1FBQ3RELE1BQU0sS0FBSyxHQUFHLENBQUMsT0FBTyxHQUFHLENBQUMsSUFBSSxFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsQ0FBQztRQUNsRCxN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
133
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYmFycmV0ZW5iZXJnX3dhc20vYmFycmV0ZW5iZXJnX3dhc21fbWFpbi9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFFQSxrREFBcUc7QUFDckcsZ0ZBQXVGO0FBRXZGLGlFQUEwRTtBQUMxRSwyREFBb0Q7QUFDcEQsaURBQXVEO0FBRXZEOzs7O0dBSUc7QUFDSCxNQUFhLG9CQUFxQixTQUFRLCtCQUFvQjtJQUE5RDs7UUFFVSxZQUFPLEdBQWEsRUFBRSxDQUFDO1FBQ3ZCLGdCQUFXLEdBQW1DLEVBQUUsQ0FBQztRQUNqRCxlQUFVLEdBQUcsQ0FBQyxDQUFDO1FBQ2YsaUJBQVksR0FBRyxDQUFDLENBQUM7SUE4STNCLENBQUM7SUE1SVEsYUFBYTtRQUNsQixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRUQ7O09BRUc7SUFDSSxLQUFLLENBQUMsSUFBSSxDQUNmLE1BQTBCLEVBQzFCLE9BQU8sR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUEsb0JBQVMsR0FBRSxFQUFFLG9CQUFvQixDQUFDLFdBQVcsQ0FBQyxFQUNqRSxTQUFnQyxJQUFBLDRCQUFpQixFQUFDLFNBQVMsQ0FBQyxFQUM1RCxPQUFPLEdBQUcsRUFBRSxFQUNaLE9BQU8sR0FBRyxJQUFJLENBQUMsNEJBQTRCLEVBQUU7UUFFN0MsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFFckIsTUFBTSxTQUFTLEdBQUcsQ0FBQyxPQUFPLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxDQUFDO1FBQ3RELE1BQU0sS0FBSyxHQUFHLENBQUMsT0FBTyxHQUFHLENBQUMsSUFBSSxFQUFFLENBQUMsR0FBRyxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsQ0FBQztRQUNsRCxN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
@@ -13,6 +13,7 @@ export declare class BarretenbergWasmThread extends BarretenbergWasmBase {
13
13
  env: {
14
14
  env_hardware_concurrency: () => number;
15
15
  logstr: (addr: number) => void;
16
+ throw_or_abort_impl: (addr: number) => never;
16
17
  get_data: (keyAddr: number, outBufAddr: number) => void;
17
18
  set_data: (keyAddr: number, dataAddr: number, dataLength: number) => void;
18
19
  memory: WebAssembly.Memory;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/barretenberg_wasm/barretenberg_wasm_thread/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEjC,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAE1E,qBAAa,sBAAuB,SAAQ,oBAAoB;IAC9D;;OAEG;IACU,UAAU,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,MAAM;IAMvE,OAAO;IAId,SAAS,CAAC,YAAY,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM;;;;;;;;;;;;;;;;;CA0BlD;AAED,MAAM,MAAM,4BAA4B,GAAG,MAAM,CAAC,sBAAsB,CAAC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/barretenberg_wasm/barretenberg_wasm_thread/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEjC,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAE1E,qBAAa,sBAAuB,SAAQ,oBAAoB;IAC9D;;OAEG;IACU,UAAU,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,MAAM;IAMvE,OAAO;IAId,SAAS,CAAC,YAAY,CAAC,MAAM,EAAE,WAAW,CAAC,MAAM;;;;;;;;;;;;;;;;;;CA0BlD;AAED,MAAM,MAAM,4BAA4B,GAAG,MAAM,CAAC,sBAAsB,CAAC,CAAC"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generate TypeScript bindings from msgpack schema
3
+ */
4
+ export {};
5
+ //# sourceMappingURL=generate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate.d.ts","sourceRoot":"","sources":["../../../src/cbind/generate.ts"],"names":[],"mappings":"AAAA;;GAEG"}
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+ /**
3
+ * Generate TypeScript bindings from msgpack schema
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const fs_1 = require("fs");
7
+ const path_1 = require("path");
8
+ const child_process_1 = require("child_process");
9
+ const util_1 = require("util");
10
+ const url_1 = require("url");
11
+ const schema_compiler_js_1 = require("./schema_compiler.js");
12
+ const execAsync = (0, util_1.promisify)(child_process_1.exec);
13
+ const GENERATORS = [
14
+ {
15
+ name: 'Shared types',
16
+ outputFile: 'generated/api_types.ts',
17
+ createCompiler: schema_compiler_js_1.createSharedTypesCompiler,
18
+ },
19
+ {
20
+ name: 'Sync API',
21
+ outputFile: 'generated/sync.ts',
22
+ createCompiler: schema_compiler_js_1.createSyncApiCompiler,
23
+ },
24
+ {
25
+ name: 'Async API',
26
+ outputFile: 'generated/async.ts',
27
+ createCompiler: schema_compiler_js_1.createAsyncApiCompiler,
28
+ },
29
+ {
30
+ name: 'Native API',
31
+ outputFile: 'generated/native.ts',
32
+ createCompiler: schema_compiler_js_1.createNativeApiCompiler,
33
+ },
34
+ ];
35
+ // @ts-ignore
36
+ const __dirname = (0, path_1.dirname)((0, url_1.fileURLToPath)(""));
37
+ async function generate() {
38
+ const bbBuildPath = process.env.BB_BINARY_PATH || (0, path_1.join)(__dirname, '../../../cpp/build/bin/bb');
39
+ // Get schema from bb
40
+ console.log('Fetching msgpack schema from bb...');
41
+ const { stdout } = await execAsync(`${bbBuildPath} msgpack schema`);
42
+ const schema = JSON.parse(stdout.trim());
43
+ if (!schema.commands || !schema.responses) {
44
+ throw new Error('Invalid schema: missing commands or responses');
45
+ }
46
+ console.log('Generating TypeScript bindings...\n');
47
+ // Ensure output directory exists
48
+ const outputDir = (0, path_1.join)(__dirname, 'generated');
49
+ (0, fs_1.mkdirSync)(outputDir, { recursive: true });
50
+ // Generate each output file
51
+ for (const config of GENERATORS) {
52
+ const compiler = config.createCompiler();
53
+ compiler.processApiSchema(schema.commands, schema.responses);
54
+ const outputPath = (0, path_1.join)(__dirname, config.outputFile);
55
+ const content = compiler.compile();
56
+ (0, fs_1.writeFileSync)(outputPath, content);
57
+ console.log(`✓ ${config.name}: ${outputPath}`);
58
+ }
59
+ console.log('\nGeneration complete!');
60
+ }
61
+ // Run the generator
62
+ generate().catch(error => {
63
+ console.error('Generation failed:', error);
64
+ process.exit(1);
65
+ });
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY2JpbmQvZ2VuZXJhdGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOztHQUVHOztBQUVILDJCQUE4QztBQUM5QywrQkFBcUM7QUFDckMsaURBQXFDO0FBQ3JDLCtCQUFpQztBQUNqQyw2QkFBb0M7QUFDcEMsNkRBTThCO0FBRTlCLE1BQU0sU0FBUyxHQUFHLElBQUEsZ0JBQVMsRUFBQyxvQkFBSSxDQUFDLENBQUM7QUFRbEMsTUFBTSxVQUFVLEdBQXNCO0lBQ3BDO1FBQ0UsSUFBSSxFQUFFLGNBQWM7UUFDcEIsVUFBVSxFQUFFLHdCQUF3QjtRQUNwQyxjQUFjLEVBQUUsOENBQXlCO0tBQzFDO0lBQ0Q7UUFDRSxJQUFJLEVBQUUsVUFBVTtRQUNoQixVQUFVLEVBQUUsbUJBQW1CO1FBQy9CLGNBQWMsRUFBRSwwQ0FBcUI7S0FDdEM7SUFDRDtRQUNFLElBQUksRUFBRSxXQUFXO1FBQ2pCLFVBQVUsRUFBRSxvQkFBb0I7UUFDaEMsY0FBYyxFQUFFLDJDQUFzQjtLQUN2QztJQUNEO1FBQ0UsSUFBSSxFQUFFLFlBQVk7UUFDbEIsVUFBVSxFQUFFLHFCQUFxQjtRQUNqQyxjQUFjLEVBQUUsNENBQXVCO0tBQ3hDO0NBQ0YsQ0FBQztBQUVGLGFBQWE7QUFDYixNQUFNLFNBQVMsR0FBRyxJQUFBLGNBQU8sRUFBQyxJQUFBLG1CQUFhLEVBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0FBRTFELEtBQUssVUFBVSxRQUFRO0lBQ3JCLE1BQU0sV0FBVyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsY0FBYyxJQUFJLElBQUEsV0FBSSxFQUFDLFNBQVMsRUFBRSwyQkFBMkIsQ0FBQyxDQUFDO0lBRS9GLHFCQUFxQjtJQUNyQixPQUFPLENBQUMsR0FBRyxDQUFDLG9DQUFvQyxDQUFDLENBQUM7SUFDbEQsTUFBTSxFQUFFLE1BQU0sRUFBRSxHQUFHLE1BQU0sU0FBUyxDQUFDLEdBQUcsV0FBVyxpQkFBaUIsQ0FBQyxDQUFDO0lBQ3BFLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7SUFFekMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDMUMsTUFBTSxJQUFJLEtBQUssQ0FBQywrQ0FBK0MsQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUFFRCxPQUFPLENBQUMsR0FBRyxDQUFDLHFDQUFxQyxDQUFDLENBQUM7SUFFbkQsaUNBQWlDO0lBQ2pDLE1BQU0sU0FBUyxHQUFHLElBQUEsV0FBSSxFQUFDLFNBQVMsRUFBRSxXQUFXLENBQUMsQ0FBQztJQUMvQyxJQUFBLGNBQVMsRUFBQyxTQUFTLEVBQUUsRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUUxQyw0QkFBNEI7SUFDNUIsS0FBSyxNQUFNLE1BQU0sSUFBSSxVQUFVLEVBQUUsQ0FBQztRQUNoQyxNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDekMsUUFBUSxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRTdELE1BQU0sVUFBVSxHQUFHLElBQUEsV0FBSSxFQUFDLFNBQVMsRUFBRSxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDdEQsTUFBTSxPQUFPLEdBQUcsUUFBUSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ25DLElBQUEsa0JBQWEsRUFBQyxVQUFVLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFFbkMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxLQUFLLE1BQU0sQ0FBQyxJQUFJLEtBQUssVUFBVSxFQUFFLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRUQsT0FBTyxDQUFDLEdBQUcsQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO0FBQ3hDLENBQUM7QUFFRCxvQkFBb0I7QUFDcEIsUUFBUSxFQUFFLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUFFO0lBQ3ZCLE9BQU8sQ0FBQyxLQUFLLENBQUMsb0JBQW9CLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDM0MsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUNsQixDQUFDLENBQUMsQ0FBQyJ9