@ton/sandbox 0.41.0 → 0.43.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 (36) hide show
  1. package/dist/blockchain/Blockchain.d.ts +1 -6
  2. package/dist/blockchain/Blockchain.js +0 -15
  3. package/dist/blockchain/SmartContract.d.ts +0 -3
  4. package/dist/blockchain/SmartContract.js +1 -39
  5. package/dist/config/config.tlb-gen.d.ts +69 -18
  6. package/dist/config/config.tlb-gen.js +273 -53
  7. package/dist/config/defaultConfig.d.ts +2 -2
  8. package/dist/config/defaultConfig.js +2 -2
  9. package/dist/config/slimConfig.d.ts +2 -2
  10. package/dist/config/slimConfig.js +2 -2
  11. package/dist/executor/Executor.d.ts +1 -37
  12. package/dist/executor/Executor.js +3 -160
  13. package/dist/executor/emulator-emscripten.js +1 -1
  14. package/dist/executor/emulator-emscripten.wasm.js +1 -1
  15. package/dist/index.d.ts +0 -1
  16. package/dist/index.js +1 -3
  17. package/package.json +4 -6
  18. package/CHANGELOG.md +0 -531
  19. package/dist/debugger/DebugContext.d.ts +0 -14
  20. package/dist/debugger/DebugContext.js +0 -29
  21. package/dist/debugger/DebugInfoCache.d.ts +0 -9
  22. package/dist/debugger/DebugInfoCache.js +0 -87
  23. package/dist/debugger/Debuggee.d.ts +0 -147
  24. package/dist/debugger/Debuggee.js +0 -451
  25. package/dist/debugger/TVMDebugSession.d.ts +0 -26
  26. package/dist/debugger/TVMDebugSession.js +0 -272
  27. package/dist/debugger/debug.d.ts +0 -4
  28. package/dist/debugger/debug.js +0 -76
  29. package/dist/debugger/index.d.ts +0 -1
  30. package/dist/debugger/index.js +0 -5
  31. package/dist/debugger/marks.d.ts +0 -2
  32. package/dist/debugger/marks.js +0 -127
  33. package/dist/executor/emulator-emscripten.debugger.bpatch.gzip.js +0 -1
  34. package/dist/executor/emulator-emscripten.debugger.js +0 -20
  35. package/dist/utils/bpatch.d.ts +0 -9
  36. package/dist/utils/bpatch.js +0 -52
@@ -71,6 +71,8 @@ exports.loadGasLimitsPrices = loadGasLimitsPrices;
71
71
  exports.storeGasLimitsPrices = storeGasLimitsPrices;
72
72
  exports.loadParamLimits = loadParamLimits;
73
73
  exports.storeParamLimits = storeParamLimits;
74
+ exports.loadImportedMsgQueueLimits = loadImportedMsgQueueLimits;
75
+ exports.storeImportedMsgQueueLimits = storeImportedMsgQueueLimits;
74
76
  exports.loadBlockLimits = loadBlockLimits;
75
77
  exports.storeBlockLimits = storeBlockLimits;
76
78
  exports.loadMsgForwardPrices = loadMsgForwardPrices;
@@ -79,6 +81,10 @@ exports.loadCatchainConfig = loadCatchainConfig;
79
81
  exports.storeCatchainConfig = storeCatchainConfig;
80
82
  exports.loadConsensusConfig = loadConsensusConfig;
81
83
  exports.storeConsensusConfig = storeConsensusConfig;
84
+ exports.loadNewConsensusConfig = loadNewConsensusConfig;
85
+ exports.storeNewConsensusConfig = storeNewConsensusConfig;
86
+ exports.loadNewConsensusConfigAll = loadNewConsensusConfigAll;
87
+ exports.storeNewConsensusConfigAll = storeNewConsensusConfigAll;
82
88
  exports.loadValidatorTempKey = loadValidatorTempKey;
83
89
  exports.storeValidatorTempKey = storeValidatorTempKey;
84
90
  exports.loadValidatorSignedTempKey = loadValidatorSignedTempKey;
@@ -778,6 +784,7 @@ _ max_validators:(## 16) max_main_validators:(## 16) min_validators:(## 16)
778
784
  // config_fwd_prices#_ MsgForwardPrices = ConfigParam 25;
779
785
  // _ CatchainConfig = ConfigParam 28;
780
786
  // _ ConsensusConfig = ConfigParam 29;
787
+ // _ NewConsensusConfigAll = ConfigParam 30;
781
788
  // _ fundamental_smc_addr:(HashmapE 256 True) = ConfigParam 31;
782
789
  // _ prev_validators:ValidatorSet = ConfigParam 32;
783
790
  // _ prev_temp_validators:ValidatorSet = ConfigParam 33;
@@ -1032,55 +1039,62 @@ function loadConfigParam(slice, arg0) {
1032
1039
  anon0: anon0,
1033
1040
  };
1034
1041
  }
1042
+ if ((arg0 == 30)) {
1043
+ let anon0 = loadNewConsensusConfigAll(slice);
1044
+ return {
1045
+ kind: 'ConfigParam__28',
1046
+ anon0: anon0,
1047
+ };
1048
+ }
1035
1049
  if ((arg0 == 31)) {
1036
1050
  let fundamental_smc_addr = core_2.Dictionary.load(core_2.Dictionary.Keys.BigUint(256), {
1037
1051
  serialize: () => { throw new Error('Not implemented'); },
1038
1052
  parse: loadTrue,
1039
1053
  }, slice);
1040
1054
  return {
1041
- kind: 'ConfigParam__28',
1055
+ kind: 'ConfigParam__29',
1042
1056
  fundamental_smc_addr: fundamental_smc_addr,
1043
1057
  };
1044
1058
  }
1045
1059
  if ((arg0 == 32)) {
1046
1060
  let prev_validators = loadValidatorSet(slice);
1047
1061
  return {
1048
- kind: 'ConfigParam__29',
1062
+ kind: 'ConfigParam__30',
1049
1063
  prev_validators: prev_validators,
1050
1064
  };
1051
1065
  }
