@aztec/bb.js 0.87.4 → 0.87.5
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.
- package/dest/browser/barretenberg-threads.js +5 -0
- package/dest/browser/barretenberg.js +5 -0
- package/dest/browser/index.js +13285 -6
- package/dest/browser/index.js.LICENSE.txt +16 -0
- package/dest/browser/main.worker.js +1316 -0
- package/dest/browser/main.worker.js.LICENSE.txt +5 -0
- package/dest/browser/thread.worker.js +1200 -0
- package/dest/browser/thread.worker.js.LICENSE.txt +5 -0
- package/dest/node/barretenberg/backend.d.ts +1 -6
- package/dest/node/barretenberg/backend.d.ts.map +1 -1
- package/dest/node/barretenberg/backend.js +14 -24
- package/dest/node/barretenberg/index.js +5 -5
- package/dest/node/barretenberg_api/index.d.ts +6 -15
- package/dest/node/barretenberg_api/index.d.ts.map +1 -1
- package/dest/node/barretenberg_api/index.js +9 -72
- package/dest/node/barretenberg_wasm/barretenberg-threads.wasm.gz +0 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_base/index.d.ts +1 -1
- package/dest/node/barretenberg_wasm/barretenberg_wasm_base/index.js +3 -3
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts.map +1 -1
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.js +8 -4
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.js +4 -4
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts +1 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts.map +1 -1
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.js +2 -5
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.js +1 -8
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/index.d.ts +1 -1
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/index.d.ts.map +1 -1
- package/dest/node/barretenberg_wasm/barretenberg_wasm_main/index.js +3 -3
- package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts.map +1 -1
- package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.js +8 -4
- package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.js +4 -4
- package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts +1 -0
- package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts.map +1 -1
- package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.js +2 -5
- package/dest/node/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.js +2 -9
- package/dest/node/barretenberg_wasm/fetch_code/browser/index.d.ts +1 -1
- package/dest/node/barretenberg_wasm/fetch_code/browser/index.d.ts.map +1 -1
- package/dest/node/barretenberg_wasm/fetch_code/browser/index.js +3 -3
- package/dest/node/barretenberg_wasm/fetch_code/node/index.d.ts +1 -1
- package/dest/node/barretenberg_wasm/fetch_code/node/index.d.ts.map +1 -1
- package/dest/node/barretenberg_wasm/fetch_code/node/index.js +1 -1
- package/dest/node/barretenberg_wasm/helpers/browser/index.d.ts +0 -1
- package/dest/node/barretenberg_wasm/helpers/browser/index.d.ts.map +1 -1
- package/dest/node/barretenberg_wasm/helpers/browser/index.js +1 -10
- package/dest/node/barretenberg_wasm/helpers/node/index.d.ts +1 -1
- package/dest/node/barretenberg_wasm/helpers/node/index.d.ts.map +1 -1
- package/dest/node/barretenberg_wasm/helpers/node/index.js +1 -10
- package/dest/node/barretenberg_wasm/helpers/node/node_endpoint.d.ts +1 -1
- package/dest/node/barretenberg_wasm/index.js +19 -4
- package/dest/node/bigint-array/index.d.ts +2 -0
- package/dest/node/bigint-array/index.d.ts.map +1 -1
- package/dest/node/crs/net_crs.d.ts +3 -3
- package/dest/node/crs/node/index.js +6 -6
- package/dest/node/index.d.ts +0 -1
- package/dest/node/index.d.ts.map +1 -1
- package/dest/node/index.js +1 -2
- package/dest/node/main.d.ts.map +1 -1
- package/dest/node/main.js +45 -33
- package/dest/node/random/browser/index.d.ts +1 -1
- package/dest/node/random/browser/index.d.ts.map +1 -1
- package/dest/node/random/node/index.d.ts +1 -1
- package/dest/node/random/node/index.d.ts.map +1 -1
- package/dest/node/serialize/buffer_reader.d.ts +1 -1
- package/dest/node/serialize/serialize.d.ts +12 -12
- package/dest/node/serialize/serialize.d.ts.map +1 -1
- package/dest/node/types/fields.d.ts +4 -2
- package/dest/node/types/fields.d.ts.map +1 -1
- package/dest/node/types/fixed_size_buffer.d.ts +3 -3
- package/dest/node/types/point.d.ts +3 -1
- package/dest/node/types/point.d.ts.map +1 -1
- package/dest/node/types/ptr.d.ts +1 -1
- package/dest/node-cjs/async_map/index.js +3 -2
- package/dest/node-cjs/barretenberg/backend.d.ts +1 -6
- package/dest/node-cjs/barretenberg/backend.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg/backend.js +14 -24
- package/dest/node-cjs/barretenberg/index.js +6 -5
- package/dest/node-cjs/barretenberg_api/index.d.ts +6 -15
- package/dest/node-cjs/barretenberg_api/index.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg_api/index.js +9 -72
- package/dest/node-cjs/barretenberg_wasm/barretenberg-threads.wasm.gz +0 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_base/index.d.ts +1 -1
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_base/index.js +6 -5
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.js +13 -7
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.js +5 -4
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts +1 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.js +4 -6
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.js +1 -8
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/index.d.ts +1 -1
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/index.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_main/index.js +4 -3
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.js +13 -7
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.js +5 -4
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts +1 -0
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.js +4 -6
- package/dest/node-cjs/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.js +2 -9
- package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/index.d.ts +1 -1
- package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/index.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg_wasm/fetch_code/browser/index.js +5 -4
- package/dest/node-cjs/barretenberg_wasm/fetch_code/node/index.d.ts +1 -1
- package/dest/node-cjs/barretenberg_wasm/fetch_code/node/index.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg_wasm/fetch_code/node/index.js +3 -2
- package/dest/node-cjs/barretenberg_wasm/helpers/browser/index.d.ts +0 -1
- package/dest/node-cjs/barretenberg_wasm/helpers/browser/index.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg_wasm/helpers/browser/index.js +8 -18
- package/dest/node-cjs/barretenberg_wasm/helpers/node/index.d.ts +1 -1
- package/dest/node-cjs/barretenberg_wasm/helpers/node/index.d.ts.map +1 -1
- package/dest/node-cjs/barretenberg_wasm/helpers/node/index.js +7 -16
- package/dest/node-cjs/barretenberg_wasm/helpers/node/node_endpoint.d.ts +1 -1
- package/dest/node-cjs/barretenberg_wasm/helpers/node/node_endpoint.js +3 -2
- package/dest/node-cjs/barretenberg_wasm/index.js +22 -5
- package/dest/node-cjs/benchmark/index.js +3 -2
- package/dest/node-cjs/bigint-array/index.d.ts +2 -0
- package/dest/node-cjs/bigint-array/index.d.ts.map +1 -1
- package/dest/node-cjs/bigint-array/index.js +6 -5
- package/dest/node-cjs/bindgen/mappings.js +4 -4
- package/dest/node-cjs/bindgen/rust.js +3 -2
- package/dest/node-cjs/bindgen/to_camel_case.js +3 -2
- package/dest/node-cjs/bindgen/typescript.js +3 -2
- package/dest/node-cjs/crs/net_crs.d.ts +3 -3
- package/dest/node-cjs/crs/node/index.js +7 -6
- package/dest/node-cjs/index.d.ts +0 -1
- package/dest/node-cjs/index.d.ts.map +1 -1
- package/dest/node-cjs/index.js +9 -11
- package/dest/node-cjs/main.d.ts.map +1 -1
- package/dest/node-cjs/main.js +55 -41
- package/dest/node-cjs/proof/index.js +6 -6
- package/dest/node-cjs/random/browser/index.d.ts +1 -1
- package/dest/node-cjs/random/browser/index.d.ts.map +1 -1
- package/dest/node-cjs/random/node/index.d.ts +1 -1
- package/dest/node-cjs/random/node/index.d.ts.map +1 -1
- package/dest/node-cjs/random/node/index.js +3 -2
- package/dest/node-cjs/retry/index.js +5 -4
- package/dest/node-cjs/serialize/buffer_reader.d.ts +1 -1
- package/dest/node-cjs/serialize/output_type.js +7 -6
- package/dest/node-cjs/serialize/serialize.d.ts +12 -12
- package/dest/node-cjs/serialize/serialize.d.ts.map +1 -1
- package/dest/node-cjs/serialize/serialize.js +21 -20
- package/dest/node-cjs/types/fields.d.ts +4 -2
- package/dest/node-cjs/types/fields.d.ts.map +1 -1
- package/dest/node-cjs/types/fixed_size_buffer.d.ts +3 -3
- package/dest/node-cjs/types/point.d.ts +3 -1
- package/dest/node-cjs/types/point.d.ts.map +1 -1
- package/dest/node-cjs/types/ptr.d.ts +1 -1
- package/package.json +15 -6
- package/src/barretenberg/backend.ts +14 -29
- package/src/barretenberg/index.ts +4 -4
- package/src/barretenberg_api/index.ts +8 -116
- package/src/barretenberg_wasm/barretenberg_wasm_base/index.ts +2 -2
- package/src/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.ts +7 -3
- package/src/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.ts +3 -3
- package/src/barretenberg_wasm/barretenberg_wasm_main/factory/node/index.ts +1 -4
- package/src/barretenberg_wasm/barretenberg_wasm_main/factory/node/main.worker.ts +0 -9
- package/src/barretenberg_wasm/barretenberg_wasm_main/index.ts +2 -2
- package/src/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.ts +7 -3
- package/src/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.ts +3 -3
- package/src/barretenberg_wasm/barretenberg_wasm_thread/factory/node/index.ts +1 -4
- package/src/barretenberg_wasm/barretenberg_wasm_thread/factory/node/thread.worker.ts +1 -10
- package/src/barretenberg_wasm/fetch_code/browser/index.ts +3 -3
- package/src/barretenberg_wasm/fetch_code/node/index.ts +1 -1
- package/src/barretenberg_wasm/helpers/browser/index.ts +0 -9
- package/src/barretenberg_wasm/helpers/node/index.ts +0 -11
- package/src/barretenberg_wasm/index.ts +19 -3
- package/src/crs/node/index.ts +5 -5
- package/src/index.ts +0 -1
- package/src/main.ts +50 -33
- package/dest/browser/async_map/index.d.ts +0 -10
- package/dest/browser/async_map/index.d.ts.map +0 -1
- package/dest/browser/async_map/index.js +0 -16
- package/dest/browser/barretenberg/backend.d.ts +0 -63
- package/dest/browser/barretenberg/backend.d.ts.map +0 -1
- package/dest/browser/barretenberg/backend.js +0 -236
- package/dest/browser/barretenberg/index.d.ts +0 -53
- package/dest/browser/barretenberg/index.d.ts.map +0 -1
- package/dest/browser/barretenberg/index.js +0 -95
- package/dest/browser/barretenberg/verifier.d.ts +0 -14
- package/dest/browser/barretenberg/verifier.d.ts.map +0 -1
- package/dest/browser/barretenberg/verifier.js +0 -30
- package/dest/browser/barretenberg_api/index.d.ts +0 -109
- package/dest/browser/barretenberg_api/index.d.ts.map +0 -1
- package/dest/browser/barretenberg_api/index.js +0 -699
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_base/index.d.ts +0 -44
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_base/index.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_base/index.js +0 -124
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts +0 -2
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/index.js +0 -11
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts +0 -2
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/factory/browser/main.worker.js +0 -12
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts +0 -21
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/heap_allocator.js +0 -62
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/index.d.ts +0 -47
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/index.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_main/index.js +0 -105
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts +0 -2
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/index.js +0 -11
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts +0 -2
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/factory/browser/thread.worker.js +0 -12
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts +0 -28
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/index.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/barretenberg_wasm_thread/index.js +0 -40
- package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg-threads.d.ts +0 -3
- package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg-threads.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg-threads.js +0 -2
- package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg.d.ts +0 -3
- package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/fetch_code/browser/barretenberg.js +0 -2
- package/dest/browser/barretenberg_wasm/fetch_code/browser/index.d.ts +0 -2
- package/dest/browser/barretenberg_wasm/fetch_code/browser/index.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/fetch_code/browser/index.js +0 -36
- package/dest/browser/barretenberg_wasm/fetch_code/index.d.ts +0 -2
- package/dest/browser/barretenberg_wasm/fetch_code/index.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/fetch_code/index.js +0 -2
- package/dest/browser/barretenberg_wasm/helpers/browser/index.d.ts +0 -13
- package/dest/browser/barretenberg_wasm/helpers/browser/index.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/helpers/browser/index.js +0 -40
- package/dest/browser/barretenberg_wasm/helpers/index.d.ts +0 -2
- package/dest/browser/barretenberg_wasm/helpers/index.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/helpers/index.js +0 -2
- package/dest/browser/barretenberg_wasm/index.d.ts +0 -5
- package/dest/browser/barretenberg_wasm/index.d.ts.map +0 -1
- package/dest/browser/barretenberg_wasm/index.js +0 -16
- package/dest/browser/bigint-array/index.d.ts +0 -17
- package/dest/browser/bigint-array/index.d.ts.map +0 -1
- package/dest/browser/bigint-array/index.js +0 -37
- package/dest/browser/crs/browser/cached_net_crs.d.ts +0 -43
- package/dest/browser/crs/browser/cached_net_crs.d.ts.map +0 -1
- package/dest/browser/crs/browser/cached_net_crs.js +0 -90
- package/dest/browser/crs/browser/index.d.ts +0 -2
- package/dest/browser/crs/browser/index.d.ts.map +0 -1
- package/dest/browser/crs/browser/index.js +0 -2
- package/dest/browser/crs/index.d.ts +0 -2
- package/dest/browser/crs/index.d.ts.map +0 -1
- package/dest/browser/crs/index.js +0 -2
- package/dest/browser/crs/net_crs.d.ts +0 -85
- package/dest/browser/crs/net_crs.d.ts.map +0 -1
- package/dest/browser/crs/net_crs.js +0 -136
- package/dest/browser/index.d.ts +0 -6
- package/dest/browser/index.d.ts.map +0 -1
- package/dest/browser/log/browser/index.d.ts +0 -6
- package/dest/browser/log/browser/index.d.ts.map +0 -1
- package/dest/browser/log/browser/index.js +0 -28
- package/dest/browser/log/index.d.ts +0 -2
- package/dest/browser/log/index.d.ts.map +0 -1
- package/dest/browser/log/index.js +0 -2
- package/dest/browser/log/types.d.ts +0 -6
- package/dest/browser/log/types.d.ts.map +0 -1
- package/dest/browser/log/types.js +0 -2
- package/dest/browser/proof/index.d.ts +0 -19
- package/dest/browser/proof/index.d.ts.map +0 -1
- package/dest/browser/proof/index.js +0 -63
- package/dest/browser/random/browser/index.d.ts +0 -2
- package/dest/browser/random/browser/index.d.ts.map +0 -1
- package/dest/browser/random/browser/index.js +0 -31
- package/dest/browser/random/index.d.ts +0 -2
- package/dest/browser/random/index.d.ts.map +0 -1
- package/dest/browser/random/index.js +0 -2
- package/dest/browser/retry/index.d.ts +0 -26
- package/dest/browser/retry/index.d.ts.map +0 -1
- package/dest/browser/retry/index.js +0 -50
- package/dest/browser/serialize/buffer_reader.d.ts +0 -28
- package/dest/browser/serialize/buffer_reader.d.ts.map +0 -1
- package/dest/browser/serialize/buffer_reader.js +0 -66
- package/dest/browser/serialize/index.d.ts +0 -4
- package/dest/browser/serialize/index.d.ts.map +0 -1
- package/dest/browser/serialize/index.js +0 -4
- package/dest/browser/serialize/output_type.d.ts +0 -11
- package/dest/browser/serialize/output_type.d.ts.map +0 -1
- package/dest/browser/serialize/output_type.js +0 -44
- package/dest/browser/serialize/serialize.d.ts +0 -53
- package/dest/browser/serialize/serialize.d.ts.map +0 -1
- package/dest/browser/serialize/serialize.js +0 -139
- package/dest/browser/types/fields.d.ts +0 -43
- package/dest/browser/types/fields.d.ts.map +0 -1
- package/dest/browser/types/fields.js +0 -102
- package/dest/browser/types/fixed_size_buffer.d.ts +0 -26
- package/dest/browser/types/fixed_size_buffer.d.ts.map +0 -1
- package/dest/browser/types/fixed_size_buffer.js +0 -51
- package/dest/browser/types/index.d.ts +0 -6
- package/dest/browser/types/index.d.ts.map +0 -1
- package/dest/browser/types/index.js +0 -6
- package/dest/browser/types/point.d.ts +0 -16
- package/dest/browser/types/point.d.ts.map +0 -1
- package/dest/browser/types/point.js +0 -31
- package/dest/browser/types/ptr.d.ts +0 -13
- package/dest/browser/types/ptr.d.ts.map +0 -1
- package/dest/browser/types/ptr.js +0 -19
- package/dest/browser/types/raw_buffer.d.ts +0 -3
- package/dest/browser/types/raw_buffer.d.ts.map +0 -1
- package/dest/browser/types/raw_buffer.js +0 -5
- package/dest/node/log/browser/index.d.ts +0 -6
- package/dest/node/log/browser/index.d.ts.map +0 -1
- package/dest/node/log/browser/index.js +0 -28
- package/dest/node/log/index.d.ts +0 -2
- package/dest/node/log/index.d.ts.map +0 -1
- package/dest/node/log/index.js +0 -2
- package/dest/node/log/node/index.d.ts +0 -6
- package/dest/node/log/node/index.d.ts.map +0 -1
- package/dest/node/log/node/index.js +0 -32
- package/dest/node/log/types.d.ts +0 -6
- package/dest/node/log/types.d.ts.map +0 -1
- package/dest/node/log/types.js +0 -2
- package/dest/node-cjs/log/browser/index.d.ts +0 -6
- package/dest/node-cjs/log/browser/index.d.ts.map +0 -1
- package/dest/node-cjs/log/browser/index.js +0 -30
- package/dest/node-cjs/log/index.d.ts +0 -2
- package/dest/node-cjs/log/index.d.ts.map +0 -1
- package/dest/node-cjs/log/index.js +0 -8
- package/dest/node-cjs/log/node/index.d.ts +0 -6
- package/dest/node-cjs/log/node/index.d.ts.map +0 -1
- package/dest/node-cjs/log/node/index.js +0 -34
- package/dest/node-cjs/log/types.d.ts +0 -6
- package/dest/node-cjs/log/types.d.ts.map +0 -1
- package/dest/node-cjs/log/types.js +0 -3
- package/src/log/browser/index.ts +0 -35
- package/src/log/index.ts +0 -1
- package/src/log/node/index.ts +0 -41
- package/src/log/types.ts +0 -6
package/src/main.ts
CHANGED
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import 'source-map-support/register.js';
|
|
3
|
-
import { Crs, Barretenberg, RawBuffer } from './index.js';
|
|
4
|
-
import
|
|
3
|
+
import { Crs, GrumpkinCrs, Barretenberg, RawBuffer } from './index.js';
|
|
4
|
+
import createDebug from 'debug';
|
|
5
5
|
import { readFileSync, writeFileSync } from 'fs';
|
|
6
6
|
import { gunzipSync } from 'zlib';
|
|
7
7
|
import { Command } from 'commander';
|
|
8
|
+
import { Timer, writeBenchmark } from './benchmark/index.js';
|
|
9
|
+
import path from 'path';
|
|
8
10
|
import { UltraHonkBackendOptions } from './barretenberg/backend.js';
|
|
9
|
-
|
|
10
|
-
|
|
11
|
+
createDebug.log = console.error.bind(console);
|
|
12
|
+
const debug = createDebug('bb.js');
|
|
11
13
|
|
|
12
14
|
const threads = +process.env.HARDWARE_CONCURRENCY! || undefined;
|
|
13
15
|
|
|
@@ -25,6 +27,16 @@ function getBytecode(bytecodePath: string): Uint8Array {
|
|
|
25
27
|
return Uint8Array.from(decompressed);
|
|
26
28
|
}
|
|
27
29
|
|
|
30
|
+
function base64ToUint8Array(base64: string) {
|
|
31
|
+
const binaryString = atob(base64);
|
|
32
|
+
const len = binaryString.length;
|
|
33
|
+
const bytes = new Uint8Array(len);
|
|
34
|
+
for (let i = 0; i < len; i++) {
|
|
35
|
+
bytes[i] = binaryString.charCodeAt(i);
|
|
36
|
+
}
|
|
37
|
+
return bytes;
|
|
38
|
+
}
|
|
39
|
+
|
|
28
40
|
// TODO(https://github.com/AztecProtocol/barretenberg/issues/1126): split this into separate Plonk and Honk functions as their gate count differs
|
|
29
41
|
async function getGatesUltra(bytecodePath: string, recursive: boolean, honkRecursion: boolean, api: Barretenberg) {
|
|
30
42
|
const { total } = await computeCircuitSize(bytecodePath, recursive, honkRecursion, api);
|
|
@@ -45,9 +57,7 @@ async function computeCircuitSize(bytecodePath: string, recursive: boolean, honk
|
|
|
45
57
|
}
|
|
46
58
|
|
|
47
59
|
async function initUltraHonk(bytecodePath: string, crsPath: string) {
|
|
48
|
-
const api = await Barretenberg.new({
|
|
49
|
-
threads,
|
|
50
|
-
});
|
|
60
|
+
const api = await Barretenberg.new({ threads });
|
|
51
61
|
|
|
52
62
|
// TODO(https://github.com/AztecProtocol/barretenberg/issues/1248): Get rid of this call to avoid building the circuit twice.
|
|
53
63
|
// TODO(https://github.com/AztecProtocol/barretenberg/issues/1126): use specific UltraHonk function
|
|
@@ -65,6 +75,20 @@ async function initUltraHonk(bytecodePath: string, crsPath: string) {
|
|
|
65
75
|
return { api, circuitSize, dyadicCircuitSize };
|
|
66
76
|
}
|
|
67
77
|
|
|
78
|
+
async function initClientIVC(crsPath: string) {
|
|
79
|
+
const api = await Barretenberg.new({ threads });
|
|
80
|
+
|
|
81
|
+
debug('Loading CRS for ClientIVC');
|
|
82
|
+
const crs = await Crs.new(2 ** 21 + 1, crsPath);
|
|
83
|
+
const grumpkinCrs = await GrumpkinCrs.new(2 ** 16 + 1, crsPath);
|
|
84
|
+
|
|
85
|
+
// Load CRS into wasm global CRS state.
|
|
86
|
+
// TODO: Make RawBuffer be default behavior, and have a specific Vector type for when wanting length prefixed.
|
|
87
|
+
await api.srsInitSrs(new RawBuffer(crs.getG1Data()), crs.numPoints, new RawBuffer(crs.getG2Data()));
|
|
88
|
+
await api.srsInitGrumpkinSrs(new RawBuffer(grumpkinCrs.getG1Data()), grumpkinCrs.numPoints);
|
|
89
|
+
return { api };
|
|
90
|
+
}
|
|
91
|
+
|
|
68
92
|
async function initLite(crsPath: string) {
|
|
69
93
|
const api = await Barretenberg.new({ threads: 1 });
|
|
70
94
|
|
|
@@ -160,12 +184,10 @@ export async function proveUltraHonk(
|
|
|
160
184
|
const acirProveUltraHonk = options?.keccak
|
|
161
185
|
? api.acirProveUltraKeccakHonk.bind(api)
|
|
162
186
|
: options?.keccakZK
|
|
163
|
-
? api.
|
|
187
|
+
? api.acirProveUltraKeccakZKHonk.bind(api)
|
|
164
188
|
: options?.starknet
|
|
165
189
|
? api.acirProveUltraStarknetHonk.bind(api)
|
|
166
|
-
:
|
|
167
|
-
? api.acirProveUltraStarknetZkHonk.bind(api)
|
|
168
|
-
: api.acirProveUltraHonk.bind(api);
|
|
190
|
+
: api.acirProveUltraHonk.bind(api);
|
|
169
191
|
const proof = await acirProveUltraHonk(bytecode, witness);
|
|
170
192
|
|
|
171
193
|
if (outputPath === '-') {
|
|
@@ -194,12 +216,10 @@ export async function writeVkUltraHonk(
|
|
|
194
216
|
const acirWriteVkUltraHonk = options?.keccak
|
|
195
217
|
? api.acirWriteVkUltraKeccakHonk.bind(api)
|
|
196
218
|
: options?.keccakZK
|
|
197
|
-
? api.
|
|
219
|
+
? api.acirWriteVkUltraKeccakZKHonk.bind(api)
|
|
198
220
|
: options?.starknet
|
|
199
221
|
? api.acirWriteVkUltraStarknetHonk.bind(api)
|
|
200
|
-
:
|
|
201
|
-
? api.acirWriteVkUltraStarknetZkHonk.bind(api)
|
|
202
|
-
: api.acirWriteVkUltraHonk.bind(api);
|
|
222
|
+
: api.acirWriteVkUltraHonk.bind(api);
|
|
203
223
|
const vk = await acirWriteVkUltraHonk(bytecode);
|
|
204
224
|
|
|
205
225
|
if (outputPath === '-') {
|
|
@@ -225,12 +245,10 @@ export async function verifyUltraHonk(
|
|
|
225
245
|
const acirVerifyUltraHonk = options?.keccak
|
|
226
246
|
? api.acirVerifyUltraKeccakHonk.bind(api)
|
|
227
247
|
: options?.keccakZK
|
|
228
|
-
? api.
|
|
248
|
+
? api.acirVerifyUltraKeccakZKHonk.bind(api)
|
|
229
249
|
: options?.starknet
|
|
230
250
|
? api.acirVerifyUltraStarknetHonk.bind(api)
|
|
231
|
-
:
|
|
232
|
-
? api.acirVerifyUltraStarknetZkHonk.bind(api)
|
|
233
|
-
: api.acirVerifyUltraHonk.bind(api);
|
|
251
|
+
: api.acirVerifyUltraHonk.bind(api);
|
|
234
252
|
const verified = await acirVerifyUltraHonk(
|
|
235
253
|
Uint8Array.from(readFileSync(proofPath)),
|
|
236
254
|
new RawBuffer(readFileSync(vkPath)),
|
|
@@ -288,8 +306,9 @@ program.option('-v, --verbose', 'enable verbose logging', false);
|
|
|
288
306
|
program.option('-c, --crs-path <path>', 'set crs path', './crs');
|
|
289
307
|
|
|
290
308
|
function handleGlobalOptions() {
|
|
291
|
-
|
|
292
|
-
|
|
309
|
+
if (program.opts().verbose) {
|
|
310
|
+
createDebug.enable('bb.js*');
|
|
311
|
+
}
|
|
293
312
|
return { crsPath: program.opts().crsPath };
|
|
294
313
|
}
|
|
295
314
|
|
|
@@ -371,8 +390,8 @@ program
|
|
|
371
390
|
.option('-b, --bytecode-path <path>', 'Specify the bytecode path', './target/program.json')
|
|
372
391
|
.option('-o, --output-path <path>', 'Specify the path to write the contract', './target/contract.sol')
|
|
373
392
|
.requiredOption('-k, --vk-path <path>', 'Path to a verification key.')
|
|
374
|
-
.action(async ({ bytecodePath, outputPath, vkPath }) => {
|
|
375
|
-
|
|
393
|
+
.action(async ({ bytecodePath, outputPath, vkPath, crsPath }) => {
|
|
394
|
+
handleGlobalOptions();
|
|
376
395
|
await contractUltraHonk(bytecodePath, vkPath, crsPath, outputPath);
|
|
377
396
|
});
|
|
378
397
|
|
|
@@ -417,7 +436,6 @@ program
|
|
|
417
436
|
.option('-o, --output-path <path>', 'Specify the proof output path', './proofs/proof')
|
|
418
437
|
.action(async ({ bytecodePath, witnessPath, outputPath }) => {
|
|
419
438
|
const { crsPath } = handleGlobalOptions();
|
|
420
|
-
debug(`Creating UltraHonk proof bytecode=${bytecodePath}`);
|
|
421
439
|
await proveUltraHonk(bytecodePath, witnessPath, crsPath, outputPath);
|
|
422
440
|
});
|
|
423
441
|
|
|
@@ -427,8 +445,8 @@ program
|
|
|
427
445
|
.option('-b, --bytecode-path <path>', 'Specify the bytecode path', './target/program.json')
|
|
428
446
|
.option('-w, --witness-path <path>', 'Specify the witness path', './target/witness.gz')
|
|
429
447
|
.option('-o, --output-path <path>', 'Specify the proof output path', './proofs/proof')
|
|
430
|
-
.action(async ({ bytecodePath, witnessPath, outputPath }) => {
|
|
431
|
-
|
|
448
|
+
.action(async ({ bytecodePath, witnessPath, outputPath, crsPath }) => {
|
|
449
|
+
handleGlobalOptions();
|
|
432
450
|
await proveUltraHonk(bytecodePath, witnessPath, crsPath, outputPath, { keccak: true });
|
|
433
451
|
});
|
|
434
452
|
|
|
@@ -439,8 +457,8 @@ program
|
|
|
439
457
|
.option('-r, --recursive', 'Create a SNARK friendly proof', false)
|
|
440
458
|
.option('-w, --witness-path <path>', 'Specify the witness path', './target/witness.gz')
|
|
441
459
|
.option('-o, --output-path <path>', 'Specify the proof output path', './proofs/proof')
|
|
442
|
-
.action(async ({ bytecodePath, witnessPath, outputPath }) => {
|
|
443
|
-
|
|
460
|
+
.action(async ({ bytecodePath, recursive, witnessPath, outputPath, crsPath }) => {
|
|
461
|
+
handleGlobalOptions();
|
|
444
462
|
await proveUltraHonk(bytecodePath, witnessPath, crsPath, outputPath, { starknet: true });
|
|
445
463
|
});
|
|
446
464
|
|
|
@@ -451,7 +469,6 @@ program
|
|
|
451
469
|
.requiredOption('-o, --output-path <path>', 'Specify the path to write the key')
|
|
452
470
|
.action(async ({ bytecodePath, outputPath }) => {
|
|
453
471
|
const { crsPath } = handleGlobalOptions();
|
|
454
|
-
debug(`Writing verification key to ${outputPath}`);
|
|
455
472
|
await writeVkUltraHonk(bytecodePath, crsPath, outputPath);
|
|
456
473
|
});
|
|
457
474
|
|
|
@@ -460,8 +477,8 @@ program
|
|
|
460
477
|
.description('Output verification key.')
|
|
461
478
|
.option('-b, --bytecode-path <path>', 'Specify the bytecode path', './target/program.json')
|
|
462
479
|
.requiredOption('-o, --output-path <path>', 'Specify the path to write the key')
|
|
463
|
-
.action(async ({ bytecodePath, outputPath }) => {
|
|
464
|
-
|
|
480
|
+
.action(async ({ bytecodePath, outputPath, crsPath }) => {
|
|
481
|
+
handleGlobalOptions();
|
|
465
482
|
await writeVkUltraHonk(bytecodePath, crsPath, outputPath, { keccak: true });
|
|
466
483
|
});
|
|
467
484
|
|
|
@@ -471,8 +488,8 @@ program
|
|
|
471
488
|
.option('-b, --bytecode-path <path>', 'Specify the bytecode path', './target/program.json')
|
|
472
489
|
.option('-r, --recursive', 'Create a SNARK friendly proof', false)
|
|
473
490
|
.requiredOption('-o, --output-path <path>', 'Specify the path to write the key')
|
|
474
|
-
.action(async ({ bytecodePath, outputPath }) => {
|
|
475
|
-
|
|
491
|
+
.action(async ({ bytecodePath, recursive, outputPath, crsPath }) => {
|
|
492
|
+
handleGlobalOptions();
|
|
476
493
|
await writeVkUltraHonk(bytecodePath, crsPath, outputPath, { starknet: true });
|
|
477
494
|
});
|
|
478
495
|
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Much the same as Array.map, only it takes an async fn as an element handler, and ensures that each element handler
|
|
3
|
-
* is executed sequentially.
|
|
4
|
-
* The pattern of `await Promise.all(arr.map(async e => { ... }))` only works if one's happy with each element handler
|
|
5
|
-
* being run concurrently.
|
|
6
|
-
* If one required sequential execution of async fn's, the only alternative was regular loops with mutable state vars.
|
|
7
|
-
* The equivalent with asyncMap: `await asyncMap(arr, async e => { ... })`.
|
|
8
|
-
*/
|
|
9
|
-
export declare function asyncMap<T, U>(arr: T[], fn: (e: T, i: number) => Promise<U>): Promise<U[]>;
|
|
10
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/async_map/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,wBAAsB,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC,CAMhG"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Much the same as Array.map, only it takes an async fn as an element handler, and ensures that each element handler
|
|
3
|
-
* is executed sequentially.
|
|
4
|
-
* The pattern of `await Promise.all(arr.map(async e => { ... }))` only works if one's happy with each element handler
|
|
5
|
-
* being run concurrently.
|
|
6
|
-
* If one required sequential execution of async fn's, the only alternative was regular loops with mutable state vars.
|
|
7
|
-
* The equivalent with asyncMap: `await asyncMap(arr, async e => { ... })`.
|
|
8
|
-
*/
|
|
9
|
-
export async function asyncMap(arr, fn) {
|
|
10
|
-
const results = [];
|
|
11
|
-
for (let i = 0; i < arr.length; ++i) {
|
|
12
|
-
results.push(await fn(arr[i], i));
|
|
13
|
-
}
|
|
14
|
-
return results;
|
|
15
|
-
}
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXN5bmNfbWFwL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7O0dBT0c7QUFDSCxNQUFNLENBQUMsS0FBSyxVQUFVLFFBQVEsQ0FBTyxHQUFRLEVBQUUsRUFBbUM7SUFDaEYsTUFBTSxPQUFPLEdBQVEsRUFBRSxDQUFDO0lBQ3hCLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxHQUFHLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUM7UUFDcEMsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBQ0QsT0FBTyxPQUFPLENBQUM7QUFDakIsQ0FBQyJ9
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
import { BackendOptions, Barretenberg, CircuitOptions } from './index.js';
|
|
2
|
-
import { ProofData } from '../proof/index.js';
|
|
3
|
-
export declare class AztecClientBackendError extends Error {
|
|
4
|
-
constructor(message: string);
|
|
5
|
-
}
|
|
6
|
-
/**
|
|
7
|
-
* Options for the UltraHonkBackend.
|
|
8
|
-
*/
|
|
9
|
-
export type UltraHonkBackendOptions = {
|
|
10
|
-
/** Selecting this option will use the keccak hash function instead of poseidon
|
|
11
|
-
* when generating challenges in the proof.
|
|
12
|
-
* Use this when you want to verify the created proof on an EVM chain.
|
|
13
|
-
*/
|
|
14
|
-
keccak?: boolean;
|
|
15
|
-
/** Selecting this option will use the keccak hash function instead of poseidon
|
|
16
|
-
* when generating challenges in the proof.
|
|
17
|
-
* Use this when you want to verify the created proof on an EVM chain.
|
|
18
|
-
*/
|
|
19
|
-
keccakZK?: boolean;
|
|
20
|
-
/** Selecting this option will use the poseidon/stark252 hash function instead of poseidon
|
|
21
|
-
* when generating challenges in the proof.
|
|
22
|
-
* Use this when you want to verify the created proof on an Starknet chain with Garaga.
|
|
23
|
-
*/
|
|
24
|
-
starknet?: boolean;
|
|
25
|
-
/** Selecting this option will use the poseidon/stark252 hash function instead of poseidon
|
|
26
|
-
* when generating challenges in the proof.
|
|
27
|
-
* Use this when you want to verify the created proof on an Starknet chain with Garaga.
|
|
28
|
-
*/
|
|
29
|
-
starknetZK?: boolean;
|
|
30
|
-
};
|
|
31
|
-
export declare class UltraHonkBackend {
|
|
32
|
-
protected backendOptions: BackendOptions;
|
|
33
|
-
protected circuitOptions: CircuitOptions;
|
|
34
|
-
protected api: Barretenberg;
|
|
35
|
-
protected acirUncompressedBytecode: Uint8Array;
|
|
36
|
-
constructor(acirBytecode: string, backendOptions?: BackendOptions, circuitOptions?: CircuitOptions);
|
|
37
|
-
/** @ignore */
|
|
38
|
-
private instantiate;
|
|
39
|
-
generateProof(compressedWitness: Uint8Array, options?: UltraHonkBackendOptions): Promise<ProofData>;
|
|
40
|
-
verifyProof(proofData: ProofData, options?: UltraHonkBackendOptions): Promise<boolean>;
|
|
41
|
-
getVerificationKey(options?: UltraHonkBackendOptions): Promise<Uint8Array>;
|
|
42
|
-
/** @description Returns a solidity verifier */
|
|
43
|
-
getSolidityVerifier(vk?: Uint8Array): Promise<string>;
|
|
44
|
-
generateRecursiveProofArtifacts(_proof: Uint8Array, _numOfPublicInputs: number): Promise<{
|
|
45
|
-
proofAsFields: string[];
|
|
46
|
-
vkAsFields: string[];
|
|
47
|
-
vkHash: string;
|
|
48
|
-
}>;
|
|
49
|
-
destroy(): Promise<void>;
|
|
50
|
-
}
|
|
51
|
-
export declare class AztecClientBackend {
|
|
52
|
-
protected acirBuf: Uint8Array[];
|
|
53
|
-
protected options: BackendOptions;
|
|
54
|
-
protected api: Barretenberg;
|
|
55
|
-
constructor(acirBuf: Uint8Array[], options?: BackendOptions);
|
|
56
|
-
/** @ignore */
|
|
57
|
-
private instantiate;
|
|
58
|
-
prove(witnessBuf: Uint8Array[], vksBuf?: Uint8Array[]): Promise<[Uint8Array, Uint8Array]>;
|
|
59
|
-
verify(proof: Uint8Array, vk: Uint8Array): Promise<boolean>;
|
|
60
|
-
gates(): Promise<number[]>;
|
|
61
|
-
destroy(): Promise<void>;
|
|
62
|
-
}
|
|
63
|
-
//# sourceMappingURL=backend.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"backend.d.ts","sourceRoot":"","sources":["../../../src/barretenberg/backend.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAE1E,OAAO,EAGL,SAAS,EAIV,MAAM,mBAAmB,CAAC;AAI3B,qBAAa,uBAAwB,SAAQ,KAAK;gBACpC,OAAO,EAAE,MAAM;CAG5B;AAmBD;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAAG;IACpC;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,CAAC;AAEF,qBAAa,gBAAgB;IAWzB,SAAS,CAAC,cAAc,EAAE,cAAc;IACxC,SAAS,CAAC,cAAc,EAAE,cAAc;IAN1C,SAAS,CAAC,GAAG,EAAG,YAAY,CAAC;IAC7B,SAAS,CAAC,wBAAwB,EAAE,UAAU,CAAC;gBAG7C,YAAY,EAAE,MAAM,EACV,cAAc,GAAE,cAA+B,EAC/C,cAAc,GAAE,cAAqC;IAIjE,cAAc;YACA,WAAW;IAYnB,aAAa,CAAC,iBAAiB,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,SAAS,CAAC;IAuCnG,WAAW,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,OAAO,CAAC;IA4BtF,kBAAkB,CAAC,OAAO,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,UAAU,CAAC;IAahF,+CAA+C;IACzC,mBAAmB,CAAC,EAAE,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC;IAOrD,+BAA+B,CAEnC,MAAM,EAAE,UAAU,EAElB,kBAAkB,EAAE,MAAM,GACzB,OAAO,CAAC;QAAE,aAAa,EAAE,MAAM,EAAE,CAAC;QAAC,UAAU,EAAE,MAAM,EAAE,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IA0BvE,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAM/B;AAmCD,qBAAa,kBAAkB;IAS3B,SAAS,CAAC,OAAO,EAAE,UAAU,EAAE;IAC/B,SAAS,CAAC,OAAO,EAAE,cAAc;IAJnC,SAAS,CAAC,GAAG,EAAG,YAAY,CAAC;gBAGjB,OAAO,EAAE,UAAU,EAAE,EACrB,OAAO,GAAE,cAA+B;IAGpD,cAAc;YACA,WAAW;IAQnB,KAAK,CAAC,UAAU,EAAE,UAAU,EAAE,EAAE,MAAM,GAAE,UAAU,EAAO,GAAG,OAAO,CAAC,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IAkB7F,MAAM,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC;IAK3D,KAAK,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAQ1B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAM/B"}
|
|
@@ -1,236 +0,0 @@
|
|
|
1
|
-
import { Barretenberg } from './index.js';
|
|
2
|
-
import { RawBuffer } from '../types/raw_buffer.js';
|
|
3
|
-
import { deflattenFields, flattenFieldsAsArray, reconstructHonkProof, splitHonkProof, PAIRING_POINTS_SIZE, } from '../proof/index.js';
|
|
4
|
-
import { Encoder } from 'msgpackr/pack';
|
|
5
|
-
import { ungzip } from 'pako';
|
|
6
|
-
export class AztecClientBackendError extends Error {
|
|
7
|
-
constructor(message) {
|
|
8
|
-
super(message);
|
|
9
|
-
}
|
|
10
|
-
}
|
|
11
|
-
// Utility for parsing gate counts from buffer
|
|
12
|
-
// TODO: Where should this logic live? Should go away with move to msgpack.
|
|
13
|
-
function parseBigEndianU32Array(buffer) {
|
|
14
|
-
const dv = new DataView(buffer.buffer, buffer.byteOffset, buffer.byteLength);
|
|
15
|
-
let offset = 0;
|
|
16
|
-
const count = buffer.byteLength >>> 2; // default is entire buffer length / 4
|
|
17
|
-
const out = new Array(count);
|
|
18
|
-
for (let i = 0; i < count; i++) {
|
|
19
|
-
out[i] = dv.getUint32(offset, false);
|
|
20
|
-
offset += 4;
|
|
21
|
-
}
|
|
22
|
-
return out;
|
|
23
|
-
}
|
|
24
|
-
export class UltraHonkBackend {
|
|
25
|
-
constructor(acirBytecode, backendOptions = { threads: 1 }, circuitOptions = { recursive: false }) {
|
|
26
|
-
this.backendOptions = backendOptions;
|
|
27
|
-
this.circuitOptions = circuitOptions;
|
|
28
|
-
this.acirUncompressedBytecode = acirToUint8Array(acirBytecode);
|
|
29
|
-
}
|
|
30
|
-
/** @ignore */
|
|
31
|
-
async instantiate() {
|
|
32
|
-
if (!this.api) {
|
|
33
|
-
const api = await Barretenberg.new(this.backendOptions);
|
|
34
|
-
const honkRecursion = true;
|
|
35
|
-
await api.acirInitSRS(this.acirUncompressedBytecode, this.circuitOptions.recursive, honkRecursion);
|
|
36
|
-
// We don't init a proving key here in the Honk API
|
|
37
|
-
// await api.acirInitProvingKey(this.acirComposer, this.acirUncompressedBytecode);
|
|
38
|
-
this.api = api;
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
async generateProof(compressedWitness, options) {
|
|
42
|
-
await this.instantiate();
|
|
43
|
-
const proveUltraHonk = options?.keccak
|
|
44
|
-
? this.api.acirProveUltraKeccakHonk.bind(this.api)
|
|
45
|
-
: options?.keccakZK
|
|
46
|
-
? this.api.acirProveUltraKeccakZkHonk.bind(this.api)
|
|
47
|
-
: options?.starknet
|
|
48
|
-
? this.api.acirProveUltraStarknetHonk.bind(this.api)
|
|
49
|
-
: options?.starknetZK
|
|
50
|
-
? this.api.acirProveUltraStarknetZkHonk.bind(this.api)
|
|
51
|
-
: this.api.acirProveUltraHonk.bind(this.api);
|
|
52
|
-
const proofWithPublicInputs = await proveUltraHonk(this.acirUncompressedBytecode, ungzip(compressedWitness));
|
|
53
|
-
// Write VK to get the number of public inputs
|
|
54
|
-
const writeVKUltraHonk = options?.keccak
|
|
55
|
-
? this.api.acirWriteVkUltraKeccakHonk.bind(this.api)
|
|
56
|
-
: options?.keccakZK
|
|
57
|
-
? this.api.acirWriteVkUltraKeccakZkHonk.bind(this.api)
|
|
58
|
-
: options?.starknet
|
|
59
|
-
? this.api.acirWriteVkUltraStarknetHonk.bind(this.api)
|
|
60
|
-
: options?.starknetZK
|
|
61
|
-
? this.api.acirWriteVkUltraStarknetZkHonk.bind(this.api)
|
|
62
|
-
: this.api.acirWriteVkUltraHonk.bind(this.api);
|
|
63
|
-
const vk = await writeVKUltraHonk(this.acirUncompressedBytecode);
|
|
64
|
-
const vkAsFields = await this.api.acirVkAsFieldsUltraHonk(new RawBuffer(vk));
|
|
65
|
-
// Item at index 1 in VK is the number of public inputs
|
|
66
|
-
const publicInputsSizeIndex = 1; // index into VK for numPublicInputs
|
|
67
|
-
const numPublicInputs = Number(vkAsFields[publicInputsSizeIndex].toString()) - PAIRING_POINTS_SIZE;
|
|
68
|
-
const { proof, publicInputs: publicInputsBytes } = splitHonkProof(proofWithPublicInputs, numPublicInputs);
|
|
69
|
-
const publicInputs = deflattenFields(publicInputsBytes);
|
|
70
|
-
return { proof, publicInputs };
|
|
71
|
-
}
|
|
72
|
-
async verifyProof(proofData, options) {
|
|
73
|
-
await this.instantiate();
|
|
74
|
-
const proof = reconstructHonkProof(flattenFieldsAsArray(proofData.publicInputs), proofData.proof);
|
|
75
|
-
const writeVkUltraHonk = options?.keccak
|
|
76
|
-
? this.api.acirWriteVkUltraKeccakHonk.bind(this.api)
|
|
77
|
-
: options?.keccakZK
|
|
78
|
-
? this.api.acirWriteVkUltraKeccakZkHonk.bind(this.api)
|
|
79
|
-
: options?.starknet
|
|
80
|
-
? this.api.acirWriteVkUltraStarknetHonk.bind(this.api)
|
|
81
|
-
: options?.starknetZK
|
|
82
|
-
? this.api.acirWriteVkUltraStarknetZkHonk.bind(this.api)
|
|
83
|
-
: this.api.acirWriteVkUltraHonk.bind(this.api);
|
|
84
|
-
const verifyUltraHonk = options?.keccak
|
|
85
|
-
? this.api.acirVerifyUltraKeccakHonk.bind(this.api)
|
|
86
|
-
: options?.keccakZK
|
|
87
|
-
? this.api.acirVerifyUltraKeccakZkHonk.bind(this.api)
|
|
88
|
-
: options?.starknet
|
|
89
|
-
? this.api.acirVerifyUltraStarknetHonk.bind(this.api)
|
|
90
|
-
: options?.starknetZK
|
|
91
|
-
? this.api.acirVerifyUltraStarknetZkHonk.bind(this.api)
|
|
92
|
-
: this.api.acirVerifyUltraHonk.bind(this.api);
|
|
93
|
-
const vkBuf = await writeVkUltraHonk(this.acirUncompressedBytecode);
|
|
94
|
-
return await verifyUltraHonk(proof, new RawBuffer(vkBuf));
|
|
95
|
-
}
|
|
96
|
-
async getVerificationKey(options) {
|
|
97
|
-
await this.instantiate();
|
|
98
|
-
return options?.keccak
|
|
99
|
-
? await this.api.acirWriteVkUltraKeccakHonk(this.acirUncompressedBytecode)
|
|
100
|
-
: options?.keccakZK
|
|
101
|
-
? await this.api.acirWriteVkUltraKeccakZkHonk(this.acirUncompressedBytecode)
|
|
102
|
-
: options?.starknet
|
|
103
|
-
? await this.api.acirWriteVkUltraStarknetHonk(this.acirUncompressedBytecode)
|
|
104
|
-
: options?.starknetZK
|
|
105
|
-
? await this.api.acirWriteVkUltraStarknetZkHonk(this.acirUncompressedBytecode)
|
|
106
|
-
: await this.api.acirWriteVkUltraHonk(this.acirUncompressedBytecode);
|
|
107
|
-
}
|
|
108
|
-
/** @description Returns a solidity verifier */
|
|
109
|
-
async getSolidityVerifier(vk) {
|
|
110
|
-
await this.instantiate();
|
|
111
|
-
const vkBuf = vk ?? (await this.api.acirWriteVkUltraKeccakHonk(this.acirUncompressedBytecode));
|
|
112
|
-
return await this.api.acirHonkSolidityVerifier(this.acirUncompressedBytecode, new RawBuffer(vkBuf));
|
|
113
|
-
}
|
|
114
|
-
// TODO(https://github.com/noir-lang/noir/issues/5661): Update this to handle Honk recursive aggregation in the browser once it is ready in the backend itself
|
|
115
|
-
async generateRecursiveProofArtifacts(
|
|
116
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
117
|
-
_proof,
|
|
118
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
119
|
-
_numOfPublicInputs) {
|
|
120
|
-
await this.instantiate();
|
|
121
|
-
// TODO(https://github.com/noir-lang/noir/issues/5661): This needs to be updated to handle recursive aggregation.
|
|
122
|
-
// There is still a proofAsFields method but we could consider getting rid of it as the proof itself
|
|
123
|
-
// is a list of field elements.
|
|
124
|
-
// UltraHonk also does not have public inputs directly prepended to the proof and they are still instead
|
|
125
|
-
// inserted at an offset.
|
|
126
|
-
// const proof = reconstructProofWithPublicInputs(proofData);
|
|
127
|
-
// const proofAsFields = (await this.api.acirProofAsFieldsUltraHonk(proof)).slice(numOfPublicInputs);
|
|
128
|
-
// TODO: perhaps we should put this in the init function. Need to benchmark
|
|
129
|
-
// TODO how long it takes.
|
|
130
|
-
const vkBuf = await this.api.acirWriteVkUltraHonk(this.acirUncompressedBytecode);
|
|
131
|
-
const vk = await this.api.acirVkAsFieldsUltraHonk(vkBuf);
|
|
132
|
-
return {
|
|
133
|
-
// TODO(https://github.com/noir-lang/noir/issues/5661)
|
|
134
|
-
proofAsFields: [],
|
|
135
|
-
vkAsFields: vk.map(vk => vk.toString()),
|
|
136
|
-
// We use an empty string for the vk hash here as it is unneeded as part of the recursive artifacts
|
|
137
|
-
// The user can be expected to hash the vk inside their circuit to check whether the vk is the circuit
|
|
138
|
-
// they expect
|
|
139
|
-
vkHash: '',
|
|
140
|
-
};
|
|
141
|
-
}
|
|
142
|
-
async destroy() {
|
|
143
|
-
if (!this.api) {
|
|
144
|
-
return;
|
|
145
|
-
}
|
|
146
|
-
await this.api.destroy();
|
|
147
|
-
}
|
|
148
|
-
}
|
|
149
|
-
function serializeAztecClientExecutionSteps(acirBuf, witnessBuf, vksBuf) {
|
|
150
|
-
const steps = [];
|
|
151
|
-
for (let i = 0; i < acirBuf.length; i++) {
|
|
152
|
-
const bytecode = acirBuf[i];
|
|
153
|
-
// Witnesses are not provided at all for gates info.
|
|
154
|
-
const witness = witnessBuf[i] || Buffer.from([]);
|
|
155
|
-
// VKs are optional for proving (deprecated feature) or not provided at all for gates info.
|
|
156
|
-
const vk = vksBuf[i] || Buffer.from([]);
|
|
157
|
-
const functionName = `unknown_wasm_${i}`;
|
|
158
|
-
steps.push({
|
|
159
|
-
bytecode,
|
|
160
|
-
witness,
|
|
161
|
-
vk,
|
|
162
|
-
functionName,
|
|
163
|
-
});
|
|
164
|
-
}
|
|
165
|
-
return new Encoder({ useRecords: false }).pack(steps);
|
|
166
|
-
}
|
|
167
|
-
export class AztecClientBackend {
|
|
168
|
-
constructor(acirBuf, options = { threads: 1 }) {
|
|
169
|
-
this.acirBuf = acirBuf;
|
|
170
|
-
this.options = options;
|
|
171
|
-
}
|
|
172
|
-
/** @ignore */
|
|
173
|
-
async instantiate() {
|
|
174
|
-
if (!this.api) {
|
|
175
|
-
const api = await Barretenberg.new(this.options);
|
|
176
|
-
await api.initSRSClientIVC();
|
|
177
|
-
this.api = api;
|
|
178
|
-
}
|
|
179
|
-
}
|
|
180
|
-
async prove(witnessBuf, vksBuf = []) {
|
|
181
|
-
if (vksBuf.length !== 0 && this.acirBuf.length !== witnessBuf.length) {
|
|
182
|
-
throw new AztecClientBackendError('Witness and bytecodes must have the same stack depth!');
|
|
183
|
-
}
|
|
184
|
-
if (vksBuf.length !== 0 && vksBuf.length !== witnessBuf.length) {
|
|
185
|
-
// NOTE: we allow 0 as an explicit 'I have no VKs'. This is a deprecated feature.
|
|
186
|
-
throw new AztecClientBackendError('Witness and VKs must have the same stack depth!');
|
|
187
|
-
}
|
|
188
|
-
await this.instantiate();
|
|
189
|
-
const ivcInputsBuf = serializeAztecClientExecutionSteps(this.acirBuf, witnessBuf, vksBuf);
|
|
190
|
-
const proofAndVk = await this.api.acirProveAztecClient(ivcInputsBuf);
|
|
191
|
-
const [proof, vk] = proofAndVk;
|
|
192
|
-
if (!(await this.verify(proof, vk))) {
|
|
193
|
-
throw new AztecClientBackendError('Failed to verify the private (ClientIVC) transaction proof!');
|
|
194
|
-
}
|
|
195
|
-
return proofAndVk;
|
|
196
|
-
}
|
|
197
|
-
async verify(proof, vk) {
|
|
198
|
-
await this.instantiate();
|
|
199
|
-
return this.api.acirVerifyAztecClient(proof, vk);
|
|
200
|
-
}
|
|
201
|
-
async gates() {
|
|
202
|
-
// call function on API
|
|
203
|
-
await this.instantiate();
|
|
204
|
-
const ivcInputsBuf = serializeAztecClientExecutionSteps(this.acirBuf, [], []);
|
|
205
|
-
const resultBuffer = await this.api.acirGatesAztecClient(ivcInputsBuf);
|
|
206
|
-
return parseBigEndianU32Array(resultBuffer);
|
|
207
|
-
}
|
|
208
|
-
async destroy() {
|
|
209
|
-
if (!this.api) {
|
|
210
|
-
return;
|
|
211
|
-
}
|
|
212
|
-
await this.api.destroy();
|
|
213
|
-
}
|
|
214
|
-
}
|
|
215
|
-
// Converts bytecode from a base64 string to a Uint8Array
|
|
216
|
-
function acirToUint8Array(base64EncodedBytecode) {
|
|
217
|
-
const compressedByteCode = base64Decode(base64EncodedBytecode);
|
|
218
|
-
return ungzip(compressedByteCode);
|
|
219
|
-
}
|
|
220
|
-
// Since this is a simple function, we can use feature detection to
|
|
221
|
-
// see if we are in the nodeJs environment or the browser environment.
|
|
222
|
-
function base64Decode(input) {
|
|
223
|
-
if (typeof Buffer !== 'undefined') {
|
|
224
|
-
// Node.js environment
|
|
225
|
-
const b = Buffer.from(input, 'base64');
|
|
226
|
-
return new Uint8Array(b.buffer, b.byteOffset, b.byteLength);
|
|
227
|
-
}
|
|
228
|
-
else if (typeof atob === 'function') {
|
|
229
|
-
// Browser environment
|
|
230
|
-
return Uint8Array.from(atob(input), c => c.charCodeAt(0));
|
|
231
|
-
}
|
|
232
|
-
else {
|
|
233
|
-
throw new Error('No implementation found for base64 decoding.');
|
|
234
|
-
}
|
|
235
|
-
}
|
|
236
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFja2VuZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9iYXJyZXRlbmJlcmcvYmFja2VuZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWtCLFlBQVksRUFBa0IsTUFBTSxZQUFZLENBQUM7QUFDMUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ25ELE9BQU8sRUFDTCxlQUFlLEVBQ2Ysb0JBQW9CLEVBRXBCLG9CQUFvQixFQUNwQixjQUFjLEVBQ2QsbUJBQW1CLEdBQ3BCLE1BQU0sbUJBQW1CLENBQUM7QUFDM0IsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4QyxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTlCLE1BQU0sT0FBTyx1QkFBd0IsU0FBUSxLQUFLO0lBQ2hELFlBQVksT0FBZTtRQUN6QixLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDakIsQ0FBQztDQUNGO0FBRUQsOENBQThDO0FBQzlDLDJFQUEyRTtBQUMzRSxTQUFTLHNCQUFzQixDQUFDLE1BQWtCO0lBQ2hELE1BQU0sRUFBRSxHQUFHLElBQUksUUFBUSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLFVBQVUsRUFBRSxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7SUFFN0UsSUFBSSxNQUFNLEdBQUcsQ0FBQyxDQUFDO0lBQ2YsTUFBTSxLQUFLLEdBQUcsTUFBTSxDQUFDLFVBQVUsS0FBSyxDQUFDLENBQUMsQ0FBQyxzQ0FBc0M7SUFFN0UsTUFBTSxHQUFHLEdBQWEsSUFBSSxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkMsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEtBQUssRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO1FBQy9CLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsU0FBUyxD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
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
import { BarretenbergApi, BarretenbergApiSync } from '../barretenberg_api/index.js';
|
|
2
|
-
import { BarretenbergWasmMain, BarretenbergWasmMainWorker } from '../barretenberg_wasm/barretenberg_wasm_main/index.js';
|
|
3
|
-
export { BarretenbergVerifier } from './verifier.js';
|
|
4
|
-
export { UltraHonkBackend, AztecClientBackend } from './backend.js';
|
|
5
|
-
export type BackendOptions = {
|
|
6
|
-
/** @description Number of threads to run the backend worker on */
|
|
7
|
-
threads?: number;
|
|
8
|
-
/** @description Initial and Maximum memory to be alloted to the backend worker */
|
|
9
|
-
memory?: {
|
|
10
|
-
initial?: number;
|
|
11
|
-
maximum?: number;
|
|
12
|
-
};
|
|
13
|
-
/** @description Path to download CRS files */
|
|
14
|
-
crsPath?: string;
|
|
15
|
-
/** @description Path to download WASM files */
|
|
16
|
-
wasmPath?: string;
|
|
17
|
-
/** @description Logging function */
|
|
18
|
-
logger?: (msg: string) => void;
|
|
19
|
-
};
|
|
20
|
-
export type CircuitOptions = {
|
|
21
|
-
/** @description Whether to produce SNARK friendly proofs */
|
|
22
|
-
recursive: boolean;
|
|
23
|
-
};
|
|
24
|
-
/**
|
|
25
|
-
* The main class library consumers interact with.
|
|
26
|
-
* It extends the generated api, and provides a static constructor "new" to compose components.
|
|
27
|
-
*/
|
|
28
|
-
export declare class Barretenberg extends BarretenbergApi {
|
|
29
|
-
private worker;
|
|
30
|
-
private options;
|
|
31
|
-
private constructor();
|
|
32
|
-
/**
|
|
33
|
-
* Constructs an instance of Barretenberg.
|
|
34
|
-
* Launches it within a worker. This is necessary as it blocks waiting on child threads to complete,
|
|
35
|
-
* and blocking the main thread in the browser is not allowed.
|
|
36
|
-
* It threads > 1 (defaults to hardware availability), child threads will be created on their own workers.
|
|
37
|
-
*/
|
|
38
|
-
static new(options?: BackendOptions): Promise<Barretenberg>;
|
|
39
|
-
getNumThreads(): Promise<number>;
|
|
40
|
-
initSRSForCircuitSize(circuitSize: number): Promise<void>;
|
|
41
|
-
initSRSClientIVC(): Promise<void>;
|
|
42
|
-
acirInitSRS(bytecode: Uint8Array, recursive: boolean, honkRecursion: boolean): Promise<void>;
|
|
43
|
-
destroy(): Promise<void>;
|
|
44
|
-
getWasm(): BarretenbergWasmMainWorker;
|
|
45
|
-
}
|
|
46
|
-
export declare class BarretenbergSync extends BarretenbergApiSync {
|
|
47
|
-
private constructor();
|
|
48
|
-
private static new;
|
|
49
|
-
static initSingleton(wasmPath?: string, logger?: (msg: string) => void): Promise<BarretenbergSync>;
|
|
50
|
-
static getSingleton(): BarretenbergSync;
|
|
51
|
-
getWasm(): BarretenbergWasmMain;
|
|
52
|
-
}
|
|
53
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/barretenberg/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAEpF,OAAO,EAAE,oBAAoB,EAAE,0BAA0B,EAAE,MAAM,sDAAsD,CAAC;AAOxH,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAEpE,MAAM,MAAM,cAAc,GAAG;IAC3B,kEAAkE;IAClE,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,kFAAkF;IAClF,MAAM,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAEhD,8CAA8C;IAC9C,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,oCAAoC;IACpC,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,4DAA4D;IAC5D,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF;;;GAGG;AACH,qBAAa,YAAa,SAAQ,eAAe;IAI7C,OAAO,CAAC,MAAM;IAHhB,OAAO,CAAC,OAAO,CAAiB;IAEhC,OAAO;IASP;;;;;OAKG;WACU,GAAG,CAAC,OAAO,GAAE,cAAmB;IAcvC,aAAa;IAIb,qBAAqB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAOzD,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IAWjC,WAAW,CAAC,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAM5F,OAAO;IAKb,OAAO;CAGR;AAKD,qBAAa,gBAAiB,SAAQ,mBAAmB;IACvD,OAAO;mBAIc,GAAG;WAOX,aAAa,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,MAAM,GAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAwC;IAS/G,MAAM,CAAC,YAAY;IAOnB,OAAO;CAGR"}
|