@clear-capabilities/agentic-security-scanner 0.183.1 → 0.185.0

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 (85) hide show
  1. package/CHANGELOG.md +29 -0
  2. package/bin/agentic-security.js +88 -0
  3. package/dist/{2a8456e0800aeee871b6.json → 0b301d45b231f144a1b4.json} +27 -9
  4. package/dist/1128.index.js +908 -0
  5. package/dist/1336.index.js +261 -112
  6. package/dist/1665.index.js +828 -0
  7. package/dist/2923.index.js +17 -9
  8. package/dist/9382.index.js +23 -2
  9. package/dist/9579.index.js +11 -4
  10. package/dist/agentic-security.mjs +15 -15
  11. package/dist/agentic-security.mjs.sha256 +1 -1
  12. package/dist/frontend/src/shell.js +12 -2
  13. package/package.json +27 -9
  14. package/src/context-intelligence/controls.js +15 -0
  15. package/src/context-intelligence/reachability.js +8 -2
  16. package/src/dataflow/CLAUDE.md +43 -1
  17. package/src/dataflow/backward.js +42 -7
  18. package/src/dataflow/cross-service-taint.js +83 -1
  19. package/src/dataflow/demand-query.js +929 -0
  20. package/src/dataflow/dep-fingerprint.js +718 -0
  21. package/src/dataflow/engine.js +48 -6
  22. package/src/dataflow/ifds-precise.js +22 -0
  23. package/src/dataflow/incremental-replay.js +118 -0
  24. package/src/dataflow/incremental-session.js +257 -0
  25. package/src/dataflow/incremental.js +237 -35
  26. package/src/dataflow/index.js +25 -94
  27. package/src/dataflow/summaries.js +72 -6
  28. package/src/dataflow/tabulation.js +80 -24
  29. package/src/discovery/hunter.js +6 -2
  30. package/src/discovery/index.js +5 -2
  31. package/src/engine.js +63 -3
  32. package/src/graph/CLAUDE.md +31 -0
  33. package/src/graph/adapters/artifact.js +81 -0
  34. package/src/graph/adapters/crossrepo.js +75 -0
  35. package/src/graph/adapters/dataflow.js +76 -0
  36. package/src/graph/adapters/provenance.js +92 -0
  37. package/src/graph/adapters/semantic.js +89 -0
  38. package/src/graph/crosswalk-builders.js +152 -0
  39. package/src/graph/crosswalk.js +146 -0
  40. package/src/graph/index.js +15 -0
  41. package/src/graph/observation.js +57 -0
  42. package/src/graph/refs.js +105 -0
  43. package/src/graph/registry.js +129 -0
  44. package/src/graph/relations.js +81 -0
  45. package/src/graph/scc.js +241 -0
  46. package/src/graph/view.js +254 -0
  47. package/src/language/haskell-disclosure.js +13 -1
  48. package/src/lineage/CLAUDE.md +71 -8
  49. package/src/lineage/DESIGN_GRAPH_BUILDER.md +1 -1
  50. package/src/lineage/DESIGN_PATH_PROVENANCE.md +6 -0
  51. package/src/lineage/boundary-contract.js +273 -0
  52. package/src/lineage/completion.js +205 -0
  53. package/src/lineage/continuation.js +140 -0
  54. package/src/lineage/control-credit.js +313 -0
  55. package/src/lineage/correlation.js +199 -0
  56. package/src/lineage/coverage.js +8 -1
  57. package/src/lineage/cross-repo-link.js +22 -0
  58. package/src/lineage/cut-planner.js +548 -0
  59. package/src/lineage/driver.js +219 -66
  60. package/src/lineage/engine.js +166 -21
  61. package/src/lineage/export-json.js +5 -0
  62. package/src/lineage/graph-builder.js +84 -7
  63. package/src/lineage/haskell-view.js +59 -0
  64. package/src/lineage/index.js +3 -0
  65. package/src/lineage/nix-view.js +35 -0
  66. package/src/lineage/observation-adapters.js +17 -9
  67. package/src/lineage/owned-build.js +77 -0
  68. package/src/lineage/owned-worker-entry.js +22 -0
  69. package/src/lineage/owned-worker.js +95 -0
  70. package/src/lineage/path-evidence.js +123 -0
  71. package/src/lineage/path-predicates.js +529 -0
  72. package/src/lineage/path-query.js +189 -20
  73. package/src/lineage/path-store.js +191 -17
  74. package/src/lineage/scc-solver.js +186 -0
  75. package/src/lineage/smt-orchestrator.js +138 -0
  76. package/src/lineage/source-seeding.js +36 -2
  77. package/src/lineage/summaries.js +66 -4
  78. package/src/lineage/value-versions.js +130 -0
  79. package/src/lineage/witness-selection.js +95 -0
  80. package/src/pipeline/scan-health.js +19 -0
  81. package/src/posture/CLAUDE.md +13 -0
  82. package/src/posture/evidence-bundle.js +1 -1
  83. package/src/posture/witness-bundle.js +573 -0
  84. package/src/posture/witness-runtime.js +276 -0
  85. package/src/report/index.js +2 -0