1052
1066
  if ((arg0 == 33)) {
1053
1067
  let prev_temp_validators = loadValidatorSet(slice);
1054
1068
  return {
1055
- kind: 'ConfigParam__30',
1069
+ kind: 'ConfigParam__31',
1056
1070
  prev_temp_validators: prev_temp_validators,
1057
1071
  };
1058
1072
  }
1059
1073
  if ((arg0 == 34)) {
1060
1074
  let cur_validators = loadValidatorSet(slice);
1061
1075
  return {
1062
- kind: 'ConfigParam__31',
1076
+ kind: 'ConfigParam__32',
1063
1077
  cur_validators: cur_validators,
1064
1078
  };
1065
1079
  }
1066
1080
  if ((arg0 == 35)) {
1067
1081
  let cur_temp_validators = loadValidatorSet(slice);
1068
1082
  return {
1069
- kind: 'ConfigParam__32',
1083
+ kind: 'ConfigParam__33',
1070
1084
  cur_temp_validators: cur_temp_validators,
1071
1085
  };
1072
1086
  }
1073
1087
  if ((arg0 == 36)) {
1074
1088
  let next_validators = loadValidatorSet(slice);
1075
1089
  return {
1076
- kind: 'ConfigParam__33',
1090
+ kind: 'ConfigParam__34',
1077
1091
  next_validators: next_validators,
1078
1092
  };
1079
1093
  }
1080
1094
  if ((arg0 == 37)) {
1081
1095
  let next_temp_validators = loadValidatorSet(slice);
1082
1096
  return {
1083
- kind: 'ConfigParam__34',
1097
+ kind: 'ConfigParam__35',
1084
1098
  next_temp_validators: next_temp_validators,
1085
1099
  };
1086
1100
  }
@@ -1090,81 +1104,81 @@ function loadConfigParam(slice, arg0) {
1090
1104
  parse: loadValidatorSignedTempKey,
1091
1105
  }, slice);
1092
1106
  return {
1093
- kind: 'ConfigParam__35',
1107
+ kind: 'ConfigParam__36',
1094
1108
  anon0: anon0,
1095
1109
  };
1096
1110
  }
1097
1111
  if ((arg0 == 40)) {
1098
1112
  let anon0 = loadMisbehaviourPunishmentConfig(slice);
1099
1113
  return {
1100
- kind: 'ConfigParam__36',
1114
+ kind: 'ConfigParam__37',
1101
1115
  anon0: anon0,
1102
1116
  };
1103
1117
  }
1104
1118
  if ((arg0 == 43)) {
1105
1119
  let anon0 = loadSizeLimitsConfig(slice);
1106
1120
  return {
1107
- kind: 'ConfigParam__37',
1121
+ kind: 'ConfigParam__38',
1108
1122
  anon0: anon0,
1109
1123
  };
1110
1124
  }
1111
1125
  if ((arg0 == 44)) {
1112
1126
  let anon0 = loadSuspendedAddressList(slice);
1113
1127
  return {
1114
- kind: 'ConfigParam__38',
1128
+ kind: 'ConfigParam__39',
1115
1129
  anon0: anon0,
1116
1130
  };
1117
1131
  }
1118
1132
  if ((arg0 == 45)) {
1119
1133
  let anon0 = loadPrecompiledContractsConfig(slice);
1120
1134
  return {
1121
- kind: 'ConfigParam__39',
1135
+ kind: 'ConfigParam__40',
1122
1136
  anon0: anon0,
1123
1137
  };
1124
1138
  }
1125
1139
  if ((arg0 == 71)) {
1126
1140
  let anon0 = loadOracleBridgeParams(slice);
1127
1141
  return {
1128
- kind: 'ConfigParam__40',
1142
+ kind: 'ConfigParam__41',
1129
1143
  anon0: anon0,
1130
1144
  };
1131
1145
  }
1132
1146
  if ((arg0 == 72)) {
1133
1147
  let anon0 = loadOracleBridgeParams(slice);
1134
1148
  return {
1135
- kind: 'ConfigParam__41',
1149
+ kind: 'ConfigParam__42',
1136
1150
  anon0: anon0,
1137
1151
  };
1138
1152
  }
1139
1153
  if ((arg0 == 73)) {
1140
1154
  let anon0 = loadOracleBridgeParams(slice);
1141
1155
  return {
1142
- kind: 'ConfigParam__42',
1156
+ kind: 'ConfigParam__43',
1143
1157
  anon0: anon0,
1144
1158
  };
1145
1159
  }
1146
1160
  if ((arg0 == 79)) {
1147
1161
  let anon0 = loadJettonBridgeParams(slice);
1148
1162
  return {
1149
- kind: 'ConfigParam__43',
1163
+ kind: 'ConfigParam__44',
1150
1164
  anon0: anon0,
1151
1165
  };
1152
1166
  }
1153
1167
  if ((arg0 == 81)) {
1154
1168
  let anon0 = loadJettonBridgeParams(slice);
1155
1169
  return {
1156
- kind: 'ConfigParam__44',
1170
+ kind: 'ConfigParam__45',
1157
1171
  anon0: anon0,
1158
1172
  };
1159
1173
  }
1160
1174
  if ((arg0 == 82)) {
1161
1175
  let anon0 = loadJettonBridgeParams(slice);
1162
1176
  return {
1163
- kind: 'ConfigParam__45',
1177
+ kind: 'ConfigParam__46',
1164
1178
  anon0: anon0,
1165
1179
  };
1166
1180
  }
1167
- throw new Error('Expected one of "ConfigParam__", "ConfigParam__1", "ConfigParam__2", "ConfigParam__3", "ConfigParam__4", "ConfigParam__5", "ConfigParam__6", "ConfigParam__7", "ConfigParam__8", "ConfigParam__9", "ConfigParam__10", "ConfigParam__11", "ConfigParam__12", "ConfigParam__13", "ConfigParam__14", "ConfigParam__15", "ConfigParam__16", "ConfigParam__17", "ConfigParam__18", "ConfigParam__19", "ConfigParam_config_mc_gas_prices", "ConfigParam_config_gas_prices", "ConfigParam_config_mc_block_limits", "ConfigParam_config_block_limits", "ConfigParam_config_mc_fwd_prices", "ConfigParam_config_fwd_prices", "ConfigParam__26", "ConfigParam__27", "ConfigParam__28", "ConfigParam__29", "ConfigParam__30", "ConfigParam__31", "ConfigParam__32", "ConfigParam__33", "ConfigParam__34", "ConfigParam__35", "ConfigParam__36", "ConfigParam__37", "ConfigParam__38", "ConfigParam__39", "ConfigParam__40", "ConfigParam__41", "ConfigParam__42", "ConfigParam__43", "ConfigParam__44", "ConfigParam__45" in loading "ConfigParam", but data does not satisfy any constructor');
1181
+ throw new Error('Expected one of "ConfigParam__", "ConfigParam__1", "ConfigParam__2", "ConfigParam__3", "ConfigParam__4", "ConfigParam__5", "ConfigParam__6", "ConfigParam__7", "ConfigParam__8", "ConfigParam__9", "ConfigParam__10", "ConfigParam__11", "ConfigParam__12", "ConfigParam__13", "ConfigParam__14", "ConfigParam__15", "ConfigParam__16", "ConfigParam__17", "ConfigParam__18", "ConfigParam__19", "ConfigParam_config_mc_gas_prices", "ConfigParam_config_gas_prices", "ConfigParam_config_mc_block_limits", "ConfigParam_config_block_limits", "ConfigParam_config_mc_fwd_prices", "ConfigParam_config_fwd_prices", "ConfigParam__26", "ConfigParam__27", "ConfigParam__28", "ConfigParam__29", "ConfigParam__30", "ConfigParam__31", "ConfigParam__32", "ConfigParam__33", "ConfigParam__34", "ConfigParam__35", "ConfigParam__36", "ConfigParam__37", "ConfigParam__38", "ConfigParam__39", "ConfigParam__40", "ConfigParam__41", "ConfigParam__42", "ConfigParam__43", "ConfigParam__44", "ConfigParam__45", "ConfigParam__46" in loading "ConfigParam", but data does not satisfy any constructor');
1168
1182
  }
1169
1183
  function storeConfigParam(configParam) {
1170
1184
  if ((configParam.kind == 'ConfigParam__')) {
@@ -1346,6 +1360,11 @@ function storeConfigParam(configParam) {
1346
1360
  });
1347
1361
  }