@@ -967,6 +967,8 @@ function createApi(Z3, em) {
967
967
  case low_level_1.Z3_sort_kind.Z3_INT_SORT:
968
968
  case low_level_1.Z3_sort_kind.Z3_REAL_SORT:
969
969
  return new ArithSortImpl(ast);
970
+ case low_level_1.Z3_sort_kind.Z3_COMPLEX_SORT:
971
+ return new ComplexSortImpl(ast);
970
972
  case low_level_1.Z3_sort_kind.Z3_BV_SORT:
971
973
  return new BitVecSortImpl(ast);
972
974
  case low_level_1.Z3_sort_kind.Z3_FLOATING_POINT_SORT:
@@ -1008,6 +1010,8 @@ function createApi(Z3, em) {
1008
1010
  return new RatNumImpl(ast);
1009
1011
  }
1010
1012
  return new ArithImpl(ast);
1013
+ case low_level_1.Z3_sort_kind.Z3_COMPLEX_SORT:
1014
+ return new ComplexImpl(ast);
1011
1015
  case low_level_1.Z3_sort_kind.Z3_BV_SORT:
1012
1016
  if (kind === low_level_1.Z3_ast_kind.Z3_NUMERAL_AST) {
1013
1017
  return new BitVecNumImpl(ast);
@@ -1172,6 +1176,18 @@ function createApi(Z3, em) {
1172
1176
  function isReal(obj) {
1173
1177
  return isArith(obj) && isRealSort(obj.sort);
1174
1178
  }
1179
+ function isComplex(obj) {
1180
+ const result = obj instanceof ComplexImpl;
1181
+ if (result)
1182
+ _assertContext(obj);
1183
+ return result;
1184
+ }
1185
+ function isComplexSort(obj) {
1186
+ const result = obj instanceof ComplexSortImpl;
1187
+ if (result)
1188
+ _assertContext(obj);
1189
+ return result;
1190
+ }
1175
1191
  function isRealVal(obj) {
1176
1192
  const r = obj instanceof RatNumImpl;
1177
1193
  r && _assertContext(obj);
@@ -1458,6 +1474,28 @@ function createApi(Z3, em) {
1458
1474
  return new RatNumImpl(Z3.mk_numeral(contextPtr, value.toString(), Real.sort().ptr));
1459
1475
  },
1460
1476
  };
1477
+ const Complex = {
1478
+ sort: () => new ComplexSortImpl(check(Z3.mk_complex_sort(contextPtr))),
1479
+ const: (name) => new ComplexImpl(check(Z3.mk_const(contextPtr, _toSymbol(name), Complex.sort().ptr))),
1480
+ consts: (names) => (typeof names === 'string' ? names.split(' ') : names).map(name => Complex.const(name)),
1481
+ vector: (prefix, count) => {
1482
+ const result = [];
1483
+ for (let i = 0; i < count; i++)
1484
+ result.push(Complex.const(`${prefix}__${i}`));
1485
+ return result;
1486
+ },
1487
+ fresh: (prefix = 'z') => new ComplexImpl(check(Z3.mk_fresh_const(contextPtr, prefix, Complex.sort().ptr))),
1488
+ val: (real, imag = 0) => {
1489
+ for (const component of [real, imag]) {
1490
+ if (typeof component === 'object' && !isCoercibleRational(component))
1491
+ _assertContext(component);
1492
+ }
1493
+ const re = Real.sort().cast(real);
1494
+ const im = Real.sort().cast(imag);
1495
+ _assertContext(re, im);
1496
+ return new ComplexImpl(check(Z3.mk_complex(contextPtr, re.ast, im.ast)));
1497
+ },
1498
+ };
1461
1499
  const RCFNum = Object.assign((value) => new RCFNumImpl(value), {
1462
1500
  pi: () => new RCFNumImpl(check(Z3.rcf_mk_pi(contextPtr))),
1463
1501
  e: () => new RCFNumImpl(check(Z3.rcf_mk_e(contextPtr))),
@@ -2401,7 +2439,7 @@ function createApi(Z3, em) {
2401
2439
  const n = Z3.ast_vector_size(contextPtr, trailVec);
2402
2440
  return check(Z3.solver_get_levels(contextPtr, this.ptr, trailVec, n));
2403
2441
  }
2404
- async cube(vars, cutoff = 0xFFFFFFFF) {
2442
+ async cube(vars, cutoff = 0xffffffff) {
2405
2443
  const tempVars = vars ?? new AstVectorImpl();
2406
2444
  const result = await runAsync(() => check(Z3.solver_cube(contextPtr, this.ptr, tempVars.ptr, cutoff)));
2407
2445
  return new AstVectorImpl(result);
@@ -3038,7 +3076,8 @@ function createApi(Z3, em) {
3038
3076
  }
3039
3077
  class SortImpl extends AstImpl {
3040
3078
  get ast() {
3041
- return Z3.sort_to_ast(contextPtr, this.ptr);
3079
+ // Z3_sort_to_ast is a pointer cast in C, so skip the round trip into wasm.
3080
+ return this.ptr;
3042
3081
  }
3043
3082
  kind() {
3044
3083
  return Z3.get_sort_kind(contextPtr, this.ptr);
@@ -3049,7 +3088,7 @@ function createApi(Z3, em) {
3049
3088
  }
3050
3089
  cast(expr) {
3051
3090
  _assertContext(expr);
3052
- (0, utils_1.assert)(expr.sort.eqIdentity(expr.sort), 'Sort mismatch');
3091
+ (0, utils_1.assert)(this.eqIdentity(expr.sort), 'Sort mismatch');
3053
3092
  return expr;
3054
3093
  }
3055
3094
  name() {
@@ -3065,7 +3104,8 @@ function createApi(Z3, em) {
3065
3104
  }
3066
3105
  class FuncDeclImpl extends AstImpl {
3067
3106
  get ast() {
3068
- return Z3.func_decl_to_ast(contextPtr, this.ptr);
3107
+ // Z3_func_decl_to_ast is a pointer cast in C, so skip the round trip into wasm.
3108
+ return this.ptr;
3069
3109
  }
3070
3110
  name() {
3071
3111
  return _fromSymbol(Z3.get_decl_name(contextPtr, this.ptr));
@@ -3474,7 +3514,6 @@ function createApi(Z3, em) {
3474
3514
  }
3475
3515
  class ArithSortImpl extends SortImpl {
3476
3516
  cast(other) {
3477
- const sortTypeStr = isIntSort(this) ? 'IntSort' : 'RealSort';
3478
3517
  if (isExpr(other)) {
3479
3518
  const otherS = other.sort;
3480
3519
  if (isArith(other)) {
@@ -3494,7 +3533,7 @@ function createApi(Z3, em) {
3494
3533
  return ToReal(If(other, 1, 0));
3495
3534
  }
3496
3535
  }
3497
- (0, utils_1.assert)(false, `Can't cast expression to ${sortTypeStr}`);
3536
+ (0, utils_1.assert)(false, `Can't cast expression to ${isIntSort(this) ? 'IntSort' : 'RealSort'}`);
3498
3537
  }
3499
3538
  else {
3500
3539
  if (typeof other !== 'boolean') {
@@ -3504,11 +3543,51 @@ function createApi(Z3, em) {
3504
3543
  }
3505
3544
  return Real.val(other);
3506
3545
  }
3507
- (0, utils_1.assert)(false, `Can't cast primitive to ${sortTypeStr}`);
3546
+ (0, utils_1.assert)(false, `Can't cast primitive to ${isIntSort(this) ? 'IntSort' : 'RealSort'}`);
3508
3547
  }
3509
3548
  }
3510
3549
  }
3550
+ class ComplexSortImpl extends SortImpl {
3551
+ cast(other) {
3552
+ if (isExpr(other)) {
3553
+ _assertContext(other);
3554
+ if (isComplex(other))
3555
+ return other;
3556
+ (0, utils_1.assert)(isArith(other), 'Int, Real, or Complex expression expected');
3557
+ }
3558
+ (0, utils_1.assert)(typeof other !== 'boolean', 'Int, Real, or Complex value expected');
3559
+ return Complex.val(other);
3560
+ }
3561
+ }
3562
+ class ComplexImpl extends ExprImpl {
3563
+ add(other) {
3564
+ return new ComplexImpl(check(Z3.mk_add(contextPtr, [this.ast, this.sort.cast(other).ast])));
3565
+ }
3566
+ sub(other) {
3567
+ return new ComplexImpl(check(Z3.mk_sub(contextPtr, [this.ast, this.sort.cast(other).ast])));
3568
+ }
3569
+ mul(other) {
3570
+ return new ComplexImpl(check(Z3.mk_mul(contextPtr, [this.ast, this.sort.cast(other).ast])));
3571
+ }
3572
+ div(other) {
3573
+ return new ComplexImpl(check(Z3.mk_div(contextPtr, this.ast, this.sort.cast(other).ast)));
3574
+ }
3575
+ neg() {
3576
+ return new ComplexImpl(check(Z3.mk_unary_minus(contextPtr, this.ast)));
3577
+ }
3578
+ realPart() {
3579
+ return new ArithImpl(check(Z3.mk_real_part(contextPtr, this.ast)));
3580
+ }
3581
+ imagPart() {
3582
+ return new ArithImpl(check(Z3.mk_imag_part(contextPtr, this.ast)));
3583
+ }
3584
+ }
3511
3585
  function Sum(arg0, ...args) {
3586
+ if (arg0 instanceof ComplexImpl || args.some(arg => isComplex(arg))) {
3587
+ const sort = Complex.sort();
3588
+ const first = sort.cast(arg0);
3589
+ return new ComplexImpl(check(Z3.mk_add(contextPtr, [first.ast, ...args.map(arg => sort.cast(arg).ast)])));
3590
+ }
3512
3591
  if (arg0 instanceof BitVecImpl) {
3513
3592
  // Assert only 2
3514
3593
  if (args.length !== 1) {
@@ -3518,10 +3597,16 @@ function createApi(Z3, em) {
3518
3597
  }
3519
3598
  else {
3520
3599
  (0, utils_1.assert)(arg0 instanceof ArithImpl);
3521
- return new ArithImpl(check(Z3.mk_add(contextPtr, [arg0.ast].concat(args.map(arg => arg0.sort.cast(arg).ast)))));
3600
+ const sort = arg0.sort;
3601
+ return new ArithImpl(check(Z3.mk_add(contextPtr, [arg0.ast].concat(args.map(arg => sort.cast(arg).ast)))));
3522
3602
  }
3523
3603
  }
3524
3604
  function Sub(arg0, ...args) {
3605
+ if (arg0 instanceof ComplexImpl || args.some(arg => isComplex(arg))) {
3606
+ const sort = Complex.sort();
3607
+ const first = sort.cast(arg0);
3608
+ return new ComplexImpl(check(Z3.mk_sub(contextPtr, [first.ast, ...args.map(arg => sort.cast(arg).ast)])));
3609
+ }
3525
3610
  if (arg0 instanceof BitVecImpl) {
3526
3611
  // Assert only 2
3527
3612
  if (args.length !== 1) {
@@ -3531,10 +3616,16 @@ function createApi(Z3, em) {
3531
3616
  }
3532
3617
  else {
3533
3618
  (0, utils_1.assert)(arg0 instanceof ArithImpl);
3534
- return new ArithImpl(check(Z3.mk_sub(contextPtr, [arg0.ast].concat(args.map(arg => arg0.sort.cast(arg).ast)))));
3619
+ const sort = arg0.sort;
3620
+ return new ArithImpl(check(Z3.mk_sub(contextPtr, [arg0.ast].concat(args.map(arg => sort.cast(arg).ast)))));
3535
3621
  }
3536
3622
  }
3537
3623
  function Product(arg0, ...args) {
3624
+ if (arg0 instanceof ComplexImpl || args.some(arg => isComplex(arg))) {
3625
+ const sort = Complex.sort();
3626
+ const first = sort.cast(arg0);
3627
+ return new ComplexImpl(check(Z3.mk_mul(contextPtr, [first.ast, ...args.map(arg => sort.cast(arg).ast)])));
3628
+ }
3538
3629
  if (arg0 instanceof BitVecImpl) {
3539
3630
  // Assert only 2
3540
3631
  if (args.length !== 1) {
@@ -3544,10 +3635,13 @@ function createApi(Z3, em) {
3544
3635
  }
3545
3636
  else {
3546
3637
  (0, utils_1.assert)(arg0 instanceof ArithImpl);
3547
- return new ArithImpl(check(Z3.mk_mul(contextPtr, [arg0.ast].concat(args.map(arg => arg0.sort.cast(arg).ast)))));
3638
+ const sort = arg0.sort;
3639
+ return new ArithImpl(check(Z3.mk_mul(contextPtr, [arg0.ast].concat(args.map(arg => sort.cast(arg).ast)))));
3548
3640
  }
3549
3641
  }
3550
3642
  function Div(arg0, arg1) {
3643
+ if (arg0 instanceof ComplexImpl || isComplex(arg1))
3644
+ return Complex.sort().cast(arg0).div(Complex.sort().cast(arg1));
3551
3645
  if (arg0 instanceof BitVecImpl) {
3552
3646
  return new BitVecImpl(check(Z3.mk_bvsdiv(contextPtr, arg0.ast, arg0.sort.cast(arg1).ast)));
3553
3647
  }
@@ -3560,6 +3654,8 @@ function createApi(Z3, em) {
3560
3654
  return new BitVecImpl(check(Z3.mk_bvudiv(contextPtr, arg0.ast, arg0.sort.cast(arg1).ast)));
3561
3655
  }
3562
3656
  function Neg(a) {
3657
+ if (a instanceof ComplexImpl)
3658
+ return a.neg();
3563
3659
  if (a instanceof BitVecImpl) {
3564
3660
  return new BitVecImpl(check(Z3.mk_bvneg(contextPtr, a.ast)));
3565
3661
  }
@@ -3579,18 +3675,26 @@ function createApi(Z3, em) {
3579
3675
  }
3580
3676
  class ArithImpl extends ExprImpl {
3581
3677
  add(other) {
3678
+ if (isComplex(other))
3679
+ return Complex.sort().cast(this).add(other);
3582
3680
  return Sum(this, other);
3583
3681
  }
3584
3682
  mul(other) {
3683
+ if (isComplex(other))
3684
+ return Complex.sort().cast(this).mul(other);
3585
3685
  return Product(this, other);
3586
3686
  }
3587
3687
  sub(other) {
3688
+ if (isComplex(other))
3689
+ return Complex.sort().cast(this).sub(other);
3588
3690
  return Sub(this, other);
3589
3691
  }
3590
3692
  pow(exponent) {
3591
3693
  return new ArithImpl(check(Z3.mk_power(contextPtr, this.ast, this.sort.cast(exponent).ast)));
3592
3694
  }
3593
3695
  div(other) {
3696
+ if (isComplex(other))
3697
+ return Complex.sort().cast(this).div(other);
3594
3698
  return Div(this, other);
3595
3699
  }
3596
3700
  mod(other) {
@@ -4796,6 +4900,8 @@ function createApi(Z3, em) {
4796
4900
  isReal,
4797
4901
  isRealVal,
4798
4902
  isRealSort,
4903
+ isComplex,
4904
+ isComplexSort,
4799
4905
  isRCFNum,
4800
4906
  isBitVecSort,
4801
4907
  isBitVec,
@@ -4831,6 +4937,7 @@ function createApi(Z3, em) {
4831
4937
  Bool,
4832
4938
  Int,
4833
4939
  Real,
4940
+ Complex,
4834
4941
  RCFNum,
4835
4942
  BitVec,
4836
4943
  Float,
@@ -5230,6 +5337,7 @@ var Z3_sort_kind;
5230
5337
  Z3_sort_kind[Z3_sort_kind["Z3_CHAR_SORT"] = 13] = "Z3_CHAR_SORT";
5231
5338
  Z3_sort_kind[Z3_sort_kind["Z3_TYPE_VAR"] = 14] = "Z3_TYPE_VAR";
5232
5339
  Z3_sort_kind[Z3_sort_kind["Z3_FINITE_FIELD_SORT"] = 15] = "Z3_FINITE_FIELD_SORT";
5340
+ Z3_sort_kind[Z3_sort_kind["Z3_COMPLEX_SORT"] = 16] = "Z3_COMPLEX_SORT";
5233
5341
  Z3_sort_kind[Z3_sort_kind["Z3_UNKNOWN_SORT"] = 1000] = "Z3_UNKNOWN_SORT";
5234
5342
  })(Z3_sort_kind || (exports.Z3_sort_kind = Z3_sort_kind = {}));
5235
5343
  var Z3_ast_kind;
@@ -5275,6 +5383,9 @@ var Z3_decl_kind;
5275
5383
  Z3_decl_kind[Z3_decl_kind["Z3_OP_IS_INT"] = 528] = "Z3_OP_IS_INT";
5276
5384
  Z3_decl_kind[Z3_decl_kind["Z3_OP_POWER"] = 529] = "Z3_OP_POWER";
5277
5385
  Z3_decl_kind[Z3_decl_kind["Z3_OP_ABS"] = 530] = "Z3_OP_ABS";
5386
+ Z3_decl_kind[Z3_decl_kind["Z3_OP_COMPLEX"] = 531] = "Z3_OP_COMPLEX";
5387
+ Z3_decl_kind[Z3_decl_kind["Z3_OP_REAL_PART"] = 532] = "Z3_OP_REAL_PART";
5388
+ Z3_decl_kind[Z3_decl_kind["Z3_OP_IMAG_PART"] = 533] = "Z3_OP_IMAG_PART";
5278
5389
  Z3_decl_kind[Z3_decl_kind["Z3_OP_STORE"] = 768] = "Z3_OP_STORE";
5279
5390
  Z3_decl_kind[Z3_decl_kind["Z3_OP_SELECT"] = 769] = "Z3_OP_SELECT";
5280
5391
  Z3_decl_kind[Z3_decl_kind["Z3_OP_CONST_ARRAY"] = 770] = "Z3_OP_CONST_ARRAY";
@@ -5348,6 +5459,7 @@ var Z3_decl_kind;
5348
5459
  Z3_decl_kind[Z3_decl_kind["Z3_OP_BSREM_I"] = 1082] = "Z3_OP_BSREM_I";
5349
5460
  Z3_decl_kind[Z3_decl_kind["Z3_OP_BUREM_I"] = 1083] = "Z3_OP_BUREM_I";
5350
5461
  Z3_decl_kind[Z3_decl_kind["Z3_OP_BSMOD_I"] = 1084] = "Z3_OP_BSMOD_I";
5462
+ Z3_decl_kind[Z3_decl_kind["Z3_OP_MKBV"] = 1085] = "Z3_OP_MKBV";
5351
5463
  Z3_decl_kind[Z3_decl_kind["Z3_OP_PR_UNDEF"] = 1280] = "Z3_OP_PR_UNDEF";
5352
5464
  Z3_decl_kind[Z3_decl_kind["Z3_OP_PR_TRUE"] = 1281] = "Z3_OP_PR_TRUE";
5353
5465
  Z3_decl_kind[Z3_decl_kind["Z3_OP_PR_ASSERTED"] = 1282] = "Z3_OP_PR_ASSERTED";
@@ -5390,6 +5502,8 @@ var Z3_decl_kind;
5390
5502
  Z3_decl_kind[Z3_decl_kind["Z3_OP_PR_MODUS_PONENS_OEQ"] = 1319] = "Z3_OP_PR_MODUS_PONENS_OEQ";
5391
5503
  Z3_decl_kind[Z3_decl_kind["Z3_OP_PR_TH_LEMMA"] = 1320] = "Z3_OP_PR_TH_LEMMA";
5392
5504
  Z3_decl_kind[Z3_decl_kind["Z3_OP_PR_HYPER_RESOLVE"] = 1321] = "Z3_OP_PR_HYPER_RESOLVE";
5505
+ Z3_decl_kind[Z3_decl_kind["Z3_OP_PR_TH_ASSUMPTION_ADD"] = 1322] = "Z3_OP_PR_TH_ASSUMPTION_ADD";
5506
+ Z3_decl_kind[Z3_decl_kind["Z3_OP_PR_TH_LEMMA_ADD"] = 1323] = "Z3_OP_PR_TH_LEMMA_ADD";
5393
5507
  Z3_decl_kind[Z3_decl_kind["Z3_OP_RA_STORE"] = 1536] = "Z3_OP_RA_STORE";
5394
5508
  Z3_decl_kind[Z3_decl_kind["Z3_OP_RA_EMPTY"] = 1537] = "Z3_OP_RA_EMPTY";
5395
5509
  Z3_decl_kind[Z3_decl_kind["Z3_OP_RA_IS_EMPTY"] = 1538] = "Z3_OP_RA_IS_EMPTY";
@@ -5688,6 +5802,10 @@ async function init(initModule, moduleOverrides = {}) {
5688
5802
  mk_bool_sort: Mod._Z3_mk_bool_sort,
5689
5803
  mk_int_sort: Mod._Z3_mk_int_sort,
5690
5804
  mk_real_sort: Mod._Z3_mk_real_sort,
5805
+ mk_complex_sort: Mod._Z3_mk_complex_sort,
5806
+ mk_complex: Mod._Z3_mk_complex,
5807
+ mk_real_part: Mod._Z3_mk_real_part,
5808
+ mk_imag_part: Mod._Z3_mk_imag_part,
5691
5809
  mk_bv_sort: Mod._Z3_mk_bv_sort,
5692
5810
  mk_finite_domain_sort: Mod._Z3_mk_finite_domain_sort,
5693
5811
  mk_finite_field_sort: function (c, prime) {
@@ -7860,7 +7978,7 @@ var readyPromise = new Promise((resolve, reject) => {
7860
7978
  readyPromiseResolve = resolve;
7861
7979
  readyPromiseReject = reject;
7862
7980
  });
7863
- ["_malloc","_free","_set_throwy_error_handler","_set_noop_error_handler","_async_Z3_eval_smtlib2_string","_async_Z3_simplify","_async_Z3_simplify_ex","_async_Z3_solver_check","_async_Z3_solver_check_assumptions","_async_Z3_solver_cube","_async_Z3_solver_get_consequences","_async_Z3_tactic_apply","_async_Z3_tactic_apply_ex","_async_Z3_optimize_check","_async_Z3_algebraic_roots","_async_Z3_algebraic_eval","_async_Z3_fixedpoint_query","_async_Z3_fixedpoint_query_relations","_async_Z3_fixedpoint_query_from_lvl","_async_Z3_polynomial_subresultants","_Z3_global_param_set","_Z3_global_param_reset_all","_Z3_global_param_get","_Z3_mk_config","_Z3_del_config","_Z3_set_param_value","_Z3_mk_context","_Z3_mk_context_rc","_Z3_del_context","_Z3_inc_ref","_Z3_dec_ref","_Z3_update_param_value","_Z3_get_global_param_descrs","_Z3_interrupt","_Z3_enable_concurrent_dec_ref","_Z3_mk_params","_Z3_params_inc_ref","_Z3_params_dec_ref","_Z3_params_set_bool","_Z3_params_set_uint","_Z3_params_set_double","_Z3_params_set_symbol","_Z3_params_to_string","_Z3_params_validate","_Z3_param_descrs_inc_ref","_Z3_param_descrs_dec_ref","_Z3_param_descrs_get_kind","_Z3_param_descrs_size","_Z3_param_descrs_get_name","_Z3_param_descrs_get_documentation","_Z3_param_descrs_to_string","_Z3_mk_int_symbol","_Z3_mk_string_symbol","_Z3_mk_uninterpreted_sort","_Z3_mk_type_variable","_Z3_mk_bool_sort","_Z3_mk_int_sort","_Z3_mk_real_sort","_Z3_mk_bv_sort","_Z3_mk_finite_domain_sort","_Z3_mk_finite_field_sort","_Z3_get_finite_field_sort_size","_Z3_mk_ff_add","_Z3_mk_ff_mul","_Z3_mk_ff_neg","_Z3_mk_ff_bitsum","_Z3_mk_array_sort","_Z3_mk_array_sort_n","_Z3_mk_tuple_sort","_Z3_mk_enumeration_sort","_Z3_mk_list_sort","_Z3_mk_constructor","_Z3_constructor_num_fields","_Z3_del_constructor","_Z3_mk_datatype","_Z3_mk_polymorphic_datatype","_Z3_mk_datatype_sort","_Z3_mk_constructor_list","_Z3_del_constructor_list","_Z3_mk_datatypes","_Z3_query_constructor","_Z3_mk_func_decl","_Z3_mk_app","_Z3_mk_const","_Z3_mk_fresh_func_decl","_Z3_mk_fresh_const","_Z3_mk_rec_func_decl","_Z3_add_rec_def","_Z3_mk_true","_Z3_mk_false","_Z3_mk_eq","_Z3_mk_distinct","_Z3_mk_not","_Z3_mk_ite","_Z3_mk_iff","_Z3_mk_implies","_Z3_mk_xor","_Z3_mk_and","_Z3_mk_or","_Z3_mk_add","_Z3_mk_mul","_Z3_mk_sub","_Z3_mk_unary_minus","_Z3_mk_div","_Z3_mk_mod","_Z3_mk_rem","_Z3_mk_power","_Z3_mk_abs","_Z3_mk_lt","_Z3_mk_le","_Z3_mk_gt","_Z3_mk_ge","_Z3_mk_divides","_Z3_mk_int2real","_Z3_mk_real2int","_Z3_mk_is_int","_Z3_mk_bvnot","_Z3_mk_bvredand","_Z3_mk_bvredor","_Z3_mk_bvand","_Z3_mk_bvor","_Z3_mk_bvxor","_Z3_mk_bvnand","_Z3_mk_bvnor","_Z3_mk_bvxnor","_Z3_mk_bvneg","_Z3_mk_bvadd","_Z3_mk_bvsub","_Z3_mk_bvmul","_Z3_mk_bvudiv","_Z3_mk_bvsdiv","_Z3_mk_bvurem","_Z3_mk_bvsrem","_Z3_mk_bvsmod","_Z3_mk_bvult","_Z3_mk_bvslt","_Z3_mk_bvule","_Z3_mk_bvsle","_Z3_mk_bvuge","_Z3_mk_bvsge","_Z3_mk_bvugt","_Z3_mk_bvsgt","_Z3_mk_concat","_Z3_mk_extract","_Z3_mk_sign_ext","_Z3_mk_zero_ext","_Z3_mk_repeat","_Z3_mk_bit2bool","_Z3_mk_bvshl","_Z3_mk_bvlshr","_Z3_mk_bvashr","_Z3_mk_rotate_left","_Z3_mk_rotate_right","_Z3_mk_ext_rotate_left","_Z3_mk_ext_rotate_right","_Z3_mk_int2bv","_Z3_mk_bv2int","_Z3_mk_bvadd_no_overflow","_Z3_mk_bvadd_no_underflow","_Z3_mk_bvsub_no_overflow","_Z3_mk_bvsub_no_underflow","_Z3_mk_bvsdiv_no_overflow","_Z3_mk_bvneg_no_overflow","_Z3_mk_bvmul_no_overflow","_Z3_mk_bvmul_no_underflow","_Z3_mk_select","_Z3_mk_select_n","_Z3_mk_store","_Z3_mk_store_n","_Z3_mk_const_array","_Z3_mk_map","_Z3_mk_array_default","_Z3_mk_as_array","_Z3_mk_set_sort","_Z3_mk_empty_set","_Z3_mk_full_set","_Z3_mk_set_add","_Z3_mk_set_del","_Z3_mk_set_union","_Z3_mk_set_intersect","_Z3_mk_set_difference","_Z3_mk_set_complement","_Z3_mk_set_member","_Z3_mk_set_subset","_Z3_mk_array_ext","_Z3_mk_finite_set_sort","_Z3_is_finite_set_sort","_Z3_get_finite_set_sort_basis","_Z3_mk_finite_set_empty","_Z3_mk_finite_set_singleton","_Z3_mk_finite_set_union","_Z3_mk_finite_set_intersect","_Z3_mk_finite_set_difference","_Z3_mk_finite_set_member","_Z3_mk_finite_set_size","_Z3_mk_finite_set_subset","_Z3_mk_finite_set_map","_Z3_mk_finite_set_filter","_Z3_mk_finite_set_range","_Z3_mk_numeral","_Z3_mk_real","_Z3_mk_real_int64","_Z3_mk_int","_Z3_mk_unsigned_int","_Z3_mk_int64","_Z3_mk_unsigned_int64","_Z3_mk_bv_numeral","_Z3_mk_seq_sort","_Z3_is_seq_sort","_Z3_get_seq_sort_basis","_Z3_mk_re_sort","_Z3_is_re_sort","_Z3_get_re_sort_basis","_Z3_mk_string_sort","_Z3_mk_char_sort","_Z3_is_string_sort","_Z3_is_char_sort","_Z3_mk_string","_Z3_mk_lstring","_Z3_mk_u32string","_Z3_is_string","_Z3_get_string","_Z3_get_lstring","_Z3_get_string_length","_Z3_get_string_contents","_Z3_mk_seq_empty","_Z3_mk_seq_unit","_Z3_mk_seq_concat","_Z3_mk_seq_prefix","_Z3_mk_seq_suffix","_Z3_mk_seq_contains","_Z3_mk_str_lt","_Z3_mk_str_le","_Z3_mk_seq_extract","_Z3_mk_seq_replace","_Z3_mk_seq_replace_all","_Z3_mk_seq_replace_re","_Z3_mk_seq_replace_re_all","_Z3_mk_seq_at","_Z3_mk_seq_nth","_Z3_mk_seq_power","_Z3_mk_seq_length","_Z3_mk_seq_index","_Z3_mk_seq_last_index","_Z3_mk_seq_map","_Z3_mk_seq_mapi","_Z3_mk_seq_foldl","_Z3_mk_seq_foldli","_Z3_mk_str_to_int","_Z3_mk_int_to_str","_Z3_mk_string_to_code","_Z3_mk_string_from_code","_Z3_mk_ubv_to_str","_Z3_mk_sbv_to_str","_Z3_mk_seq_to_re","_Z3_mk_seq_in_re","_Z3_mk_re_plus","_Z3_mk_re_star","_Z3_mk_re_option","_Z3_mk_re_union","_Z3_mk_re_concat","_Z3_mk_re_range","_Z3_mk_re_allchar","_Z3_mk_re_loop","_Z3_mk_re_power","_Z3_mk_re_intersect","_Z3_mk_re_complement","_Z3_mk_re_diff","_Z3_mk_re_empty","_Z3_mk_re_full","_Z3_mk_char","_Z3_mk_char_le","_Z3_mk_char_to_int","_Z3_mk_char_to_bv","_Z3_mk_char_from_bv","_Z3_mk_char_is_digit","_Z3_mk_linear_order","_Z3_mk_partial_order","_Z3_mk_piecewise_linear_order","_Z3_mk_tree_order","_Z3_mk_transitive_closure","_Z3_mk_pattern","_Z3_mk_bound","_Z3_mk_forall","_Z3_mk_exists","_Z3_mk_quantifier","_Z3_mk_quantifier_ex","_Z3_mk_forall_const","_Z3_mk_exists_const","_Z3_mk_quantifier_const","_Z3_mk_quantifier_const_ex","_Z3_mk_lambda","_Z3_mk_lambda_const","_Z3_get_symbol_kind","_Z3_get_symbol_int","_Z3_get_symbol_string","_Z3_get_sort_name","_Z3_get_sort_id","_Z3_sort_to_ast","_Z3_is_eq_sort","_Z3_get_sort_kind","_Z3_get_bv_sort_size","_Z3_get_finite_domain_sort_size","_Z3_get_array_arity","_Z3_get_array_sort_domain","_Z3_get_array_sort_domain_n","_Z3_get_array_sort_range","_Z3_get_tuple_sort_mk_decl","_Z3_get_tuple_sort_num_fields","_Z3_get_tuple_sort_field_decl","_Z3_is_recursive_datatype_sort","_Z3_get_datatype_sort_num_constructors","_Z3_get_datatype_sort_constructor","_Z3_get_datatype_sort_recognizer","_Z3_get_datatype_sort_constructor_accessor","_Z3_datatype_update_field","_Z3_get_relation_arity","_Z3_get_relation_column","_Z3_mk_atmost","_Z3_mk_atleast","_Z3_mk_pble","_Z3_mk_pbge","_Z3_mk_pbeq","_Z3_func_decl_to_ast","_Z3_is_eq_func_decl","_Z3_get_func_decl_id","_Z3_get_decl_name","_Z3_get_decl_kind","_Z3_get_domain_size","_Z3_get_arity","_Z3_get_domain","_Z3_get_range","_Z3_get_decl_num_parameters","_Z3_get_decl_parameter_kind","_Z3_get_decl_int_parameter","_Z3_get_decl_double_parameter","_Z3_get_decl_symbol_parameter","_Z3_get_decl_sort_parameter","_Z3_get_decl_ast_parameter","_Z3_get_decl_func_decl_parameter","_Z3_get_decl_rational_parameter","_Z3_app_to_ast","_Z3_get_app_decl","_Z3_get_app_num_args","_Z3_get_app_arg","_Z3_is_eq_ast","_Z3_get_ast_id","_Z3_get_ast_hash","_Z3_get_sort","_Z3_is_well_sorted","_Z3_get_bool_value","_Z3_get_ast_kind","_Z3_is_app","_Z3_is_ground","_Z3_get_depth","_Z3_is_numeral_ast","_Z3_is_algebraic_number","_Z3_to_app","_Z3_to_func_decl","_Z3_get_numeral_string","_Z3_get_numeral_binary_string","_Z3_get_numeral_decimal_string","_Z3_get_numeral_double","_Z3_get_numerator","_Z3_get_denominator","_Z3_get_numeral_small","_Z3_get_numeral_int","_Z3_get_numeral_uint","_Z3_get_numeral_uint64","_Z3_get_numeral_int64","_Z3_get_numeral_rational_int64","_Z3_get_algebraic_number_lower","_Z3_get_algebraic_number_upper","_Z3_pattern_to_ast","_Z3_get_pattern_num_terms","_Z3_get_pattern","_Z3_get_index_value","_Z3_is_quantifier_forall","_Z3_is_quantifier_exists","_Z3_is_lambda","_Z3_get_quantifier_weight","_Z3_get_quantifier_skolem_id","_Z3_get_quantifier_id","_Z3_get_quantifier_num_patterns","_Z3_get_quantifier_pattern_ast","_Z3_get_quantifier_num_no_patterns","_Z3_get_quantifier_no_pattern_ast","_Z3_get_quantifier_num_bound","_Z3_get_quantifier_bound_name","_Z3_get_quantifier_bound_sort","_Z3_get_quantifier_body","_Z3_simplify","_Z3_simplify_ex","_Z3_simplify_get_help","_Z3_simplify_get_param_descrs","_Z3_update_term","_Z3_substitute","_Z3_substitute_vars","_Z3_substitute_funs","_Z3_translate","_Z3_mk_model","_Z3_model_inc_ref","_Z3_model_dec_ref","_Z3_model_eval","_Z3_model_get_const_interp","_Z3_model_has_interp","_Z3_model_get_func_interp","_Z3_model_get_num_consts","_Z3_model_get_const_decl","_Z3_model_get_num_funcs","_Z3_model_get_func_decl","_Z3_model_get_num_sorts","_Z3_model_get_sort","_Z3_model_get_sort_universe","_Z3_model_translate","_Z3_is_as_array","_Z3_get_as_array_func_decl","_Z3_add_func_interp","_Z3_add_const_interp","_Z3_func_interp_inc_ref","_Z3_func_interp_dec_ref","_Z3_func_interp_get_num_entries","_Z3_func_interp_get_entry","_Z3_func_interp_get_else","_Z3_func_interp_set_else","_Z3_func_interp_get_arity","_Z3_func_interp_add_entry","_Z3_func_entry_inc_ref","_Z3_func_entry_dec_ref","_Z3_func_entry_get_value","_Z3_func_entry_get_num_args","_Z3_func_entry_get_arg","_Z3_open_log","_Z3_append_log","_Z3_close_log","_Z3_toggle_warning_messages","_Z3_set_ast_print_mode","_Z3_ast_to_string","_Z3_pattern_to_string","_Z3_sort_to_string","_Z3_func_decl_to_string","_Z3_model_to_string","_Z3_benchmark_to_smtlib_string","_Z3_parse_smtlib2_string","_Z3_parse_smtlib2_file","_Z3_eval_smtlib2_string","_Z3_mk_parser_context","_Z3_parser_context_inc_ref","_Z3_parser_context_dec_ref","_Z3_parser_context_add_sort","_Z3_parser_context_add_decl","_Z3_parser_context_from_string","_Z3_get_error_code","_Z3_set_error","_Z3_get_error_msg","_Z3_get_version","_Z3_get_full_version","_Z3_enable_trace","_Z3_disable_trace","_Z3_reset_memory","_Z3_finalize_memory","_Z3_mk_goal","_Z3_goal_inc_ref","_Z3_goal_dec_ref","_Z3_goal_precision","_Z3_goal_assert","_Z3_goal_inconsistent","_Z3_goal_depth","_Z3_goal_reset","_Z3_goal_size","_Z3_goal_formula","_Z3_goal_num_exprs","_Z3_goal_is_decided_sat","_Z3_goal_is_decided_unsat","_Z3_goal_translate","_Z3_goal_convert_model","_Z3_goal_to_string","_Z3_goal_to_dimacs_string","_Z3_mk_tactic","_Z3_tactic_inc_ref","_Z3_tactic_dec_ref","_Z3_mk_probe","_Z3_probe_inc_ref","_Z3_probe_dec_ref","_Z3_tactic_and_then","_Z3_tactic_or_else","_Z3_tactic_par_or","_Z3_tactic_par_and_then","_Z3_tactic_try_for","_Z3_tactic_when","_Z3_tactic_cond","_Z3_tactic_repeat","_Z3_tactic_skip","_Z3_tactic_fail","_Z3_tactic_fail_if","_Z3_tactic_fail_if_not_decided","_Z3_tactic_using_params","_Z3_mk_simplifier","_Z3_simplifier_inc_ref","_Z3_simplifier_dec_ref","_Z3_solver_add_simplifier","_Z3_simplifier_and_then","_Z3_simplifier_using_params","_Z3_get_num_simplifiers","_Z3_get_simplifier_name","_Z3_simplifier_get_help","_Z3_simplifier_get_param_descrs","_Z3_simplifier_get_descr","_Z3_probe_const","_Z3_probe_lt","_Z3_probe_gt","_Z3_probe_le","_Z3_probe_ge","_Z3_probe_eq","_Z3_probe_and","_Z3_probe_or","_Z3_probe_not","_Z3_get_num_tactics","_Z3_get_tactic_name","_Z3_get_num_probes","_Z3_get_probe_name","_Z3_tactic_get_help","_Z3_tactic_get_param_descrs","_Z3_tactic_get_descr","_Z3_probe_get_descr","_Z3_probe_apply","_Z3_tactic_apply","_Z3_tactic_apply_ex","_Z3_apply_result_inc_ref","_Z3_apply_result_dec_ref","_Z3_apply_result_to_string","_Z3_apply_result_get_num_subgoals","_Z3_apply_result_get_subgoal","_Z3_mk_solver","_Z3_mk_simple_solver","_Z3_mk_solver_for_logic","_Z3_mk_solver_from_tactic","_Z3_solver_translate","_Z3_solver_import_model_converter","_Z3_solver_get_help","_Z3_solver_get_param_descrs","_Z3_solver_set_params","_Z3_solver_inc_ref","_Z3_solver_dec_ref","_Z3_solver_interrupt","_Z3_solver_push","_Z3_solver_pop","_Z3_solver_reset","_Z3_solver_get_num_scopes","_Z3_solver_assert","_Z3_solver_assert_and_track","_Z3_solver_from_file","_Z3_solver_from_string","_Z3_solver_get_assertions","_Z3_solver_get_units","_Z3_solver_get_trail","_Z3_solver_get_non_units","_Z3_solver_get_levels","_Z3_solver_congruence_root","_Z3_solver_congruence_next","_Z3_solver_congruence_explain","_Z3_solver_solve_for","_Z3_solver_register_on_clause","_Z3_solver_propagate_init","_Z3_solver_propagate_fixed","_Z3_solver_propagate_final","_Z3_solver_propagate_eq","_Z3_solver_propagate_diseq","_Z3_solver_propagate_created","_Z3_solver_propagate_decide","_Z3_solver_propagate_on_binding","_Z3_solver_next_split","_Z3_solver_propagate_declare","_Z3_solver_propagate_register","_Z3_solver_propagate_register_cb","_Z3_solver_propagate_consequence","_Z3_solver_set_initial_value","_Z3_solver_check","_Z3_solver_check_assumptions","_Z3_get_implied_equalities","_Z3_solver_get_consequences","_Z3_solver_cube","_Z3_solver_get_model","_Z3_solver_get_proof","_Z3_solver_get_unsat_core","_Z3_solver_get_reason_unknown","_Z3_solver_get_statistics","_Z3_solver_to_string","_Z3_solver_to_dimacs_string","_Z3_stats_to_string","_Z3_stats_inc_ref","_Z3_stats_dec_ref","_Z3_stats_size","_Z3_stats_get_key","_Z3_stats_is_uint","_Z3_stats_is_double","_Z3_stats_get_uint_value","_Z3_stats_get_double_value","_Z3_get_estimated_alloc_size","_Z3_algebraic_is_value","_Z3_algebraic_is_pos","_Z3_algebraic_is_neg","_Z3_algebraic_is_zero","_Z3_algebraic_sign","_Z3_algebraic_add","_Z3_algebraic_sub","_Z3_algebraic_mul","_Z3_algebraic_div","_Z3_algebraic_root","_Z3_algebraic_power","_Z3_algebraic_lt","_Z3_algebraic_gt","_Z3_algebraic_le","_Z3_algebraic_ge","_Z3_algebraic_eq","_Z3_algebraic_neq","_Z3_algebraic_roots","_Z3_algebraic_eval","_Z3_algebraic_get_poly","_Z3_algebraic_get_i","_Z3_mk_ast_vector","_Z3_ast_vector_inc_ref","_Z3_ast_vector_dec_ref","_Z3_ast_vector_size","_Z3_ast_vector_get","_Z3_ast_vector_set","_Z3_ast_vector_resize","_Z3_ast_vector_push","_Z3_ast_vector_translate","_Z3_ast_vector_to_string","_Z3_mk_ast_map","_Z3_ast_map_inc_ref","_Z3_ast_map_dec_ref","_Z3_ast_map_contains","_Z3_ast_map_find","_Z3_ast_map_insert","_Z3_ast_map_erase","_Z3_ast_map_reset","_Z3_ast_map_size","_Z3_ast_map_keys","_Z3_ast_map_to_string","_Z3_mk_fixedpoint","_Z3_fixedpoint_inc_ref","_Z3_fixedpoint_dec_ref","_Z3_fixedpoint_add_rule","_Z3_fixedpoint_add_fact","_Z3_fixedpoint_assert","_Z3_fixedpoint_query","_Z3_fixedpoint_query_relations","_Z3_fixedpoint_get_answer","_Z3_fixedpoint_get_reason_unknown","_Z3_fixedpoint_update_rule","_Z3_fixedpoint_get_num_levels","_Z3_fixedpoint_get_cover_delta","_Z3_fixedpoint_add_cover","_Z3_fixedpoint_get_statistics","_Z3_fixedpoint_register_relation","_Z3_fixedpoint_set_predicate_representation","_Z3_fixedpoint_get_rules","_Z3_fixedpoint_get_assertions","_Z3_fixedpoint_set_params","_Z3_fixedpoint_get_help","_Z3_fixedpoint_get_param_descrs","_Z3_fixedpoint_to_string","_Z3_fixedpoint_from_string","_Z3_fixedpoint_from_file","_Z3_mk_fpa_rounding_mode_sort","_Z3_mk_fpa_round_nearest_ties_to_even","_Z3_mk_fpa_rne","_Z3_mk_fpa_round_nearest_ties_to_away","_Z3_mk_fpa_rna","_Z3_mk_fpa_round_toward_positive","_Z3_mk_fpa_rtp","_Z3_mk_fpa_round_toward_negative","_Z3_mk_fpa_rtn","_Z3_mk_fpa_round_toward_zero","_Z3_mk_fpa_rtz","_Z3_mk_fpa_sort","_Z3_mk_fpa_sort_half","_Z3_mk_fpa_sort_16","_Z3_mk_fpa_sort_single","_Z3_mk_fpa_sort_32","_Z3_mk_fpa_sort_double","_Z3_mk_fpa_sort_64","_Z3_mk_fpa_sort_quadruple","_Z3_mk_fpa_sort_128","_Z3_mk_fpa_nan","_Z3_mk_fpa_inf","_Z3_mk_fpa_zero","_Z3_mk_fpa_fp","_Z3_mk_fpa_numeral_float","_Z3_mk_fpa_numeral_double","_Z3_mk_fpa_numeral_int","_Z3_mk_fpa_numeral_int_uint","_Z3_mk_fpa_numeral_int64_uint64","_Z3_mk_fpa_abs","_Z3_mk_fpa_neg","_Z3_mk_fpa_add","_Z3_mk_fpa_sub","_Z3_mk_fpa_mul","_Z3_mk_fpa_div","_Z3_mk_fpa_fma","_Z3_mk_fpa_sqrt","_Z3_mk_fpa_rem","_Z3_mk_fpa_round_to_integral","_Z3_mk_fpa_min","_Z3_mk_fpa_max","_Z3_mk_fpa_leq","_Z3_mk_fpa_lt","_Z3_mk_fpa_geq","_Z3_mk_fpa_gt","_Z3_mk_fpa_eq","_Z3_mk_fpa_is_normal","_Z3_mk_fpa_is_subnormal","_Z3_mk_fpa_is_zero","_Z3_mk_fpa_is_infinite","_Z3_mk_fpa_is_nan","_Z3_mk_fpa_is_negative","_Z3_mk_fpa_is_positive","_Z3_mk_fpa_to_fp_bv","_Z3_mk_fpa_to_fp_float","_Z3_mk_fpa_to_fp_real","_Z3_mk_fpa_to_fp_signed","_Z3_mk_fpa_to_fp_unsigned","_Z3_mk_fpa_to_ubv","_Z3_mk_fpa_to_sbv","_Z3_mk_fpa_to_real","_Z3_fpa_get_ebits","_Z3_fpa_get_sbits","_Z3_fpa_is_numeral","_Z3_fpa_is_numeral_nan","_Z3_fpa_is_numeral_inf","_Z3_fpa_is_numeral_zero","_Z3_fpa_is_numeral_normal","_Z3_fpa_is_numeral_subnormal","_Z3_fpa_is_numeral_positive","_Z3_fpa_is_numeral_negative","_Z3_fpa_get_numeral_sign_bv","_Z3_fpa_get_numeral_significand_bv","_Z3_fpa_get_numeral_sign","_Z3_fpa_get_numeral_significand_string","_Z3_fpa_get_numeral_significand_uint64","_Z3_fpa_get_numeral_exponent_string","_Z3_fpa_get_numeral_exponent_int64","_Z3_fpa_get_numeral_exponent_bv","_Z3_mk_fpa_to_ieee_bv","_Z3_mk_fpa_to_fp_int_real","_Z3_mk_optimize","_Z3_optimize_inc_ref","_Z3_optimize_dec_ref","_Z3_optimize_assert","_Z3_optimize_assert_and_track","_Z3_optimize_assert_soft","_Z3_optimize_maximize","_Z3_optimize_minimize","_Z3_optimize_push","_Z3_optimize_pop","_Z3_optimize_set_initial_value","_Z3_optimize_check","_Z3_optimize_get_reason_unknown","_Z3_optimize_get_model","_Z3_optimize_get_unsat_core","_Z3_optimize_set_params","_Z3_optimize_get_param_descrs","_Z3_optimize_get_lower","_Z3_optimize_get_upper","_Z3_optimize_get_lower_as_vector","_Z3_optimize_get_upper_as_vector","_Z3_optimize_to_string","_Z3_optimize_from_string","_Z3_optimize_from_file","_Z3_optimize_get_help","_Z3_optimize_get_statistics","_Z3_optimize_get_assertions","_Z3_optimize_get_objectives","_Z3_optimize_translate","_Z3_polynomial_subresultants","_Z3_rcf_del","_Z3_rcf_mk_rational","_Z3_rcf_mk_small_int","_Z3_rcf_mk_pi","_Z3_rcf_mk_e","_Z3_rcf_mk_infinitesimal","_Z3_rcf_mk_roots","_Z3_rcf_add","_Z3_rcf_sub","_Z3_rcf_mul","_Z3_rcf_div","_Z3_rcf_neg","_Z3_rcf_inv","_Z3_rcf_power","_Z3_rcf_lt","_Z3_rcf_gt","_Z3_rcf_le","_Z3_rcf_ge","_Z3_rcf_eq","_Z3_rcf_neq","_Z3_rcf_num_to_string","_Z3_rcf_num_to_decimal_string","_Z3_rcf_get_numerator_denominator","_Z3_rcf_is_rational","_Z3_rcf_is_algebraic","_Z3_rcf_is_infinitesimal","_Z3_rcf_is_transcendental","_Z3_rcf_extension_index","_Z3_rcf_transcendental_name","_Z3_rcf_infinitesimal_name","_Z3_rcf_num_coefficients","_Z3_rcf_coefficient","_Z3_rcf_interval","_Z3_rcf_num_sign_conditions","_Z3_rcf_sign_condition_sign","_Z3_rcf_num_sign_condition_coefficients","_Z3_rcf_sign_condition_coefficient","_Z3_fixedpoint_query_from_lvl","_Z3_fixedpoint_get_ground_sat_answer","_Z3_fixedpoint_get_rules_along_trace","_Z3_fixedpoint_get_rule_names_along_trace","_Z3_fixedpoint_add_invariant","_Z3_fixedpoint_get_reachable","_Z3_qe_model_project","_Z3_qe_model_project_skolem","_Z3_qe_model_project_with_witness","_Z3_model_extrapolate","_Z3_qe_lite","getExceptionMessage","incrementExceptionRefcount","decrementExceptionRefcount","___indirect_function_table","onRuntimeInitialized"].forEach((prop) => {
7981
+ ["_malloc","_free","_set_throwy_error_handler","_set_noop_error_handler","_async_Z3_eval_smtlib2_string","_async_Z3_simplify","_async_Z3_simplify_ex","_async_Z3_solver_check","_async_Z3_solver_check_assumptions","_async_Z3_solver_cube","_async_Z3_solver_get_consequences","_async_Z3_tactic_apply","_async_Z3_tactic_apply_ex","_async_Z3_optimize_check","_async_Z3_algebraic_roots","_async_Z3_algebraic_eval","_async_Z3_fixedpoint_query","_async_Z3_fixedpoint_query_relations","_async_Z3_fixedpoint_query_from_lvl","_async_Z3_polynomial_subresultants","_Z3_global_param_set","_Z3_global_param_reset_all","_Z3_global_param_get","_Z3_mk_config","_Z3_del_config","_Z3_set_param_value","_Z3_mk_context","_Z3_mk_context_rc","_Z3_del_context","_Z3_set_proof_check_callback","_Z3_inc_ref","_Z3_dec_ref","_Z3_update_param_value","_Z3_get_global_param_descrs","_Z3_interrupt","_Z3_enable_concurrent_dec_ref","_Z3_mk_params","_Z3_params_inc_ref","_Z3_params_dec_ref","_Z3_params_set_bool","_Z3_params_set_uint","_Z3_params_set_double","_Z3_params_set_symbol","_Z3_params_to_string","_Z3_params_validate","_Z3_param_descrs_inc_ref","_Z3_param_descrs_dec_ref","_Z3_param_descrs_get_kind","_Z3_param_descrs_size","_Z3_param_descrs_get_name","_Z3_param_descrs_get_documentation","_Z3_param_descrs_to_string","_Z3_mk_int_symbol","_Z3_mk_string_symbol","_Z3_mk_uninterpreted_sort","_Z3_mk_type_variable","_Z3_mk_bool_sort","_Z3_mk_int_sort","_Z3_mk_real_sort","_Z3_mk_complex_sort","_Z3_mk_complex","_Z3_mk_real_part","_Z3_mk_imag_part","_Z3_mk_bv_sort","_Z3_mk_finite_domain_sort","_Z3_mk_finite_field_sort","_Z3_get_finite_field_sort_size","_Z3_mk_ff_add","_Z3_mk_ff_mul","_Z3_mk_ff_neg","_Z3_mk_ff_bitsum","_Z3_mk_array_sort","_Z3_mk_array_sort_n","_Z3_mk_tuple_sort","_Z3_mk_enumeration_sort","_Z3_mk_list_sort","_Z3_mk_constructor","_Z3_constructor_num_fields","_Z3_del_constructor","_Z3_mk_datatype","_Z3_mk_polymorphic_datatype","_Z3_mk_datatype_sort","_Z3_mk_constructor_list","_Z3_del_constructor_list","_Z3_mk_datatypes","_Z3_query_constructor","_Z3_mk_func_decl","_Z3_mk_app","_Z3_mk_const","_Z3_mk_fresh_func_decl","_Z3_mk_fresh_const","_Z3_mk_rec_func_decl","_Z3_add_rec_def","_Z3_mk_true","_Z3_mk_false","_Z3_mk_eq","_Z3_mk_distinct","_Z3_mk_not","_Z3_mk_ite","_Z3_mk_iff","_Z3_mk_implies","_Z3_mk_xor","_Z3_mk_and","_Z3_mk_or","_Z3_mk_add","_Z3_mk_mul","_Z3_mk_sub","_Z3_mk_unary_minus","_Z3_mk_div","_Z3_mk_mod","_Z3_mk_rem","_Z3_mk_power","_Z3_mk_abs","_Z3_mk_lt","_Z3_mk_le","_Z3_mk_gt","_Z3_mk_ge","_Z3_mk_divides","_Z3_mk_int2real","_Z3_mk_real2int","_Z3_mk_is_int","_Z3_mk_bvnot","_Z3_mk_bvredand","_Z3_mk_bvredor","_Z3_mk_bvand","_Z3_mk_bvor","_Z3_mk_bvxor","_Z3_mk_bvnand","_Z3_mk_bvnor","_Z3_mk_bvxnor","_Z3_mk_bvneg","_Z3_mk_bvadd","_Z3_mk_bvsub","_Z3_mk_bvmul","_Z3_mk_bvudiv","_Z3_mk_bvsdiv","_Z3_mk_bvurem","_Z3_mk_bvsrem","_Z3_mk_bvsmod","_Z3_mk_bvult","_Z3_mk_bvslt","_Z3_mk_bvule","_Z3_mk_bvsle","_Z3_mk_bvuge","_Z3_mk_bvsge","_Z3_mk_bvugt","_Z3_mk_bvsgt","_Z3_mk_concat","_Z3_mk_extract","_Z3_mk_sign_ext","_Z3_mk_zero_ext","_Z3_mk_repeat","_Z3_mk_bit2bool","_Z3_mk_bvshl","_Z3_mk_bvlshr","_Z3_mk_bvashr","_Z3_mk_rotate_left","_Z3_mk_rotate_right","_Z3_mk_ext_rotate_left","_Z3_mk_ext_rotate_right","_Z3_mk_int2bv","_Z3_mk_bv2int","_Z3_mk_bvadd_no_overflow","_Z3_mk_bvadd_no_underflow","_Z3_mk_bvsub_no_overflow","_Z3_mk_bvsub_no_underflow","_Z3_mk_bvsdiv_no_overflow","_Z3_mk_bvneg_no_overflow","_Z3_mk_bvmul_no_overflow","_Z3_mk_bvmul_no_underflow","_Z3_mk_select","_Z3_mk_select_n","_Z3_mk_store","_Z3_mk_store_n","_Z3_mk_const_array","_Z3_mk_map","_Z3_mk_array_default","_Z3_mk_as_array","_Z3_mk_set_sort","_Z3_mk_empty_set","_Z3_mk_full_set","_Z3_mk_set_add","_Z3_mk_set_del","_Z3_mk_set_union","_Z3_mk_set_intersect","_Z3_mk_set_difference","_Z3_mk_set_complement","_Z3_mk_set_member","_Z3_mk_set_subset","_Z3_mk_array_ext","_Z3_mk_finite_set_sort","_Z3_is_finite_set_sort","_Z3_get_finite_set_sort_basis","_Z3_mk_finite_set_empty","_Z3_mk_finite_set_singleton","_Z3_mk_finite_set_union","_Z3_mk_finite_set_intersect","_Z3_mk_finite_set_difference","_Z3_mk_finite_set_member","_Z3_mk_finite_set_size","_Z3_mk_finite_set_subset","_Z3_mk_finite_set_map","_Z3_mk_finite_set_filter","_Z3_mk_finite_set_range","_Z3_mk_numeral","_Z3_mk_real","_Z3_mk_real_int64","_Z3_mk_int","_Z3_mk_unsigned_int","_Z3_mk_int64","_Z3_mk_unsigned_int64","_Z3_mk_bv_numeral","_Z3_mk_seq_sort","_Z3_is_seq_sort","_Z3_get_seq_sort_basis","_Z3_mk_re_sort","_Z3_is_re_sort","_Z3_get_re_sort_basis","_Z3_mk_string_sort","_Z3_mk_char_sort","_Z3_is_string_sort","_Z3_is_char_sort","_Z3_mk_string","_Z3_mk_lstring","_Z3_mk_u32string","_Z3_is_string","_Z3_get_string","_Z3_get_lstring","_Z3_get_string_length","_Z3_get_string_contents","_Z3_mk_seq_empty","_Z3_mk_seq_unit","_Z3_mk_seq_concat","_Z3_mk_seq_prefix","_Z3_mk_seq_suffix","_Z3_mk_seq_contains","_Z3_mk_str_lt","_Z3_mk_str_le","_Z3_mk_seq_extract","_Z3_mk_seq_replace","_Z3_mk_seq_replace_all","_Z3_mk_seq_replace_re","_Z3_mk_seq_replace_re_all","_Z3_mk_seq_at","_Z3_mk_seq_nth","_Z3_mk_seq_power","_Z3_mk_seq_length","_Z3_mk_seq_index","_Z3_mk_seq_last_index","_Z3_mk_seq_map","_Z3_mk_seq_mapi","_Z3_mk_seq_foldl","_Z3_mk_seq_foldli","_Z3_mk_str_to_int","_Z3_mk_int_to_str","_Z3_mk_string_to_code","_Z3_mk_string_from_code","_Z3_mk_ubv_to_str","_Z3_mk_sbv_to_str","_Z3_mk_seq_to_re","_Z3_mk_seq_in_re","_Z3_mk_re_plus","_Z3_mk_re_star","_Z3_mk_re_option","_Z3_mk_re_union","_Z3_mk_re_concat","_Z3_mk_re_range","_Z3_mk_re_allchar","_Z3_mk_re_loop","_Z3_mk_re_power","_Z3_mk_re_intersect","_Z3_mk_re_complement","_Z3_mk_re_diff","_Z3_mk_re_empty","_Z3_mk_re_full","_Z3_mk_char","_Z3_mk_char_le","_Z3_mk_char_to_int","_Z3_mk_char_to_bv","_Z3_mk_char_from_bv","_Z3_mk_char_is_digit","_Z3_mk_linear_order","_Z3_mk_partial_order","_Z3_mk_piecewise_linear_order","_Z3_mk_tree_order","_Z3_mk_transitive_closure","_Z3_mk_pattern","_Z3_mk_bound","_Z3_mk_forall","_Z3_mk_exists","_Z3_mk_quantifier","_Z3_mk_quantifier_ex","_Z3_mk_forall_const","_Z3_mk_exists_const","_Z3_mk_quantifier_const","_Z3_mk_quantifier_const_ex","_Z3_mk_lambda","_Z3_mk_lambda_const","_Z3_get_symbol_kind","_Z3_get_symbol_int","_Z3_get_symbol_string","_Z3_get_sort_name","_Z3_get_sort_id","_Z3_sort_to_ast","_Z3_is_eq_sort","_Z3_get_sort_kind","_Z3_get_bv_sort_size","_Z3_get_finite_domain_sort_size","_Z3_get_array_arity","_Z3_get_array_sort_domain","_Z3_get_array_sort_domain_n","_Z3_get_array_sort_range","_Z3_get_tuple_sort_mk_decl","_Z3_get_tuple_sort_num_fields","_Z3_get_tuple_sort_field_decl","_Z3_is_recursive_datatype_sort","_Z3_get_datatype_sort_num_constructors","_Z3_get_datatype_sort_constructor","_Z3_get_datatype_sort_recognizer","_Z3_get_datatype_sort_constructor_accessor","_Z3_datatype_update_field","_Z3_get_relation_arity","_Z3_get_relation_column","_Z3_mk_atmost","_Z3_mk_atleast","_Z3_mk_pble","_Z3_mk_pbge","_Z3_mk_pbeq","_Z3_func_decl_to_ast","_Z3_is_eq_func_decl","_Z3_get_func_decl_id","_Z3_get_decl_name","_Z3_get_decl_kind","_Z3_get_domain_size","_Z3_get_arity","_Z3_get_domain","_Z3_get_range","_Z3_get_decl_num_parameters","_Z3_get_decl_parameter_kind","_Z3_get_decl_int_parameter","_Z3_get_decl_double_parameter","_Z3_get_decl_symbol_parameter","_Z3_get_decl_sort_parameter","_Z3_get_decl_ast_parameter","_Z3_get_decl_func_decl_parameter","_Z3_get_decl_rational_parameter","_Z3_app_to_ast","_Z3_get_app_decl","_Z3_get_app_num_args","_Z3_get_app_arg","_Z3_is_eq_ast","_Z3_get_ast_id","_Z3_get_ast_hash","_Z3_get_sort","_Z3_is_well_sorted","_Z3_get_bool_value","_Z3_get_ast_kind","_Z3_is_app","_Z3_is_ground","_Z3_get_depth","_Z3_is_numeral_ast","_Z3_is_algebraic_number","_Z3_to_app","_Z3_to_func_decl","_Z3_get_numeral_string","_Z3_get_numeral_binary_string","_Z3_get_numeral_decimal_string","_Z3_get_numeral_double","_Z3_get_numerator","_Z3_get_denominator","_Z3_get_numeral_small","_Z3_get_numeral_int","_Z3_get_numeral_uint","_Z3_get_numeral_uint64","_Z3_get_numeral_int64","_Z3_get_numeral_rational_int64","_Z3_get_algebraic_number_lower","_Z3_get_algebraic_number_upper","_Z3_pattern_to_ast","_Z3_get_pattern_num_terms","_Z3_get_pattern","_Z3_get_index_value","_Z3_is_quantifier_forall","_Z3_is_quantifier_exists","_Z3_is_lambda","_Z3_get_quantifier_weight","_Z3_get_quantifier_skolem_id","_Z3_get_quantifier_id","_Z3_get_quantifier_num_patterns","_Z3_get_quantifier_pattern_ast","_Z3_get_quantifier_num_no_patterns","_Z3_get_quantifier_no_pattern_ast","_Z3_get_quantifier_num_bound","_Z3_get_quantifier_bound_name","_Z3_get_quantifier_bound_sort","_Z3_get_quantifier_body","_Z3_simplify","_Z3_simplify_ex","_Z3_simplify_get_help","_Z3_simplify_get_param_descrs","_Z3_update_term","_Z3_substitute","_Z3_substitute_vars","_Z3_substitute_funs","_Z3_translate","_Z3_mk_model","_Z3_model_inc_ref","_Z3_model_dec_ref","_Z3_model_eval","_Z3_model_get_const_interp","_Z3_model_has_interp","_Z3_model_get_func_interp","_Z3_model_get_num_consts","_Z3_model_get_const_decl","_Z3_model_get_num_funcs","_Z3_model_get_func_decl","_Z3_model_get_num_sorts","_Z3_model_get_sort","_Z3_model_get_sort_universe","_Z3_model_translate","_Z3_is_as_array","_Z3_get_as_array_func_decl","_Z3_add_func_interp","_Z3_add_const_interp","_Z3_func_interp_inc_ref","_Z3_func_interp_dec_ref","_Z3_func_interp_get_num_entries","_Z3_func_interp_get_entry","_Z3_func_interp_get_else","_Z3_func_interp_set_else","_Z3_func_interp_get_arity","_Z3_func_interp_add_entry","_Z3_func_entry_inc_ref","_Z3_func_entry_dec_ref","_Z3_func_entry_get_value","_Z3_func_entry_get_num_args","_Z3_func_entry_get_arg","_Z3_open_log","_Z3_append_log","_Z3_close_log","_Z3_toggle_warning_messages","_Z3_set_ast_print_mode","_Z3_ast_to_string","_Z3_pattern_to_string","_Z3_sort_to_string","_Z3_func_decl_to_string","_Z3_model_to_string","_Z3_benchmark_to_smtlib_string","_Z3_parse_smtlib2_string","_Z3_parse_smtlib2_file","_Z3_eval_smtlib2_string","_Z3_mk_parser_context","_Z3_parser_context_inc_ref","_Z3_parser_context_dec_ref","_Z3_parser_context_add_sort","_Z3_parser_context_add_decl","_Z3_parser_context_from_string","_Z3_get_error_code","_Z3_set_error","_Z3_get_error_msg","_Z3_get_version","_Z3_get_full_version","_Z3_enable_trace","_Z3_disable_trace","_Z3_reset_memory","_Z3_finalize_memory","_Z3_mk_goal","_Z3_goal_inc_ref","_Z3_goal_dec_ref","_Z3_goal_precision","_Z3_goal_assert","_Z3_goal_inconsistent","_Z3_goal_depth","_Z3_goal_reset","_Z3_goal_size","_Z3_goal_formula","_Z3_goal_num_exprs","_Z3_goal_is_decided_sat","_Z3_goal_is_decided_unsat","_Z3_goal_translate","_Z3_goal_convert_model","_Z3_goal_to_string","_Z3_goal_to_dimacs_string","_Z3_mk_tactic","_Z3_tactic_inc_ref","_Z3_tactic_dec_ref","_Z3_mk_probe","_Z3_probe_inc_ref","_Z3_probe_dec_ref","_Z3_tactic_and_then","_Z3_tactic_or_else","_Z3_tactic_par_or","_Z3_tactic_par_and_then","_Z3_tactic_try_for","_Z3_tactic_when","_Z3_tactic_cond","_Z3_tactic_repeat","_Z3_tactic_skip","_Z3_tactic_fail","_Z3_tactic_fail_if","_Z3_tactic_fail_if_not_decided","_Z3_tactic_using_params","_Z3_mk_simplifier","_Z3_simplifier_inc_ref","_Z3_simplifier_dec_ref","_Z3_solver_add_simplifier","_Z3_simplifier_and_then","_Z3_simplifier_using_params","_Z3_get_num_simplifiers","_Z3_get_simplifier_name","_Z3_simplifier_get_help","_Z3_simplifier_get_param_descrs","_Z3_simplifier_get_descr","_Z3_probe_const","_Z3_probe_lt","_Z3_probe_gt","_Z3_probe_le","_Z3_probe_ge","_Z3_probe_eq","_Z3_probe_and","_Z3_probe_or","_Z3_probe_not","_Z3_get_num_tactics","_Z3_get_tactic_name","_Z3_get_num_probes","_Z3_get_probe_name","_Z3_tactic_get_help","_Z3_tactic_get_param_descrs","_Z3_tactic_get_descr","_Z3_probe_get_descr","_Z3_probe_apply","_Z3_tactic_apply","_Z3_tactic_apply_ex","_Z3_apply_result_inc_ref","_Z3_apply_result_dec_ref","_Z3_apply_result_to_string","_Z3_apply_result_get_num_subgoals","_Z3_apply_result_get_subgoal","_Z3_mk_solver","_Z3_mk_simple_solver","_Z3_mk_solver_for_logic","_Z3_mk_solver_from_tactic","_Z3_solver_translate","_Z3_solver_import_model_converter","_Z3_solver_get_help","_Z3_solver_get_param_descrs","_Z3_solver_set_params","_Z3_solver_inc_ref","_Z3_solver_dec_ref","_Z3_solver_interrupt","_Z3_solver_push","_Z3_solver_pop","_Z3_solver_reset","_Z3_solver_get_num_scopes","_Z3_solver_assert","_Z3_solver_assert_and_track","_Z3_solver_from_file","_Z3_solver_from_string","_Z3_solver_get_assertions","_Z3_solver_get_units","_Z3_solver_get_trail","_Z3_solver_get_non_units","_Z3_solver_get_levels","_Z3_solver_congruence_root","_Z3_solver_congruence_next","_Z3_solver_congruence_explain","_Z3_solver_solve_for","_Z3_solver_register_on_clause","_Z3_solver_propagate_init","_Z3_solver_propagate_fixed","_Z3_solver_propagate_final","_Z3_solver_propagate_eq","_Z3_solver_propagate_diseq","_Z3_solver_propagate_created","_Z3_solver_propagate_decide","_Z3_solver_propagate_on_binding","_Z3_solver_next_split","_Z3_solver_propagate_declare","_Z3_solver_propagate_register","_Z3_solver_propagate_register_cb","_Z3_solver_propagate_consequence","_Z3_solver_set_initial_value","_Z3_solver_check","_Z3_solver_check_assumptions","_Z3_get_implied_equalities","_Z3_solver_get_consequences","_Z3_solver_cube","_Z3_solver_get_model","_Z3_solver_get_proof","_Z3_solver_get_unsat_core","_Z3_solver_get_reason_unknown","_Z3_solver_get_statistics","_Z3_solver_to_string","_Z3_solver_to_dimacs_string","_Z3_stats_to_string","_Z3_stats_inc_ref","_Z3_stats_dec_ref","_Z3_stats_size","_Z3_stats_get_key","_Z3_stats_is_uint","_Z3_stats_is_double","_Z3_stats_get_uint_value","_Z3_stats_get_double_value","_Z3_get_estimated_alloc_size","_Z3_algebraic_is_value","_Z3_algebraic_is_pos","_Z3_algebraic_is_neg","_Z3_algebraic_is_zero","_Z3_algebraic_sign","_Z3_algebraic_add","_Z3_algebraic_sub","_Z3_algebraic_mul","_Z3_algebraic_div","_Z3_algebraic_root","_Z3_algebraic_power","_Z3_algebraic_lt","_Z3_algebraic_gt","_Z3_algebraic_le","_Z3_algebraic_ge","_Z3_algebraic_eq","_Z3_algebraic_neq","_Z3_algebraic_roots","_Z3_algebraic_eval","_Z3_algebraic_get_poly","_Z3_algebraic_get_i","_Z3_mk_ast_vector","_Z3_ast_vector_inc_ref","_Z3_ast_vector_dec_ref","_Z3_ast_vector_size","_Z3_ast_vector_get","_Z3_ast_vector_set","_Z3_ast_vector_resize","_Z3_ast_vector_push","_Z3_ast_vector_translate","_Z3_ast_vector_to_string","_Z3_mk_ast_map","_Z3_ast_map_inc_ref","_Z3_ast_map_dec_ref","_Z3_ast_map_contains","_Z3_ast_map_find","_Z3_ast_map_insert","_Z3_ast_map_erase","_Z3_ast_map_reset","_Z3_ast_map_size","_Z3_ast_map_keys","_Z3_ast_map_to_string","_Z3_mk_fixedpoint","_Z3_fixedpoint_inc_ref","_Z3_fixedpoint_dec_ref","_Z3_fixedpoint_add_rule","_Z3_fixedpoint_add_fact","_Z3_fixedpoint_assert","_Z3_fixedpoint_query","_Z3_fixedpoint_query_relations","_Z3_fixedpoint_get_answer","_Z3_fixedpoint_get_reason_unknown","_Z3_fixedpoint_update_rule","_Z3_fixedpoint_get_num_levels","_Z3_fixedpoint_get_cover_delta","_Z3_fixedpoint_add_cover","_Z3_fixedpoint_get_statistics","_Z3_fixedpoint_register_relation","_Z3_fixedpoint_set_predicate_representation","_Z3_fixedpoint_get_rules","_Z3_fixedpoint_get_assertions","_Z3_fixedpoint_set_params","_Z3_fixedpoint_get_help","_Z3_fixedpoint_get_param_descrs","_Z3_fixedpoint_to_string","_Z3_fixedpoint_from_string","_Z3_fixedpoint_from_file","_Z3_mk_fpa_rounding_mode_sort","_Z3_mk_fpa_round_nearest_ties_to_even","_Z3_mk_fpa_rne","_Z3_mk_fpa_round_nearest_ties_to_away","_Z3_mk_fpa_rna","_Z3_mk_fpa_round_toward_positive","_Z3_mk_fpa_rtp","_Z3_mk_fpa_round_toward_negative","_Z3_mk_fpa_rtn","_Z3_mk_fpa_round_toward_zero","_Z3_mk_fpa_rtz","_Z3_mk_fpa_sort","_Z3_mk_fpa_sort_half","_Z3_mk_fpa_sort_16","_Z3_mk_fpa_sort_single","_Z3_mk_fpa_sort_32","_Z3_mk_fpa_sort_double","_Z3_mk_fpa_sort_64","_Z3_mk_fpa_sort_quadruple","_Z3_mk_fpa_sort_128","_Z3_mk_fpa_nan","_Z3_mk_fpa_inf","_Z3_mk_fpa_zero","_Z3_mk_fpa_fp","_Z3_mk_fpa_numeral_float","_Z3_mk_fpa_numeral_double","_Z3_mk_fpa_numeral_int","_Z3_mk_fpa_numeral_int_uint","_Z3_mk_fpa_numeral_int64_uint64","_Z3_mk_fpa_abs","_Z3_mk_fpa_neg","_Z3_mk_fpa_add","_Z3_mk_fpa_sub","_Z3_mk_fpa_mul","_Z3_mk_fpa_div","_Z3_mk_fpa_fma","_Z3_mk_fpa_sqrt","_Z3_mk_fpa_rem","_Z3_mk_fpa_round_to_integral","_Z3_mk_fpa_min","_Z3_mk_fpa_max","_Z3_mk_fpa_leq","_Z3_mk_fpa_lt","_Z3_mk_fpa_geq","_Z3_mk_fpa_gt","_Z3_mk_fpa_eq","_Z3_mk_fpa_is_normal","_Z3_mk_fpa_is_subnormal","_Z3_mk_fpa_is_zero","_Z3_mk_fpa_is_infinite","_Z3_mk_fpa_is_nan","_Z3_mk_fpa_is_negative","_Z3_mk_fpa_is_positive","_Z3_mk_fpa_to_fp_bv","_Z3_mk_fpa_to_fp_float","_Z3_mk_fpa_to_fp_real","_Z3_mk_fpa_to_fp_signed","_Z3_mk_fpa_to_fp_unsigned","_Z3_mk_fpa_to_ubv","_Z3_mk_fpa_to_sbv","_Z3_mk_fpa_to_real","_Z3_fpa_get_ebits","_Z3_fpa_get_sbits","_Z3_fpa_is_numeral","_Z3_fpa_is_numeral_nan","_Z3_fpa_is_numeral_inf","_Z3_fpa_is_numeral_zero","_Z3_fpa_is_numeral_normal","_Z3_fpa_is_numeral_subnormal","_Z3_fpa_is_numeral_positive","_Z3_fpa_is_numeral_negative","_Z3_fpa_get_numeral_sign_bv","_Z3_fpa_get_numeral_significand_bv","_Z3_fpa_get_numeral_sign","_Z3_fpa_get_numeral_significand_string","_Z3_fpa_get_numeral_significand_uint64","_Z3_fpa_get_numeral_exponent_string","_Z3_fpa_get_numeral_exponent_int64","_Z3_fpa_get_numeral_exponent_bv","_Z3_mk_fpa_to_ieee_bv","_Z3_mk_fpa_to_fp_int_real","_Z3_mk_optimize","_Z3_optimize_inc_ref","_Z3_optimize_dec_ref","_Z3_optimize_assert","_Z3_optimize_assert_and_track","_Z3_optimize_assert_soft","_Z3_optimize_maximize","_Z3_optimize_minimize","_Z3_optimize_push","_Z3_optimize_pop","_Z3_optimize_set_initial_value","_Z3_optimize_check","_Z3_optimize_get_reason_unknown","_Z3_optimize_get_model","_Z3_optimize_get_unsat_core","_Z3_optimize_set_params","_Z3_optimize_get_param_descrs","_Z3_optimize_get_lower","_Z3_optimize_get_upper","_Z3_optimize_get_lower_as_vector","_Z3_optimize_get_upper_as_vector","_Z3_optimize_to_string","_Z3_optimize_from_string","_Z3_optimize_from_file","_Z3_optimize_get_help","_Z3_optimize_get_statistics","_Z3_optimize_get_assertions","_Z3_optimize_get_objectives","_Z3_optimize_translate","_Z3_polynomial_subresultants","_Z3_rcf_del","_Z3_rcf_mk_rational","_Z3_rcf_mk_small_int","_Z3_rcf_mk_pi","_Z3_rcf_mk_e","_Z3_rcf_mk_infinitesimal","_Z3_rcf_mk_roots","_Z3_rcf_add","_Z3_rcf_sub","_Z3_rcf_mul","_Z3_rcf_div","_Z3_rcf_neg","_Z3_rcf_inv","_Z3_rcf_power","_Z3_rcf_lt","_Z3_rcf_gt","_Z3_rcf_le","_Z3_rcf_ge","_Z3_rcf_eq","_Z3_rcf_neq","_Z3_rcf_num_to_string","_Z3_rcf_num_to_decimal_string","_Z3_rcf_get_numerator_denominator","_Z3_rcf_is_rational","_Z3_rcf_is_algebraic","_Z3_rcf_is_infinitesimal","_Z3_rcf_is_transcendental","_Z3_rcf_extension_index","_Z3_rcf_transcendental_name","_Z3_rcf_infinitesimal_name","_Z3_rcf_num_coefficients","_Z3_rcf_coefficient","_Z3_rcf_interval","_Z3_rcf_num_sign_conditions","_Z3_rcf_sign_condition_sign","_Z3_rcf_num_sign_condition_coefficients","_Z3_rcf_sign_condition_coefficient","_Z3_fixedpoint_query_from_lvl","_Z3_fixedpoint_get_ground_sat_answer","_Z3_fixedpoint_get_rules_along_trace","_Z3_fixedpoint_get_rule_names_along_trace","_Z3_fixedpoint_add_invariant","_Z3_fixedpoint_get_reachable","_Z3_qe_model_project","_Z3_qe_model_project_skolem","_Z3_qe_model_project_with_witness","_Z3_model_extrapolate","_Z3_qe_lite","getExceptionMessage","incrementExceptionRefcount","decrementExceptionRefcount","___indirect_function_table","onRuntimeInitialized"].forEach((prop) => {
7864
7982
  if (!Object.getOwnPropertyDescriptor(readyPromise, prop)) {
7865
7983
  Object.defineProperty(readyPromise, prop, {
7866
7984
  get: () => abort('You are getting ' + prop + ' on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js'),
@@ -9069,107 +9187,107 @@ function dbg(...args) {
9069
9187
  // === Body ===
9070
9188
 
9071
9189
  var ASM_CONSTS = {
9072
- 21603560: () => { return current_async_call_id; },
9073
- 21603594: ($0) => { reject_async($0, new Error("Memory allocation failed")); },
9074
- 21603655: () => { threadTimeouts.push(setTimeout(() => {}, 600000)); },
9075
- 21603710: () => { return current_async_call_id; },
9076
- 21603744: ($0) => { reject_async($0, new Error("Memory allocation failed")); },
9077
- 21603805: () => { threadTimeouts.push(setTimeout(() => {}, 600000)); },
9078
- 21603860: () => { return current_async_call_id; },
9079
- 21603894: ($0) => { reject_async($0, new Error("Memory allocation failed")); },
9080
- 21603955: () => { threadTimeouts.push(setTimeout(() => {}, 600000)); },
9081
- 21604010: () => { return current_async_call_id; },
9082
- 21604044: ($0) => { reject_async($0, new Error("Memory allocation failed")); },
9083
- 21604105: () => { threadTimeouts.push(setTimeout(() => {}, 600000)); },
9084
- 21604160: () => { return current_async_call_id; },
9085
- 21604194: ($0) => { reject_async($0, new Error("Memory allocation failed")); },
9086
- 21604255: () => { threadTimeouts.push(setTimeout(() => {}, 600000)); },
9087
- 21604310: ($0, $1) => { resolve_async($1, $0); },
9088
- 21604337: ($0) => { reject_async($0, new Error('failed with unknown exception')); },
9089
- 21604403: ($0, $1) => { reject_async($1, new Error(UTF8ToString($0))); },
9090
- 21604454: () => { clearTimeout(threadTimeouts.shift()); },
9091
- 21604496: ($0, $1) => { resolve_async($1, $0); },
9092
- 21604523: ($0) => { reject_async($0, new Error('failed with unknown exception')); },
9093
- 21604589: ($0, $1) => { reject_async($1, new Error(UTF8ToString($0))); },
9094
- 21604640: () => { clearTimeout(threadTimeouts.shift()); },
9095
- 21604682: ($0, $1) => { resolve_async($1, $0); },
9096
- 21604709: ($0) => { reject_async($0, new Error('failed with unknown exception')); },
9097
- 21604775: ($0, $1) => { reject_async($1, new Error(UTF8ToString($0))); },
9098
- 21604826: () => { clearTimeout(threadTimeouts.shift()); },
9099
- 21604868: ($0, $1) => { resolve_async($1, $0); },
9100
- 21604895: ($0) => { reject_async($0, new Error('failed with unknown exception')); },
9101
- 21604961: ($0, $1) => { reject_async($1, new Error(UTF8ToString($0))); },
9102
- 21605012: () => { clearTimeout(threadTimeouts.shift()); },
9103
- 21605054: ($0, $1) => { resolve_async($1, $0); },
9104
- 21605081: ($0) => { reject_async($0, new Error('failed with unknown exception')); },
9105
- 21605147: ($0, $1) => { reject_async($1, new Error(UTF8ToString($0))); },
9106
- 21605198: () => { clearTimeout(threadTimeouts.shift()); },
9107
- 21605240: () => { return current_async_call_id; },
9108
- 21605274: () => { threadTimeouts.push(setTimeout(() => {}, 600000)); },
9109
- 21605329: ($0, $1) => { resolve_async($1, UTF8ToString($0)); },
9110
- 21605370: ($0) => { reject_async($0, new Error('failed with unknown exception')); },
9111
- 21605436: ($0, $1) => { reject_async($1, new Error(UTF8ToString($0))); },
9112
- 21605487: () => { clearTimeout(threadTimeouts.shift()); },
9113
- 21605529: () => { return current_async_call_id; },
9114
- 21605563: () => { threadTimeouts.push(setTimeout(() => {}, 600000)); },
9115
- 21605618: ($0, $1) => { resolve_async($1, $0); },
9116
- 21605645: ($0) => { reject_async($0, new Error('failed with unknown exception')); },
9117
- 21605711: ($0, $1) => { reject_async($1, new Error(UTF8ToString($0))); },
9118
- 21605762: () => { clearTimeout(threadTimeouts.shift()); },
9119
- 21605804: () => { return current_async_call_id; },
9120
- 21605838: () => { threadTimeouts.push(setTimeout(() => {}, 600000)); },
9121
- 21605893: ($0, $1) => { resolve_async($1, $0); },
9122
- 21605920: ($0) => { reject_async($0, new Error('failed with unknown exception')); },
9123
- 21605986: ($0, $1) => { reject_async($1, new Error(UTF8ToString($0))); },
9124
- 21606037: () => { clearTimeout(threadTimeouts.shift()); },
9125
- 21606079: () => { return current_async_call_id; },
9126
- 21606113: () => { threadTimeouts.push(setTimeout(() => {}, 600000)); },
9127
- 21606168: ($0, $1) => { resolve_async($1, $0); },
9128
- 21606195: ($0) => { reject_async($0, new Error('failed with unknown exception')); },
9129
- 21606261: ($0, $1) => { reject_async($1, new Error(UTF8ToString($0))); },
9130
- 21606312: () => { clearTimeout(threadTimeouts.shift()); },
9131
- 21606354: () => { return current_async_call_id; },
9132
- 21606388: () => { threadTimeouts.push(setTimeout(() => {}, 600000)); },
9133
- 21606443: ($0, $1) => { resolve_async($1, $0); },
9134
- 21606470: ($0) => { reject_async($0, new Error('failed with unknown exception')); },
9135
- 21606536: ($0, $1) => { reject_async($1, new Error(UTF8ToString($0))); },
9136
- 21606587: () => { clearTimeout(threadTimeouts.shift()); },
9137
- 21606629: () => { return current_async_call_id; },
9138
- 21606663: () => { threadTimeouts.push(setTimeout(() => {}, 600000)); },
9139
- 21606718: ($0, $1) => { resolve_async($1, $0); },
9140
- 21606745: ($0) => { reject_async($0, new Error('failed with unknown exception')); },
9141
- 21606811: ($0, $1) => { reject_async($1, new Error(UTF8ToString($0))); },
9142
- 21606862: () => { clearTimeout(threadTimeouts.shift()); },
9143
- 21606904: () => { return current_async_call_id; },
9144
- 21606938: () => { threadTimeouts.push(setTimeout(() => {}, 600000)); },
9145
- 21606993: ($0, $1) => { resolve_async($1, $0); },
9146
- 21607020: ($0) => { reject_async($0, new Error('failed with unknown exception')); },
9147
- 21607086: ($0, $1) => { reject_async($1, new Error(UTF8ToString($0))); },
9148
- 21607137: () => { clearTimeout(threadTimeouts.shift()); },
9149
- 21607179: () => { return current_async_call_id; },
9150
- 21607213: () => { threadTimeouts.push(setTimeout(() => {}, 600000)); },
9151
- 21607268: ($0, $1) => { resolve_async($1, $0); },
9152
- 21607295: ($0) => { reject_async($0, new Error('failed with unknown exception')); },
9153
- 21607361: ($0, $1) => { reject_async($1, new Error(UTF8ToString($0))); },
9154
- 21607412: () => { clearTimeout(threadTimeouts.shift()); },
9155
- 21607454: () => { return current_async_call_id; },
9156
- 21607488: () => { threadTimeouts.push(setTimeout(() => {}, 600000)); },
9157
- 21607543: ($0, $1) => { resolve_async($1, $0); },
9158
- 21607570: ($0) => { reject_async($0, new Error('failed with unknown exception')); },
9159
- 21607636: ($0, $1) => { reject_async($1, new Error(UTF8ToString($0))); },
9160
- 21607687: () => { clearTimeout(threadTimeouts.shift()); },
9161
- 21607729: () => { return current_async_call_id; },
9162
- 21607763: () => { threadTimeouts.push(setTimeout(() => {}, 600000)); },
9163
- 21607818: ($0, $1) => { resolve_async($1, $0); },
9164
- 21607845: ($0) => { reject_async($0, new Error('failed with unknown exception')); },
9165
- 21607911: ($0, $1) => { reject_async($1, new Error(UTF8ToString($0))); },
9166
- 21607962: () => { clearTimeout(threadTimeouts.shift()); },
9167
- 21608004: () => { return current_async_call_id; },
9168
- 21608038: () => { threadTimeouts.push(setTimeout(() => {}, 600000)); },
9169
- 21608093: ($0, $1) => { resolve_async($1, $0); },
9170
- 21608120: ($0) => { reject_async($0, new Error('failed with unknown exception')); },
9171
- 21608186: ($0, $1) => { reject_async($1, new Error(UTF8ToString($0))); },
9172
- 21608237: () => { clearTimeout(threadTimeouts.shift()); }
9190
+ 21612216: () => { return current_async_call_id; },
9191
+ 21612250: ($0) => { reject_async($0, new Error("Memory allocation failed")); },
9192
+ 21612311: () => { threadTimeouts.push(setTimeout(() => {}, 600000)); },
9193
+ 21612366: () => { return current_async_call_id; },
9194
+ 21612400: ($0) => { reject_async($0, new Error("Memory allocation failed")); },
9195
+ 21612461: () => { threadTimeouts.push(setTimeout(() => {}, 600000)); },
9196
+ 21612516: () => { return current_async_call_id; },
9197
+ 21612550: ($0) => { reject_async($0, new Error("Memory allocation failed")); },
9198
+ 21612611: () => { threadTimeouts.push(setTimeout(() => {}, 600000)); },
9199
+ 21612666: () => { return current_async_call_id; },
9200
+ 21612700: ($0) => { reject_async($0, new Error("Memory allocation failed")); },
9201
+ 21612761: () => { threadTimeouts.push(setTimeout(() => {}, 600000)); },
9202
+ 21612816: () => { return current_async_call_id; },
9203
+ 21612850: ($0) => { reject_async($0, new Error("Memory allocation failed")); },
9204
+ 21612911: () => { threadTimeouts.push(setTimeout(() => {}, 600000)); },
9205
+ 21612966: ($0, $1) => { resolve_async($1, $0); },
9206
+ 21612993: ($0) => { reject_async($0, new Error('failed with unknown exception')); },
9207
+ 21613059: ($0, $1) => { reject_async($1, new Error(UTF8ToString($0))); },
9208
+ 21613110: () => { clearTimeout(threadTimeouts.shift()); },
9209
+ 21613152: ($0, $1) => { resolve_async($1, $0); },
9210
+ 21613179: ($0) => { reject_async($0, new Error('failed with unknown exception')); },
9211
+ 21613245: ($0, $1) => { reject_async($1, new Error(UTF8ToString($0))); },
9212
+ 21613296: () => { clearTimeout(threadTimeouts.shift()); },
9213
+ 21613338: ($0, $1) => { resolve_async($1, $0); },
9214
+ 21613365: ($0) => { reject_async($0, new Error('failed with unknown exception')); },
9215
+ 21613431: ($0, $1) => { reject_async($1, new Error(UTF8ToString($0))); },
9216
+ 21613482: () => { clearTimeout(threadTimeouts.shift()); },
9217
+ 21613524: ($0, $1) => { resolve_async($1, $0); },
9218
+ 21613551: ($0) => { reject_async($0, new Error('failed with unknown exception')); },
9219
+ 21613617: ($0, $1) => { reject_async($1, new Error(UTF8ToString($0))); },
9220
+ 21613668: () => { clearTimeout(threadTimeouts.shift()); },
9221
+ 21613710: ($0, $1) => { resolve_async($1, $0); },
9222
+ 21613737: ($0) => { reject_async($0, new Error('failed with unknown exception')); },
9223
+ 21613803: ($0, $1) => { reject_async($1, new Error(UTF8ToString($0))); },
9224
+ 21613854: () => { clearTimeout(threadTimeouts.shift()); },
9225
+ 21613896: () => { return current_async_call_id; },
9226
+ 21613930: () => { threadTimeouts.push(setTimeout(() => {}, 600000)); },
9227
+ 21613985: ($0, $1) => { resolve_async($1, UTF8ToString($0)); },
9228
+ 21614026: ($0) => { reject_async($0, new Error('failed with unknown exception')); },
9229
+ 21614092: ($0, $1) => { reject_async($1, new Error(UTF8ToString($0))); },
9230
+ 21614143: () => { clearTimeout(threadTimeouts.shift()); },
9231
+ 21614185: () => { return current_async_call_id; },
9232
+ 21614219: () => { threadTimeouts.push(setTimeout(() => {}, 600000)); },
9233
+ 21614274: ($0, $1) => { resolve_async($1, $0); },
9234
+ 21614301: ($0) => { reject_async($0, new Error('failed with unknown exception')); },
9235
+ 21614367: ($0, $1) => { reject_async($1, new Error(UTF8ToString($0))); },
9236
+ 21614418: () => { clearTimeout(threadTimeouts.shift()); },
9237
+ 21614460: () => { return current_async_call_id; },
9238
+ 21614494: () => { threadTimeouts.push(setTimeout(() => {}, 600000)); },
9239
+ 21614549: ($0, $1) => { resolve_async($1, $0); },
9240
+ 21614576: ($0) => { reject_async($0, new Error('failed with unknown exception')); },
9241
+ 21614642: ($0, $1) => { reject_async($1, new Error(UTF8ToString($0))); },
9242
+ 21614693: () => { clearTimeout(threadTimeouts.shift()); },
9243
+ 21614735: () => { return current_async_call_id; },
9244
+ 21614769: () => { threadTimeouts.push(setTimeout(() => {}, 600000)); },
9245
+ 21614824: ($0, $1) => { resolve_async($1, $0); },
9246
+ 21614851: ($0) => { reject_async($0, new Error('failed with unknown exception')); },
9247
+ 21614917: ($0, $1) => { reject_async($1, new Error(UTF8ToString($0))); },
9248
+ 21614968: () => { clearTimeout(threadTimeouts.shift()); },
9249
+ 21615010: () => { return current_async_call_id; },
9250
+ 21615044: () => { threadTimeouts.push(setTimeout(() => {}, 600000)); },
9251
+ 21615099: ($0, $1) => { resolve_async($1, $0); },
9252
+ 21615126: ($0) => { reject_async($0, new Error('failed with unknown exception')); },
9253
+ 21615192: ($0, $1) => { reject_async($1, new Error(UTF8ToString($0))); },
9254
+ 21615243: () => { clearTimeout(threadTimeouts.shift()); },
9255
+ 21615285: () => { return current_async_call_id; },
9256
+ 21615319: () => { threadTimeouts.push(setTimeout(() => {}, 600000)); },
9257
+ 21615374: ($0, $1) => { resolve_async($1, $0); },
9258
+ 21615401: ($0) => { reject_async($0, new Error('failed with unknown exception')); },
9259
+ 21615467: ($0, $1) => { reject_async($1, new Error(UTF8ToString($0))); },
9260
+ 21615518: () => { clearTimeout(threadTimeouts.shift()); },
9261
+ 21615560: () => { return current_async_call_id; },
9262
+ 21615594: () => { threadTimeouts.push(setTimeout(() => {}, 600000)); },
9263
+ 21615649: ($0, $1) => { resolve_async($1, $0); },
9264
+ 21615676: ($0) => { reject_async($0, new Error('failed with unknown exception')); },
9265
+ 21615742: ($0, $1) => { reject_async($1, new Error(UTF8ToString($0))); },
9266
+ 21615793: () => { clearTimeout(threadTimeouts.shift()); },
9267
+ 21615835: () => { return current_async_call_id; },
9268
+ 21615869: () => { threadTimeouts.push(setTimeout(() => {}, 600000)); },
9269
+ 21615924: ($0, $1) => { resolve_async($1, $0); },
9270
+ 21615951: ($0) => { reject_async($0, new Error('failed with unknown exception')); },
9271
+ 21616017: ($0, $1) => { reject_async($1, new Error(UTF8ToString($0))); },
9272
+ 21616068: () => { clearTimeout(threadTimeouts.shift()); },
9273
+ 21616110: () => { return current_async_call_id; },
9274
+ 21616144: () => { threadTimeouts.push(setTimeout(() => {}, 600000)); },
9275
+ 21616199: ($0, $1) => { resolve_async($1, $0); },
9276
+ 21616226: ($0) => { reject_async($0, new Error('failed with unknown exception')); },
9277
+ 21616292: ($0, $1) => { reject_async($1, new Error(UTF8ToString($0))); },
9278
+ 21616343: () => { clearTimeout(threadTimeouts.shift()); },
9279
+ 21616385: () => { return current_async_call_id; },
9280
+ 21616419: () => { threadTimeouts.push(setTimeout(() => {}, 600000)); },
9281
+ 21616474: ($0, $1) => { resolve_async($1, $0); },
9282
+ 21616501: ($0) => { reject_async($0, new Error('failed with unknown exception')); },
9283
+ 21616567: ($0, $1) => { reject_async($1, new Error(UTF8ToString($0))); },
9284
+ 21616618: () => { clearTimeout(threadTimeouts.shift()); },
9285
+ 21616660: () => { return current_async_call_id; },
9286
+ 21616694: () => { threadTimeouts.push(setTimeout(() => {}, 600000)); },
9287
+ 21616749: ($0, $1) => { resolve_async($1, $0); },
9288
+ 21616776: ($0) => { reject_async($0, new Error('failed with unknown exception')); },
9289
+ 21616842: ($0, $1) => { reject_async($1, new Error(UTF8ToString($0))); },
9290
+ 21616893: () => { clearTimeout(threadTimeouts.shift()); }
9173
9291
  };
9174
9292
 
9175
9293
  // end include: preamble.js
@@ -13901,8 +14019,12 @@ function assignWasmImports() {
13901
14019
  /** @export */
13902
14020
  invoke_iiiiij,
13903
14021
  /** @export */
14022
+ invoke_iiiiji,
14023
+ /** @export */
13904
14024
  invoke_iiij,
13905
14025
  /** @export */
14026
+ invoke_iiiji,
14027
+ /** @export */
13906
14028
  invoke_iij,
13907
14029
  /** @export */
13908
14030
  invoke_iiji,
@@ -14058,10 +14180,14 @@ var _Z3_is_algebraic_number = Module['_Z3_is_algebraic_number'] = createExportWr
14058
14180
  var _Z3_algebraic_get_i = Module['_Z3_algebraic_get_i'] = createExportWrapper('Z3_algebraic_get_i', 2);
14059
14181
  var _Z3_mk_int_sort = Module['_Z3_mk_int_sort'] = createExportWrapper('Z3_mk_int_sort', 1);
14060
14182
  var _Z3_mk_real_sort = Module['_Z3_mk_real_sort'] = createExportWrapper('Z3_mk_real_sort', 1);
14183
+ var _Z3_mk_complex_sort = Module['_Z3_mk_complex_sort'] = createExportWrapper('Z3_mk_complex_sort', 1);
14061
14184
  var _Z3_mk_real_int64 = Module['_Z3_mk_real_int64'] = createExportWrapper('Z3_mk_real_int64', 3);
14062
14185
  var _Z3_mk_real = Module['_Z3_mk_real'] = createExportWrapper('Z3_mk_real', 3);
14063
14186
  var _Z3_mk_add = Module['_Z3_mk_add'] = createExportWrapper('Z3_mk_add', 3);
14064
14187
  var _Z3_mk_mul = Module['_Z3_mk_mul'] = createExportWrapper('Z3_mk_mul', 3);
14188
+ var _Z3_mk_complex = Module['_Z3_mk_complex'] = createExportWrapper('Z3_mk_complex', 3);
14189
+ var _Z3_mk_real_part = Module['_Z3_mk_real_part'] = createExportWrapper('Z3_mk_real_part', 2);
14190
+ var _Z3_mk_imag_part = Module['_Z3_mk_imag_part'] = createExportWrapper('Z3_mk_imag_part', 2);
14065
14191
  var _Z3_mk_power = Module['_Z3_mk_power'] = createExportWrapper('Z3_mk_power', 3);
14066
14192
  var _Z3_mk_mod = Module['_Z3_mk_mod'] = createExportWrapper('Z3_mk_mod', 3);
14067
14193
  var _Z3_mk_rem = Module['_Z3_mk_rem'] = createExportWrapper('Z3_mk_rem', 3);
@@ -14267,6 +14393,7 @@ var _Z3_update_param_value = Module['_Z3_update_param_value'] = createExportWrap
14267
14393
  var _Z3_mk_context = Module['_Z3_mk_context'] = createExportWrapper('Z3_mk_context', 1);
14268
14394
  var _Z3_mk_context_rc = Module['_Z3_mk_context_rc'] = createExportWrapper('Z3_mk_context_rc', 1);
14269
14395
  var _Z3_del_context = Module['_Z3_del_context'] = createExportWrapper('Z3_del_context', 1);
14396
+ var _Z3_set_proof_check_callback = Module['_Z3_set_proof_check_callback'] = createExportWrapper('Z3_set_proof_check_callback', 3);
14270
14397
  var _Z3_interrupt = Module['_Z3_interrupt'] = createExportWrapper('Z3_interrupt', 1);
14271
14398
  var _Z3_enable_concurrent_dec_ref = Module['_Z3_enable_concurrent_dec_ref'] = createExportWrapper('Z3_enable_concurrent_dec_ref', 1);
14272
14399
  var _Z3_toggle_warning_messages = Module['_Z3_toggle_warning_messages'] = createExportWrapper('Z3_toggle_warning_messages', 1);
@@ -15494,6 +15621,28 @@ function invoke_di(index,a1) {
15494
15621
  }
15495
15622
  }
15496
15623
 
15624
+ function invoke_iiiiji(index,a1,a2,a3,a4,a5) {
15625
+ var sp = stackSave();
15626
+ try {
15627
+ return getWasmTableEntry(index)(a1,a2,a3,a4,a5);
15628
+ } catch(e) {
15629
+ stackRestore(sp);
15630
+ if (!(e instanceof EmscriptenEH)) throw e;
15631
+ _setThrew(1, 0);
15632
+ }
15633
+ }
15634
+
15635
+ function invoke_iiiji(index,a1,a2,a3,a4) {
15636
+ var sp = stackSave();
15637
+ try {
15638
+ return getWasmTableEntry(index)(a1,a2,a3,a4);
15639
+ } catch(e) {
15640
+ stackRestore(sp);
15641
+ if (!(e instanceof EmscriptenEH)) throw e;
15642
+ _setThrew(1, 0);
15643
+ }
15644
+ }
15645
+
15497
15646
  function invoke_iiiiiiiiiiiii(index,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12) {
15498
15647
  var sp = stackSave();
15499
15648
  try {