1348
1362
  if ((configParam.kind == 'ConfigParam__28')) {
1363
+ return ((builder) => {
1364
+ storeNewConsensusConfigAll(configParam.anon0)(builder);
1365
+ });
1366
+ }
1367
+ if ((configParam.kind == 'ConfigParam__29')) {
1349
1368
  return ((builder) => {
1350
1369
  builder.storeDict(configParam.fundamental_smc_addr, core_2.Dictionary.Keys.BigUint(256), {
1351
1370
  serialize: ((arg, builder) => {
@@ -1355,37 +1374,37 @@ function storeConfigParam(configParam) {
1355
1374
  });
1356
1375
  });
1357
1376
  }
1358
- if ((configParam.kind == 'ConfigParam__29')) {
1377
+ if ((configParam.kind == 'ConfigParam__30')) {
1359
1378
  return ((builder) => {
1360
1379
  storeValidatorSet(configParam.prev_validators)(builder);
1361
1380
  });
1362
1381
  }
1363
- if ((configParam.kind == 'ConfigParam__30')) {
1382
+ if ((configParam.kind == 'ConfigParam__31')) {
1364
1383
  return ((builder) => {
1365
1384
  storeValidatorSet(configParam.prev_temp_validators)(builder);
1366
1385
  });
1367
1386
  }
1368
- if ((configParam.kind == 'ConfigParam__31')) {
1387
+ if ((configParam.kind == 'ConfigParam__32')) {
1369
1388
  return ((builder) => {
1370
1389
  storeValidatorSet(configParam.cur_validators)(builder);
1371
1390
  });
1372
1391
  }
1373
- if ((configParam.kind == 'ConfigParam__32')) {
1392
+ if ((configParam.kind == 'ConfigParam__33')) {
1374
1393
  return ((builder) => {
1375
1394
  storeValidatorSet(configParam.cur_temp_validators)(builder);
1376
1395
  });
1377
1396
  }
1378
- if ((configParam.kind == 'ConfigParam__33')) {
1397
+ if ((configParam.kind == 'ConfigParam__34')) {
1379
1398
  return ((builder) => {
1380
1399
  storeValidatorSet(configParam.next_validators)(builder);
1381
1400
  });
1382
1401
  }
1383
- if ((configParam.kind == 'ConfigParam__34')) {
1402
+ if ((configParam.kind == 'ConfigParam__35')) {
1384
1403
  return ((builder) => {
1385
1404
  storeValidatorSet(configParam.next_temp_validators)(builder);
1386
1405
  });
1387
1406
  }
1388
- if ((configParam.kind == 'ConfigParam__35')) {
1407
+ if ((configParam.kind == 'ConfigParam__36')) {
1389
1408
  return ((builder) => {
1390
1409
  builder.storeDict(configParam.anon0, core_2.Dictionary.Keys.BigUint(256), {
1391
1410
  serialize: ((arg, builder) => {
@@ -1395,29 +1414,24 @@ function storeConfigParam(configParam) {
1395
1414
  });
1396
1415
  });
1397
1416
  }
1398
- if ((configParam.kind == 'ConfigParam__36')) {
1399
- return ((builder) => {
1400
- storeMisbehaviourPunishmentConfig(configParam.anon0)(builder);
1401
- });
1402
- }
1403
1417
  if ((configParam.kind == 'ConfigParam__37')) {
1404
1418
  return ((builder) => {
1405
- storeSizeLimitsConfig(configParam.anon0)(builder);
1419
+ storeMisbehaviourPunishmentConfig(configParam.anon0)(builder);
1406
1420
  });
1407
1421
  }
1408
1422
  if ((configParam.kind == 'ConfigParam__38')) {
1409
1423
  return ((builder) => {
1410
- storeSuspendedAddressList(configParam.anon0)(builder);
1424
+ storeSizeLimitsConfig(configParam.anon0)(builder);
1411
1425
  });
1412
1426
  }
1413
1427
  if ((configParam.kind == 'ConfigParam__39')) {
1414
1428
  return ((builder) => {
1415
- storePrecompiledContractsConfig(configParam.anon0)(builder);
1429
+ storeSuspendedAddressList(configParam.anon0)(builder);
1416
1430
  });
1417
1431
  }
1418
1432
  if ((configParam.kind == 'ConfigParam__40')) {
1419
1433
  return ((builder) => {
1420
- storeOracleBridgeParams(configParam.anon0)(builder);
1434
+ storePrecompiledContractsConfig(configParam.anon0)(builder);
1421
1435
  });
1422
1436
  }
1423
1437
  if ((configParam.kind == 'ConfigParam__41')) {
@@ -1432,7 +1446,7 @@ function storeConfigParam(configParam) {
1432
1446
  }
1433
1447
  if ((configParam.kind == 'ConfigParam__43')) {
1434
1448
  return ((builder) => {
1435
- storeJettonBridgeParams(configParam.anon0)(builder);
1449
+ storeOracleBridgeParams(configParam.anon0)(builder);
1436
1450
  });
1437
1451
  }
1438
1452
  if ((configParam.kind == 'ConfigParam__44')) {
@@ -1445,7 +1459,12 @@ function storeConfigParam(configParam) {
1445
1459
  storeJettonBridgeParams(configParam.anon0)(builder);
1446
1460
  });
1447
1461
  }
1448
- throw new Error('Expected one of "ConfigParam__", "ConfigParam__1", "ConfigParam__2", "ConfigParam__3", "ConfigParam__4", "ConfigParam__5", "ConfigParam__6", "ConfigParam__7", "ConfigParam__8", "ConfigParam__9", "ConfigParam__10", "ConfigParam__11", "ConfigParam__12", "ConfigParam__13", "ConfigParam__14", "ConfigParam__15", "ConfigParam__16", "ConfigParam__17", "ConfigParam__18", "ConfigParam__19", "ConfigParam_config_mc_gas_prices", "ConfigParam_config_gas_prices", "ConfigParam_config_mc_block_limits", "ConfigParam_config_block_limits", "ConfigParam_config_mc_fwd_prices", "ConfigParam_config_fwd_prices", "ConfigParam__26", "ConfigParam__27", "ConfigParam__28", "ConfigParam__29", "ConfigParam__30", "ConfigParam__31", "ConfigParam__32", "ConfigParam__33", "ConfigParam__34", "ConfigParam__35", "ConfigParam__36", "ConfigParam__37", "ConfigParam__38", "ConfigParam__39", "ConfigParam__40", "ConfigParam__41", "ConfigParam__42", "ConfigParam__43", "ConfigParam__44", "ConfigParam__45" in loading "ConfigParam", but data does not satisfy any constructor');
1462
+ if ((configParam.kind == 'ConfigParam__46')) {
1463
+ return ((builder) => {
1464
+ storeJettonBridgeParams(configParam.anon0)(builder);
1465
+ });
1466
+ }
1467
+ throw new Error('Expected one of "ConfigParam__", "ConfigParam__1", "ConfigParam__2", "ConfigParam__3", "ConfigParam__4", "ConfigParam__5", "ConfigParam__6", "ConfigParam__7", "ConfigParam__8", "ConfigParam__9", "ConfigParam__10", "ConfigParam__11", "ConfigParam__12", "ConfigParam__13", "ConfigParam__14", "ConfigParam__15", "ConfigParam__16", "ConfigParam__17", "ConfigParam__18", "ConfigParam__19", "ConfigParam_config_mc_gas_prices", "ConfigParam_config_gas_prices", "ConfigParam_config_mc_block_limits", "ConfigParam_config_block_limits", "ConfigParam_config_mc_fwd_prices", "ConfigParam_config_fwd_prices", "ConfigParam__26", "ConfigParam__27", "ConfigParam__28", "ConfigParam__29", "ConfigParam__30", "ConfigParam__31", "ConfigParam__32", "ConfigParam__33", "ConfigParam__34", "ConfigParam__35", "ConfigParam__36", "ConfigParam__37", "ConfigParam__38", "ConfigParam__39", "ConfigParam__40", "ConfigParam__41", "ConfigParam__42", "ConfigParam__43", "ConfigParam__44", "ConfigParam__45", "ConfigParam__46" in loading "ConfigParam", but data does not satisfy any constructor');
1449
1468
  }
1450
1469
  /*
1451
1470
  burning_config#01
@@ -1810,6 +1829,7 @@ workchain_v2#a7 enabled_since:uint32 monitor_min_split:(## 8)
1810
1829
  zerostate_root_hash:bits256 zerostate_file_hash:bits256
1811
1830
  version:uint32 format:(WorkchainFormat basic)
1812
1831
  split_merge_timings:WcSplitMergeTimings
1832
+ persistent_state_split_depth:(## 8) { persistent_state_split_depth <= 63 }
1813
1833
  = WorkchainDescr;
1814
1834
  */
1815
1835
  function loadWorkchainDescr(slice) {
@@ -1864,12 +1884,16 @@ function loadWorkchainDescr(slice) {
1864
1884
  let version = slice.loadUint(32);
1865
1885
  let format = loadWorkchainFormat(slice, basic);
1866
1886
  let split_merge_timings = loadWcSplitMergeTimings(slice);
1887
+ let persistent_state_split_depth = slice.loadUint(8);
1867
1888
  if ((!(monitor_min_split <= min_split))) {
1868
1889
  throw new Error('Condition (monitor_min_split <= min_split) is not satisfied while loading "WorkchainDescr_workchain_v2" for type "WorkchainDescr"');
1869
1890
  }
1870
1891
  if ((!(flags == 0))) {
1871
1892
  throw new Error('Condition (flags == 0) is not satisfied while loading "WorkchainDescr_workchain_v2" for type "WorkchainDescr"');
1872
1893
  }
1894
+ if ((!(persistent_state_split_depth <= 63))) {
1895
+ throw new Error('Condition (persistent_state_split_depth <= 63) is not satisfied while loading "WorkchainDescr_workchain_v2" for type "WorkchainDescr"');
1896
+ }
1873
1897
  return {
1874
1898
  kind: 'WorkchainDescr_workchain_v2',
1875
1899
  enabled_since: enabled_since,
@@ -1885,6 +1909,7 @@ function loadWorkchainDescr(slice) {
1885
1909
  version: version,
1886
1910
  format: format,
1887
1911
  split_merge_timings: split_merge_timings,
1912
+ persistent_state_split_depth: persistent_state_split_depth,
1888
1913
  };
1889
1914
  }
1890
1915
  throw new Error('Expected one of "WorkchainDescr_workchain", "WorkchainDescr_workchain_v2" in loading "WorkchainDescr", but data does not satisfy any constructor');
@@ -1929,12 +1954,16 @@ function storeWorkchainDescr(workchainDescr) {
1929
1954
  builder.storeUint(workchainDescr.version, 32);
1930
1955
  storeWorkchainFormat(workchainDescr.format)(builder);
1931
1956
  storeWcSplitMergeTimings(workchainDescr.split_merge_timings)(builder);
1957
+ builder.storeUint(workchainDescr.persistent_state_split_depth, 8);
1932
1958
  if ((!(workchainDescr.monitor_min_split <= workchainDescr.min_split))) {
1933
1959
  throw new Error('Condition (workchainDescr.monitor_min_split <= workchainDescr.min_split) is not satisfied while loading "WorkchainDescr_workchain_v2" for type "WorkchainDescr"');
1934
1960
  }
1935
1961
  if ((!(workchainDescr.flags == 0))) {
1936
1962
  throw new Error('Condition (workchainDescr.flags == 0) is not satisfied while loading "WorkchainDescr_workchain_v2" for type "WorkchainDescr"');
1937
1963
  }
1964
+ if ((!(workchainDescr.persistent_state_split_depth <= 63))) {
1965
+ throw new Error('Condition (workchainDescr.persistent_state_split_depth <= 63) is not satisfied while loading "WorkchainDescr_workchain_v2" for type "WorkchainDescr"');
1966
+ }
1938
1967
  });
1939
1968
  }
1940
1969
  throw new Error('Expected one of "WorkchainDescr_workchain", "WorkchainDescr_workchain_v2" in loading "WorkchainDescr", but data does not satisfy any constructor');
@@ -2160,10 +2189,36 @@ function storeParamLimits(paramLimits) {
2160
2189
  }
2161
2190
  });
2162
2191
  }
2192
+ // imported_msg_queue_limits#d3 max_bytes:# max_msgs:# = ImportedMsgQueueLimits;
2193
+ function loadImportedMsgQueueLimits(slice) {
2194
+ if (((slice.remainingBits >= 8) && (slice.preloadUint(8) == 0xd3))) {
2195
+ slice.loadUint(8);
2196
+ let max_bytes = slice.loadUint(32);
2197
+ let max_msgs = slice.loadUint(32);
2198
+ return {
2199
+ kind: 'ImportedMsgQueueLimits',
2200
+ max_bytes: max_bytes,
2201
+ max_msgs: max_msgs,
2202
+ };
2203
+ }
2204
+ throw new Error('Expected one of "ImportedMsgQueueLimits" in loading "ImportedMsgQueueLimits", but data does not satisfy any constructor');
2205
+ }
2206
+ function storeImportedMsgQueueLimits(importedMsgQueueLimits) {
2207
+ return ((builder) => {
2208
+ builder.storeUint(0xd3, 8);
2209
+ builder.storeUint(importedMsgQueueLimits.max_bytes, 32);
2210
+ builder.storeUint(importedMsgQueueLimits.max_msgs, 32);
2211
+ });
2212
+ }
2163
2213
  /*
2164
2214
  block_limits#5d bytes:ParamLimits gas:ParamLimits lt_delta:ParamLimits
2165
2215
  = BlockLimits;
2166
2216
  */
2217
+ /*
2218
+ block_limits_v2#5e bytes:ParamLimits gas:ParamLimits lt_delta:ParamLimits
2219
+ collated_data:ParamLimits imported_msg_queue:ImportedMsgQueueLimits
2220
+ = BlockLimits;
2221
+ */
2167
2222
  function loadBlockLimits(slice) {
2168
2223
  if (((slice.remainingBits >= 8) && (slice.preloadUint(8) == 0x5d))) {
2169
2224
  slice.loadUint(8);
@@ -2171,21 +2226,50 @@ function loadBlockLimits(slice) {
2171
2226
  let gas = loadParamLimits(slice);
2172
2227
  let lt_delta = loadParamLimits(slice);
2173
2228
  return {
2174
- kind: 'BlockLimits',
2229
+ kind: 'BlockLimits_block_limits',
2175
2230
  bytes: bytes,
2176
2231
  gas: gas,
2177
2232
  lt_delta: lt_delta,
2178
2233
  };
2179
2234
  }
2180
- throw new Error('Expected one of "BlockLimits" in loading "BlockLimits", but data does not satisfy any constructor');
2235
+ if (((slice.remainingBits >= 8) && (slice.preloadUint(8) == 0x5e))) {
2236
+ slice.loadUint(8);
2237
+ let bytes = loadParamLimits(slice);
2238
+ let gas = loadParamLimits(slice);
2239
+ let lt_delta = loadParamLimits(slice);
2240
+ let collated_data = loadParamLimits(slice);
2241
+ let imported_msg_queue = loadImportedMsgQueueLimits(slice);
2242
+ return {
2243
+ kind: 'BlockLimits_block_limits_v2',
2244
+ bytes: bytes,
2245
+ gas: gas,
2246
+ lt_delta: lt_delta,
2247
+ collated_data: collated_data,
2248
+ imported_msg_queue: imported_msg_queue,
2249
+ };
2250
+ }
2251
+ throw new Error('Expected one of "BlockLimits_block_limits", "BlockLimits_block_limits_v2" in loading "BlockLimits", but data does not satisfy any constructor');
2181
2252
  }
2182
2253
  function storeBlockLimits(blockLimits) {
2183
- return ((builder) => {
2184
- builder.storeUint(0x5d, 8);
2185
- storeParamLimits(blockLimits.bytes)(builder);
2186
- storeParamLimits(blockLimits.gas)(builder);
2187
- storeParamLimits(blockLimits.lt_delta)(builder);
2188
- });
2254
+ if ((blockLimits.kind == 'BlockLimits_block_limits')) {
2255
+ return ((builder) => {
2256
+ builder.storeUint(0x5d, 8);
2257
+ storeParamLimits(blockLimits.bytes)(builder);
2258
+ storeParamLimits(blockLimits.gas)(builder);
2259
+ storeParamLimits(blockLimits.lt_delta)(builder);
2260
+ });
2261
+ }
2262
+ if ((blockLimits.kind == 'BlockLimits_block_limits_v2')) {
2263
+ return ((builder) => {
2264
+ builder.storeUint(0x5e, 8);
2265
+ storeParamLimits(blockLimits.bytes)(builder);
2266
+ storeParamLimits(blockLimits.gas)(builder);
2267
+ storeParamLimits(blockLimits.lt_delta)(builder);
2268
+ storeParamLimits(blockLimits.collated_data)(builder);
2269
+ storeImportedMsgQueueLimits(blockLimits.imported_msg_queue)(builder);
2270
+ });
2271
+ }
2272
+ throw new Error('Expected one of "BlockLimits_block_limits", "BlockLimits_block_limits_v2" in loading "BlockLimits", but data does not satisfy any constructor');
2189
2273
  }
2190
2274
  /*
2191
2275
  msg_forward_prices#ea lump_price:uint64 bit_price:uint64 cell_price:uint64
@@ -2318,7 +2402,7 @@ consensus_config_v3#d8 flags:(## 7) { flags = 0 } new_catchain_ids:Bool
2318
2402
  proto_version:uint16 = ConsensusConfig;
2319
2403
  */
2320
2404
  /*
2321
- consensus_config_v4#d9 flags:(## 7) { flags = 0 } new_catchain_ids:Bool
2405
+ consensus_config_v4#d9 flags:(## 6) { flags = 0 } use_quic:Bool new_catchain_ids:Bool
2322
2406
  round_candidates:(## 8) { round_candidates >= 1 }
2323
2407
  next_candidate_delay_ms:uint32 consensus_timeout_ms:uint32
2324
2408
  fast_attempts:uint32 attempt_duration:uint32 catchain_max_deps:uint32
@@ -2419,7 +2503,8 @@ function loadConsensusConfig(slice) {
2419
2503
  }
2420
2504
  if (((slice.remainingBits >= 8) && (slice.preloadUint(8) == 0xd9))) {
2421
2505
  slice.loadUint(8);
2422
- let flags = slice.loadUint(7);
2506
+ let flags = slice.loadUint(6);
2507
+ let use_quic = loadBool(slice);
2423
2508
  let new_catchain_ids = loadBool(slice);
2424
2509
  let round_candidates = slice.loadUint(8);
2425
2510
  let next_candidate_delay_ms = slice.loadUint(32);
@@ -2440,6 +2525,7 @@ function loadConsensusConfig(slice) {
2440
2525
  return {
2441
2526
  kind: 'ConsensusConfig_consensus_config_v4',
2442
2527
  flags: flags,
2528
+ use_quic: use_quic,
2443
2529
  new_catchain_ids: new_catchain_ids,
2444
2530
  round_candidates: round_candidates,
2445
2531
  next_candidate_delay_ms: next_candidate_delay_ms,
@@ -2518,7 +2604,8 @@ function storeConsensusConfig(consensusConfig) {
2518
2604
  if ((consensusConfig.kind == 'ConsensusConfig_consensus_config_v4')) {
2519
2605
  return ((builder) => {
2520
2606
  builder.storeUint(0xd9, 8);
2521
- builder.storeUint(consensusConfig.flags, 7);
2607
+ builder.storeUint(consensusConfig.flags, 6);
2608
+ storeBool(consensusConfig.use_quic)(builder);
2522
2609
  storeBool(consensusConfig.new_catchain_ids)(builder);
2523
2610
  builder.storeUint(consensusConfig.round_candidates, 8);
2524
2611
  builder.storeUint(consensusConfig.next_candidate_delay_ms, 32);
@@ -2540,6 +2627,126 @@ function storeConsensusConfig(consensusConfig) {
2540
2627
  }
2541
2628
  throw new Error('Expected one of "ConsensusConfig_consensus_config", "ConsensusConfig_consensus_config_new", "ConsensusConfig_consensus_config_v3", "ConsensusConfig_consensus_config_v4" in loading "ConsensusConfig", but data does not satisfy any constructor');
2542
2629
  }
2630
+ /*
2631
+ simplex_config#21 flags:(## 7) use_quic:Bool
2632
+ target_rate_ms:uint32 slots_per_leader_window:uint32
2633
+ first_block_timeout_ms:uint32 max_leader_window_desync:uint32 = NewConsensusConfig;
2634
+ */
2635
+ // simplex_config_v2#22 flags:(## 6) enable_observers:Bool use_quic:Bool slots_per_leader_window:uint32 noncritical_params:(HashmapE 8 uint32) = NewConsensusConfig;
2636
+ function loadNewConsensusConfig(slice) {
2637
+ if (((slice.remainingBits >= 8) && (slice.preloadUint(8) == 0x21))) {
2638
+ slice.loadUint(8);
2639
+ let flags = slice.loadUint(7);
2640
+ let use_quic = loadBool(slice);
2641
+ let target_rate_ms = slice.loadUint(32);
2642
+ let slots_per_leader_window = slice.loadUint(32);
2643
+ let first_block_timeout_ms = slice.loadUint(32);
2644
+ let max_leader_window_desync = slice.loadUint(32);
2645
+ return {
2646
+ kind: 'NewConsensusConfig_simplex_config',
2647
+ flags: flags,
2648
+ use_quic: use_quic,
2649
+ target_rate_ms: target_rate_ms,
2650
+ slots_per_leader_window: slots_per_leader_window,
2651
+ first_block_timeout_ms: first_block_timeout_ms,
2652
+ max_leader_window_desync: max_leader_window_desync,
2653
+ };
2654
+ }
2655
+ if (((slice.remainingBits >= 8) && (slice.preloadUint(8) == 0x22))) {
2656
+ slice.loadUint(8);
2657
+ let flags = slice.loadUint(6);
2658
+ let enable_observers = loadBool(slice);
2659
+ let use_quic = loadBool(slice);
2660
+ let slots_per_leader_window = slice.loadUint(32);
2661
+ let noncritical_params = core_2.Dictionary.load(core_2.Dictionary.Keys.Uint(8), {
2662
+ serialize: () => { throw new Error('Not implemented'); },
2663
+ parse: ((slice) => {
2664
+ return slice.loadUint(32);
2665
+ }),
2666
+ }, slice);
2667
+ return {
2668
+ kind: 'NewConsensusConfig_simplex_config_v2',
2669
+ flags: flags,
2670
+ enable_observers: enable_observers,
2671
+ use_quic: use_quic,
2672
+ slots_per_leader_window: slots_per_leader_window,
2673
+ noncritical_params: noncritical_params,
2674
+ };
2675
+ }
2676
+ throw new Error('Expected one of "NewConsensusConfig_simplex_config", "NewConsensusConfig_simplex_config_v2" in loading "NewConsensusConfig", but data does not satisfy any constructor');
2677
+ }
2678
+ function storeNewConsensusConfig(newConsensusConfig) {
2679
+ if ((newConsensusConfig.kind == 'NewConsensusConfig_simplex_config')) {
2680
+ return ((builder) => {
2681
+ builder.storeUint(0x21, 8);
2682
+ builder.storeUint(newConsensusConfig.flags, 7);
2683
+ storeBool(newConsensusConfig.use_quic)(builder);
2684
+ builder.storeUint(newConsensusConfig.target_rate_ms, 32);
2685
+ builder.storeUint(newConsensusConfig.slots_per_leader_window, 32);
2686
+ builder.storeUint(newConsensusConfig.first_block_timeout_ms, 32);
2687
+ builder.storeUint(newConsensusConfig.max_leader_window_desync, 32);
2688
+ });
2689
+ }
2690
+ if ((newConsensusConfig.kind == 'NewConsensusConfig_simplex_config_v2')) {
2691
+ return ((builder) => {
2692
+ builder.storeUint(0x22, 8);
2693
+ builder.storeUint(newConsensusConfig.flags, 6);
2694
+ storeBool(newConsensusConfig.enable_observers)(builder);
2695
+ storeBool(newConsensusConfig.use_quic)(builder);
2696
+ builder.storeUint(newConsensusConfig.slots_per_leader_window, 32);
2697
+ builder.storeDict(newConsensusConfig.noncritical_params, core_2.Dictionary.Keys.Uint(8), {
2698
+ serialize: ((arg, builder) => {
2699
+ ((arg) => {
2700
+ return ((builder) => {
2701
+ builder.storeUint(arg, 32);
2702
+ });
2703
+ })(arg)(builder);
2704
+ }),
2705
+ parse: () => { throw new Error('Not implemented'); },
2706
+ });
2707
+ });
2708
+ }
2709
+ throw new Error('Expected one of "NewConsensusConfig_simplex_config", "NewConsensusConfig_simplex_config_v2" in loading "NewConsensusConfig", but data does not satisfy any constructor');
2710
+ }
2711
+ // new_consensus_config_all#10 mc:(Maybe ^NewConsensusConfig) shard:(Maybe ^NewConsensusConfig) = NewConsensusConfigAll;
2712
+ function loadNewConsensusConfigAll(slice) {
2713
+ if (((slice.remainingBits >= 8) && (slice.preloadUint(8) == 0x10))) {
2714
+ slice.loadUint(8);
2715
+ let mc = loadMaybe(slice, ((slice) => {
2716
+ let slice1 = slice.loadRef().beginParse(true);
2717
+ return loadNewConsensusConfig(slice1);
2718
+ }));
2719
+ let shard = loadMaybe(slice, ((slice) => {
2720
+ let slice1 = slice.loadRef().beginParse(true);
2721
+ return loadNewConsensusConfig(slice1);
2722
+ }));
2723
+ return {
2724
+ kind: 'NewConsensusConfigAll',
2725
+ mc: mc,
2726
+ shard: shard,
2727
+ };
2728
+ }
2729
+ throw new Error('Expected one of "NewConsensusConfigAll" in loading "NewConsensusConfigAll", but data does not satisfy any constructor');
2730
+ }
2731
+ function storeNewConsensusConfigAll(newConsensusConfigAll) {
2732
+ return ((builder) => {
2733
+ builder.storeUint(0x10, 8);
2734
+ storeMaybe(newConsensusConfigAll.mc, ((arg) => {
2735
+ return ((builder) => {
2736
+ let cell1 = (0, core_1.beginCell)();
2737
+ storeNewConsensusConfig(arg)(cell1);
2738
+ builder.storeRef(cell1);
2739
+ });
2740
+ }))(builder);
2741
+ storeMaybe(newConsensusConfigAll.shard, ((arg) => {
2742
+ return ((builder) => {
2743
+ let cell1 = (0, core_1.beginCell)();
2744
+ storeNewConsensusConfig(arg)(cell1);
2745
+ builder.storeRef(cell1);
2746
+ });
2747
+ }))(builder);
2748
+ });
2749
+ }
2543
2750
  // validator_temp_key#3 adnl_addr:bits256 temp_public_key:SigPubKey seqno:# valid_until:uint32 = ValidatorTempKey;
2544
2751
  function loadValidatorTempKey(slice) {
2545
2752
  if (((slice.remainingBits >= 4) && (slice.preloadUint(4) == 0x3))) {
@@ -2653,9 +2860,10 @@ size_limits_config#01 max_msg_bits:uint32 max_msg_cells:uint32 max_library_cells
2653
2860
  */
2654
2861
  /*
2655
2862
  size_limits_config_v2#02 max_msg_bits:uint32 max_msg_cells:uint32 max_library_cells:uint32 max_vm_data_depth:uint16
2656
- max_ext_msg_size:uint32 max_ext_msg_depth:uint16 max_acc_state_cells:uint32 max_acc_state_bits:uint32
2863
+ max_ext_msg_size:uint32 max_ext_msg_depth:uint16 max_acc_state_cells:uint32 max_mc_acc_state_cells:uint32
2657
2864
  max_acc_public_libraries:uint32 defer_out_queue_size_limit:uint32 max_msg_extra_currencies:uint32
2658
- max_acc_fixed_prefix_length:uint8 = SizeLimitsConfig;
2865
+ max_acc_fixed_prefix_length:uint8 acc_state_cells_for_storage_dict:uint32
2866
+ max_transaction_library_loads:(Maybe uint32) = SizeLimitsConfig;
2659
2867
  */
2660
2868
  function loadSizeLimitsConfig(slice) {
2661
2869
  if (((slice.remainingBits >= 8) && (slice.preloadUint(8) == 0x01))) {
@@ -2685,11 +2893,15 @@ function loadSizeLimitsConfig(slice) {
2685
2893
  let max_ext_msg_size = slice.loadUint(32);
2686
2894
  let max_ext_msg_depth = slice.loadUint(16);
2687
2895
  let max_acc_state_cells = slice.loadUint(32);
2688
- let max_acc_state_bits = slice.loadUint(32);
2896
+ let max_mc_acc_state_cells = slice.loadUint(32);
2689
2897
  let max_acc_public_libraries = slice.loadUint(32);
2690
2898
  let defer_out_queue_size_limit = slice.loadUint(32);
2691
2899
  let max_msg_extra_currencies = slice.loadUint(32);
2692
2900
  let max_acc_fixed_prefix_length = slice.loadUint(8);
2901
+ let acc_state_cells_for_storage_dict = slice.loadUint(32);
2902
+ let max_transaction_library_loads = loadMaybe(slice, ((slice) => {
2903
+ return slice.loadUint(32);
2904
+ }));
2693
2905
  return {
2694
2906
  kind: 'SizeLimitsConfig_size_limits_config_v2',
2695
2907
  max_msg_bits: max_msg_bits,
@@ -2699,11 +2911,13 @@ function loadSizeLimitsConfig(slice) {
2699
2911
  max_ext_msg_size: max_ext_msg_size,
2700
2912
  max_ext_msg_depth: max_ext_msg_depth,
2701
2913
  max_acc_state_cells: max_acc_state_cells,
2702
- max_acc_state_bits: max_acc_state_bits,
2914
+ max_mc_acc_state_cells: max_mc_acc_state_cells,
2703
2915
  max_acc_public_libraries: max_acc_public_libraries,
2704
2916
  defer_out_queue_size_limit: defer_out_queue_size_limit,
2705
2917
  max_msg_extra_currencies: max_msg_extra_currencies,
2706
2918
  max_acc_fixed_prefix_length: max_acc_fixed_prefix_length,
2919
+ acc_state_cells_for_storage_dict: acc_state_cells_for_storage_dict,
2920
+ max_transaction_library_loads: max_transaction_library_loads,
2707
2921
  };
2708
2922
  }
2709
2923
  throw new Error('Expected one of "SizeLimitsConfig_size_limits_config", "SizeLimitsConfig_size_limits_config_v2" in loading "SizeLimitsConfig", but data does not satisfy any constructor');
@@ -2730,11 +2944,17 @@ function storeSizeLimitsConfig(sizeLimitsConfig) {
2730
2944
  builder.storeUint(sizeLimitsConfig.max_ext_msg_size, 32);
2731
2945
  builder.storeUint(sizeLimitsConfig.max_ext_msg_depth, 16);
2732
2946
  builder.storeUint(sizeLimitsConfig.max_acc_state_cells, 32);
2733
- builder.storeUint(sizeLimitsConfig.max_acc_state_bits, 32);
2947
+ builder.storeUint(sizeLimitsConfig.max_mc_acc_state_cells, 32);
2734
2948
  builder.storeUint(sizeLimitsConfig.max_acc_public_libraries, 32);
2735
2949
  builder.storeUint(sizeLimitsConfig.defer_out_queue_size_limit, 32);
2736
2950
  builder.storeUint(sizeLimitsConfig.max_msg_extra_currencies, 32);
2737
2951
  builder.storeUint(sizeLimitsConfig.max_acc_fixed_prefix_length, 8);
2952
+ builder.storeUint(sizeLimitsConfig.acc_state_cells_for_storage_dict, 32);
2953
+ storeMaybe(sizeLimitsConfig.max_transaction_library_loads, ((arg) => {
2954
+ return ((builder) => {
2955
+ builder.storeUint(arg, 32);
2956
+ });
2957
+ }))(builder);
2738
2958
  });
2739
2959
  }
2740
2960
  throw new Error('Expected one of "SizeLimitsConfig_size_limits_config", "SizeLimitsConfig_size_limits_config_v2" in loading "SizeLimitsConfig", but data does not satisfy any constructor');