@fuel-ts/account 0.94.8 → 0.95.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.
@@ -20390,9 +20390,9 @@ spurious results.`);
20390
20390
  }
20391
20391
  });
20392
20392
 
20393
- // ../../node_modules/.pnpm/@fuels+vm-asm@0.57.1/node_modules/@fuels/vm-asm/dist/node/index.cjs
20393
+ // ../../node_modules/.pnpm/@fuels+vm-asm@0.58.0/node_modules/@fuels/vm-asm/dist/node/index.cjs
20394
20394
  var require_node = __commonJS({
20395
- "../../node_modules/.pnpm/@fuels+vm-asm@0.57.1/node_modules/@fuels/vm-asm/dist/node/index.cjs"(exports) {
20395
+ "../../node_modules/.pnpm/@fuels+vm-asm@0.58.0/node_modules/@fuels/vm-asm/dist/node/index.cjs"(exports) {
20396
20396
  "use strict";
20397
20397
  var wasm$1;
20398
20398
  var cachedTextDecoder = typeof TextDecoder !== "undefined" ? new TextDecoder("utf-8", { ignoreBOM: true, fatal: true }) : { decode: () => {
@@ -20606,8 +20606,8 @@ spurious results.`);
20606
20606
  const ret3 = wasm$1.cb(dst);
20607
20607
  return Instruction.__wrap(ret3);
20608
20608
  }
20609
- function ldc(contract_id_addr, offset, len, mode) {
20610
- const ret3 = wasm$1.ldc(contract_id_addr, offset, len, mode);
20609
+ function ldc(src_addr, offset, len, mode) {
20610
+ const ret3 = wasm$1.ldc(src_addr, offset, len, mode);
20611
20611
  return Instruction.__wrap(ret3);
20612
20612
  }
20613
20613
  function log(a, b, c, d) {
@@ -20966,700 +20966,700 @@ spurious results.`);
20966
20966
  LZC: 6,
20967
20967
  "6": "LZC"
20968
20968
  });
20969
- var PanicReason = Object.freeze({
20969
+ var GMArgs = Object.freeze({
20970
20970
  /**
20971
- *r" The byte can't be mapped to any known `PanicReason`.
20971
+ *r" Get if caller is external.
20972
20972
  */
20973
- UnknownPanicReason: 0,
20974
- "0": "UnknownPanicReason",
20973
+ IsCallerExternal: 1,
20974
+ "1": "IsCallerExternal",
20975
20975
  /**
20976
- *r" Found `RVRT` instruction.
20976
+ *r" Get caller's contract ID.
20977
20977
  */
20978
- Revert: 1,
20979
- "1": "Revert",
20978
+ GetCaller: 2,
20979
+ "2": "GetCaller",
20980
20980
  /**
20981
- *r" Execution ran out of gas.
20981
+ *r" Get index of current predicate.
20982
20982
  */
20983
- OutOfGas: 2,
20984
- "2": "OutOfGas",
20983
+ GetVerifyingPredicate: 3,
20984
+ "3": "GetVerifyingPredicate",
20985
20985
  /**
20986
- *r" The transaction validity is violated.
20986
+ *r" Get the Chain ID this VM is operating within
20987
20987
  */
20988
- TransactionValidity: 3,
20989
- "3": "TransactionValidity",
20988
+ GetChainId: 4,
20989
+ "4": "GetChainId",
20990
20990
  /**
20991
- *r" Attempt to write outside interpreter memory boundaries.
20991
+ *r" Get memory address where the transaction is located
20992
20992
  */
20993
- MemoryOverflow: 4,
20994
- "4": "MemoryOverflow",
20993
+ TxStart: 5,
20994
+ "5": "TxStart",
20995
20995
  /**
20996
- *r" Overflow while executing arithmetic operation.
20997
- *r" These errors are ignored using the WRAPPING flag.
20996
+ *r" Get memory address of base asset ID
20998
20997
  */
20999
- ArithmeticOverflow: 5,
21000
- "5": "ArithmeticOverflow",
20998
+ BaseAssetId: 6,
20999
+ "6": "BaseAssetId"
21000
+ });
21001
+ var GTFArgs2 = Object.freeze({
21001
21002
  /**
21002
- *r" Designed contract was not found in the storage.
21003
+ *r" Set `$rA` to `tx.type`
21003
21004
  */
21004
- ContractNotFound: 6,
21005
- "6": "ContractNotFound",
21005
+ Type: 1,
21006
+ "1": "Type",
21006
21007
  /**
21007
- *r" Memory ownership rules are violated.
21008
+ *r" Set `$rA` to `tx.scriptGasLimit`
21008
21009
  */
21009
- MemoryOwnership: 7,
21010
- "7": "MemoryOwnership",
21010
+ ScriptGasLimit: 2,
21011
+ "2": "ScriptGasLimit",
21011
21012
  /**
21012
- *r" The asset ID balance isn't enough for the instruction.
21013
+ *r" Set `$rA` to `tx.scriptLength`
21013
21014
  */
21014
- NotEnoughBalance: 8,
21015
- "8": "NotEnoughBalance",
21015
+ ScriptLength: 3,
21016
+ "3": "ScriptLength",
21016
21017
  /**
21017
- *r" The interpreter is expected to be in internal context.
21018
+ *r" Set `$rA` to `tx.scriptDataLength`
21018
21019
  */
21019
- ExpectedInternalContext: 9,
21020
- "9": "ExpectedInternalContext",
21020
+ ScriptDataLength: 4,
21021
+ "4": "ScriptDataLength",
21021
21022
  /**
21022
- *r" The queried asset ID was not found in the state.
21023
+ *r" Set `$rA` to `tx.inputsCount`
21023
21024
  */
21024
- AssetIdNotFound: 10,
21025
- "10": "AssetIdNotFound",
21025
+ ScriptInputsCount: 5,
21026
+ "5": "ScriptInputsCount",
21026
21027
  /**
21027
- *r" The provided input is not found in the transaction.
21028
+ *r" Set `$rA` to `tx.outputsCount`
21028
21029
  */
21029
- InputNotFound: 11,
21030
- "11": "InputNotFound",
21030
+ ScriptOutputsCount: 6,
21031
+ "6": "ScriptOutputsCount",
21031
21032
  /**
21032
- *r" The provided output is not found in the transaction.
21033
+ *r" Set `$rA` to `tx.witnessesCount`
21033
21034
  */
21034
- OutputNotFound: 12,
21035
- "12": "OutputNotFound",
21035
+ ScriptWitnessesCount: 7,
21036
+ "7": "ScriptWitnessesCount",
21036
21037
  /**
21037
- *r" The provided witness is not found in the transaction.
21038
+ *r" Set `$rA` to `Memory address of tx.script`
21038
21039
  */
21039
- WitnessNotFound: 13,
21040
- "13": "WitnessNotFound",
21040
+ Script: 9,
21041
+ "9": "Script",
21041
21042
  /**
21042
- *r" The transaction maturity is not valid for this request.
21043
+ *r" Set `$rA` to `Memory address of tx.scriptData`
21043
21044
  */
21044
- TransactionMaturity: 14,
21045
- "14": "TransactionMaturity",
21045
+ ScriptData: 10,
21046
+ "10": "ScriptData",
21046
21047
  /**
21047
- *r" The metadata identifier is invalid.
21048
+ *r" Set `$rA` to `Memory address of tx.inputs[$rB]`
21048
21049
  */
21049
- InvalidMetadataIdentifier: 15,
21050
- "15": "InvalidMetadataIdentifier",
21050
+ ScriptInputAtIndex: 11,
21051
+ "11": "ScriptInputAtIndex",
21051
21052
  /**
21052
- *r" The call structure is not valid.
21053
+ *r" Set `$rA` to `Memory address of t.outputs[$rB]`
21053
21054
  */
21054
- MalformedCallStructure: 16,
21055
- "16": "MalformedCallStructure",
21055
+ ScriptOutputAtIndex: 12,
21056
+ "12": "ScriptOutputAtIndex",
21056
21057
  /**
21057
- *r" The provided register does not allow write operations.
21058
+ *r" Set `$rA` to `Memory address of tx.witnesses[$rB]`
21058
21059
  */
21059
- ReservedRegisterNotWritable: 17,
21060
- "17": "ReservedRegisterNotWritable",
21060
+ ScriptWitnessAtIndex: 13,
21061
+ "13": "ScriptWitnessAtIndex",
21061
21062
  /**
21062
- *r" The execution resulted in an erroneous state of the interpreter.
21063
+ *r" Set `$rA` to size of the transaction in memory, in bytes
21063
21064
  */
21064
- InvalidFlags: 18,
21065
- "18": "InvalidFlags",
21065
+ TxLength: 14,
21066
+ "14": "TxLength",
21066
21067
  /**
21067
- *r" The provided immediate value is not valid for this instruction.
21068
+ *r" Set `$rA` to `tx.bytecodeWitnessIndex`
21068
21069
  */
21069
- InvalidImmediateValue: 19,
21070
- "19": "InvalidImmediateValue",
21070
+ CreateBytecodeWitnessIndex: 257,
21071
+ "257": "CreateBytecodeWitnessIndex",
21071
21072
  /**
21072
- *r" The provided transaction input is not of type `Coin`.
21073
+ *r" Set `$rA` to `tx.storageSlotsCount`
21073
21074
  */
21074
- ExpectedCoinInput: 20,
21075
- "20": "ExpectedCoinInput",
21075
+ CreateStorageSlotsCount: 258,
21076
+ "258": "CreateStorageSlotsCount",
21076
21077
  /**
21077
- *r" `ECAL` instruction failed.
21078
+ *r" Set `$rA` to `tx.inputsCount`
21078
21079
  */
21079
- EcalError: 21,
21080
- "21": "EcalError",
21080
+ CreateInputsCount: 259,
21081
+ "259": "CreateInputsCount",
21081
21082
  /**
21082
- *r" Two segments of the interpreter memory should not intersect for write operations.
21083
+ *r" Set `$rA` to `tx.outputsCount`
21083
21084
  */
21084
- MemoryWriteOverlap: 22,
21085
- "22": "MemoryWriteOverlap",
21085
+ CreateOutputsCount: 260,
21086
+ "260": "CreateOutputsCount",
21086
21087
  /**
21087
- *r" The requested contract is not listed in the transaction inputs.
21088
+ *r" Set `$rA` to `tx.witnessesCount`
21088
21089
  */
21089
- ContractNotInInputs: 23,
21090
- "23": "ContractNotInInputs",
21090
+ CreateWitnessesCount: 261,
21091
+ "261": "CreateWitnessesCount",
21091
21092
  /**
21092
- *r" The internal asset ID balance overflowed with the provided instruction.
21093
+ *r" Set `$rA` to `Memory address of tx.salt`
21093
21094
  */
21094
- InternalBalanceOverflow: 24,
21095
- "24": "InternalBalanceOverflow",
21095
+ CreateSalt: 262,
21096
+ "262": "CreateSalt",
21096
21097
  /**
21097
- *r" The maximum allowed contract size is violated.
21098
+ *r" Set `$rA` to `Memory address of tx.storageSlots[$rB]`
21098
21099
  */
21099
- ContractMaxSize: 25,
21100
- "25": "ContractMaxSize",
21100
+ CreateStorageSlotAtIndex: 263,
21101
+ "263": "CreateStorageSlotAtIndex",
21101
21102
  /**
21102
- *r" This instruction expects the stack area to be unallocated for this call.
21103
+ *r" Set `$rA` to `Memory address of tx.inputs[$rB]`
21103
21104
  */
21104
- ExpectedUnallocatedStack: 26,
21105
- "26": "ExpectedUnallocatedStack",
21105
+ CreateInputAtIndex: 264,
21106
+ "264": "CreateInputAtIndex",
21106
21107
  /**
21107
- *r" The maximum allowed number of static contracts was reached for this transaction.
21108
+ *r" Set `$rA` to `Memory address of t.outputs[$rB]`
21108
21109
  */
21109
- MaxStaticContractsReached: 27,
21110
- "27": "MaxStaticContractsReached",
21110
+ CreateOutputAtIndex: 265,
21111
+ "265": "CreateOutputAtIndex",
21111
21112
  /**
21112
- *r" The requested transfer amount cannot be zero.
21113
+ *r" Set `$rA` to `Memory address of tx.witnesses[$rB]`
21113
21114
  */
21114
- TransferAmountCannotBeZero: 28,
21115
- "28": "TransferAmountCannotBeZero",
21115
+ CreateWitnessAtIndex: 266,
21116
+ "266": "CreateWitnessAtIndex",
21116
21117
  /**
21117
- *r" The provided transaction output should be of type `Variable`.
21118
+ *r" Set `$rA` to `tx.inputs[$rB].type`
21118
21119
  */
21119
- ExpectedOutputVariable: 29,
21120
- "29": "ExpectedOutputVariable",
21120
+ InputType: 512,
21121
+ "512": "InputType",
21121
21122
  /**
21122
- *r" The expected context of the stack parent is internal.
21123
+ *r" Set `$rA` to `Memory address of tx.inputs[$rB].txID`
21123
21124
  */
21124
- ExpectedParentInternalContext: 30,
21125
- "30": "ExpectedParentInternalContext",
21125
+ InputCoinTxId: 513,
21126
+ "513": "InputCoinTxId",
21126
21127
  /**
21127
- *r" The predicate returned non `1`. The `1` means successful verification
21128
- *r" of the predicate, all other values means unsuccessful.
21128
+ *r" Set `$rA` to `tx.inputs[$rB].outputIndex`
21129
21129
  */
21130
- PredicateReturnedNonOne: 31,
21131
- "31": "PredicateReturnedNonOne",
21130
+ InputCoinOutputIndex: 514,
21131
+ "514": "InputCoinOutputIndex",
21132
21132
  /**
21133
- *r" The contract ID is already deployed and can't be overwritten.
21133
+ *r" Set `$rA` to `Memory address of tx.inputs[$rB].owner`
21134
21134
  */
21135
- ContractIdAlreadyDeployed: 32,
21136
- "32": "ContractIdAlreadyDeployed",
21135
+ InputCoinOwner: 515,
21136
+ "515": "InputCoinOwner",
21137
21137
  /**
21138
- *r" The loaded contract mismatch expectations.
21138
+ *r" Set `$rA` to `tx.inputs[$rB].amount`
21139
21139
  */
21140
- ContractMismatch: 33,
21141
- "33": "ContractMismatch",
21140
+ InputCoinAmount: 516,
21141
+ "516": "InputCoinAmount",
21142
21142
  /**
21143
- *r" Attempting to send message data longer than `MAX_MESSAGE_DATA_LENGTH`
21143
+ *r" Set `$rA` to `Memory address of tx.inputs[$rB].asset_id`
21144
21144
  */
21145
- MessageDataTooLong: 34,
21146
- "34": "MessageDataTooLong",
21145
+ InputCoinAssetId: 517,
21146
+ "517": "InputCoinAssetId",
21147
21147
  /**
21148
- *r" Mathematically invalid arguments where given to an arithmetic instruction.
21149
- *r" For instance, division by zero produces this.
21150
- *r" These errors are ignored using the UNSAFEMATH flag.
21148
+ *r" Set `$rA` to `Memory address of tx.inputs[$rB].txPointer`
21151
21149
  */
21152
- ArithmeticError: 35,
21153
- "35": "ArithmeticError",
21150
+ InputCoinTxPointer: 518,
21151
+ "518": "InputCoinTxPointer",
21154
21152
  /**
21155
- *r" The contract instruction is not allowed in predicates.
21153
+ *r" Set `$rA` to `tx.inputs[$rB].witnessIndex`
21156
21154
  */
21157
- ContractInstructionNotAllowed: 36,
21158
- "36": "ContractInstructionNotAllowed",
21155
+ InputCoinWitnessIndex: 519,
21156
+ "519": "InputCoinWitnessIndex",
21159
21157
  /**
21160
- *r" Transfer of zero coins is not allowed.
21158
+ *r" Set `$rA` to `tx.inputs[$rB].predicateLength`
21161
21159
  */
21162
- TransferZeroCoins: 37,
21163
- "37": "TransferZeroCoins",
21160
+ InputCoinPredicateLength: 521,
21161
+ "521": "InputCoinPredicateLength",
21164
21162
  /**
21165
- *r" Attempted to execute an invalid instruction
21163
+ *r" Set `$rA` to `tx.inputs[$rB].predicateDataLength`
21166
21164
  */
21167
- InvalidInstruction: 38,
21168
- "38": "InvalidInstruction",
21165
+ InputCoinPredicateDataLength: 522,
21166
+ "522": "InputCoinPredicateDataLength",
21169
21167
  /**
21170
- *r" Memory outside $is..$ssp range is not executable
21168
+ *r" Set `$rA` to `Memory address of tx.inputs[$rB].predicate`
21171
21169
  */
21172
- MemoryNotExecutable: 39,
21173
- "39": "MemoryNotExecutable",
21170
+ InputCoinPredicate: 523,
21171
+ "523": "InputCoinPredicate",
21174
21172
  /**
21175
- *r" The policy is not set.
21173
+ *r" Set `$rA` to `Memory address of tx.inputs[$rB].predicateData`
21176
21174
  */
21177
- PolicyIsNotSet: 40,
21178
- "40": "PolicyIsNotSet",
21175
+ InputCoinPredicateData: 524,
21176
+ "524": "InputCoinPredicateData",
21179
21177
  /**
21180
- *r" The policy is not found across policies.
21178
+ *r" Set `$rA` to `Memory address of tx.inputs[$rB].predicateGasUsed`
21181
21179
  */
21182
- PolicyNotFound: 41,
21183
- "41": "PolicyNotFound",
21184
- /**
21185
- *r" Receipt context is full
21186
- */
21187
- TooManyReceipts: 42,
21188
- "42": "TooManyReceipts",
21180
+ InputCoinPredicateGasUsed: 525,
21181
+ "525": "InputCoinPredicateGasUsed",
21189
21182
  /**
21190
- *r" Balance of a contract overflowed
21183
+ *r" Set `$rA` to `Memory address of tx.inputs[$rB].txID`
21191
21184
  */
21192
- BalanceOverflow: 43,
21193
- "43": "BalanceOverflow",
21185
+ InputContractTxId: 544,
21186
+ "544": "InputContractTxId",
21194
21187
  /**
21195
- *r" Block height value is invalid, typically because it is too large
21188
+ *r" Set `$rA` to `tx.inputs[$rB].outputIndex`
21196
21189
  */
21197
- InvalidBlockHeight: 44,
21198
- "44": "InvalidBlockHeight",
21190
+ InputContractOutputIndex: 545,
21191
+ "545": "InputContractOutputIndex",
21199
21192
  /**
21200
- *r" Attempt to use sequential memory instructions with too large slot count,
21201
- *r" typically because it cannot fit into usize
21193
+ *r" Set `$rA` to `Memory address of tx.inputs[$rB].contractID`
21202
21194
  */
21203
- TooManySlots: 45,
21204
- "45": "TooManySlots",
21195
+ InputContractId: 549,
21196
+ "549": "InputContractId",
21205
21197
  /**
21206
- *r" Caller of this internal context is also expected to be internal,
21207
- *r" i.e. $fp->$fp must be non-zero.
21198
+ *r" Set `$rA` to `Memory address of tx.inputs[$rB].sender`
21208
21199
  */
21209
- ExpectedNestedCaller: 46,
21210
- "46": "ExpectedNestedCaller",
21200
+ InputMessageSender: 576,
21201
+ "576": "InputMessageSender",
21211
21202
  /**
21212
- *r" During memory growth, the stack overlapped with the heap
21203
+ *r" Set `$rA` to `Memory address of tx.inputs[$rB].recipient`
21213
21204
  */
21214
- MemoryGrowthOverlap: 47,
21215
- "47": "MemoryGrowthOverlap",
21205
+ InputMessageRecipient: 577,
21206
+ "577": "InputMessageRecipient",
21216
21207
  /**
21217
- *r" Attempting to read or write uninitialized memory.
21218
- *r" Also occurs when boundary crosses from stack to heap.
21208
+ *r" Set `$rA` to `tx.inputs[$rB].amount`
21219
21209
  */
21220
- UninitalizedMemoryAccess: 48,
21221
- "48": "UninitalizedMemoryAccess",
21210
+ InputMessageAmount: 578,
21211
+ "578": "InputMessageAmount",
21222
21212
  /**
21223
- *r" Overriding consensus parameters is not allowed.
21213
+ *r" Set `$rA` to `Memory address of tx.inputs[$rB].nonce`
21224
21214
  */
21225
- OverridingConsensusParameters: 49,
21226
- "49": "OverridingConsensusParameters",
21215
+ InputMessageNonce: 579,
21216
+ "579": "InputMessageNonce",
21227
21217
  /**
21228
- *r" The storage doesn't know about the hash of the state transition bytecode.
21218
+ *r" Set `$rA` to `tx.inputs[$rB].witnessIndex`
21229
21219
  */
21230
- UnknownStateTransactionBytecodeRoot: 50,
21231
- "50": "UnknownStateTransactionBytecodeRoot",
21220
+ InputMessageWitnessIndex: 580,
21221
+ "580": "InputMessageWitnessIndex",
21232
21222
  /**
21233
- *r" Overriding the state transition bytecode is not allowed.
21223
+ *r" Set `$rA` to `tx.inputs[$rB].dataLength`
21234
21224
  */
21235
- OverridingStateTransactionBytecode: 51,
21236
- "51": "OverridingStateTransactionBytecode",
21225
+ InputMessageDataLength: 581,
21226
+ "581": "InputMessageDataLength",
21237
21227
  /**
21238
- *r" The bytecode is already uploaded and cannot be uploaded again.
21228
+ *r" Set `$rA` to `tx.inputs[$rB].predicateLength`
21239
21229
  */
21240
- BytecodeAlreadyUploaded: 52,
21241
- "52": "BytecodeAlreadyUploaded",
21230
+ InputMessagePredicateLength: 582,
21231
+ "582": "InputMessagePredicateLength",
21242
21232
  /**
21243
- *r" The part of the bytecode is not sequentially connected to the previous parts.
21233
+ *r" Set `$rA` to `tx.inputs[$rB].predicateDataLength`
21244
21234
  */
21245
- ThePartIsNotSequentiallyConnected: 53,
21246
- "53": "ThePartIsNotSequentiallyConnected",
21235
+ InputMessagePredicateDataLength: 583,
21236
+ "583": "InputMessagePredicateDataLength",
21247
21237
  /**
21248
- *r" The requested blob is not found.
21238
+ *r" Set `$rA` to `Memory address of tx.inputs[$rB].data`
21249
21239
  */
21250
- BlobNotFound: 54,
21251
- "54": "BlobNotFound",
21240
+ InputMessageData: 584,
21241
+ "584": "InputMessageData",
21252
21242
  /**
21253
- *r" The blob was already
21243
+ *r" Set `$rA` to `Memory address of tx.inputs[$rB].predicate`
21254
21244
  */
21255
- BlobIdAlreadyUploaded: 55,
21256
- "55": "BlobIdAlreadyUploaded",
21245
+ InputMessagePredicate: 585,
21246
+ "585": "InputMessagePredicate",
21257
21247
  /**
21258
- *r" Active gas costs do not define the cost for this instruction.
21248
+ *r" Set `$rA` to `Memory address of tx.inputs[$rB].predicateData`
21259
21249
  */
21260
- GasCostNotDefined: 56,
21261
- "56": "GasCostNotDefined"
21262
- });
21263
- var GMArgs = Object.freeze({
21250
+ InputMessagePredicateData: 586,
21251
+ "586": "InputMessagePredicateData",
21264
21252
  /**
21265
- *r" Get if caller is external.
21253
+ *r" Set `$rA` to `Memory address of tx.inputs[$rB].predicateGasUsed`
21266
21254
  */
21267
- IsCallerExternal: 1,
21268
- "1": "IsCallerExternal",
21255
+ InputMessagePredicateGasUsed: 587,
21256
+ "587": "InputMessagePredicateGasUsed",
21269
21257
  /**
21270
- *r" Get caller's contract ID.
21258
+ *r" Set `$rA` to `tx.outputs[$rB].type`
21271
21259
  */
21272
- GetCaller: 2,
21273
- "2": "GetCaller",
21260
+ OutputType: 768,
21261
+ "768": "OutputType",
21274
21262
  /**
21275
- *r" Get index of current predicate.
21263
+ *r" Set `$rA` to `Memory address of tx.outputs[$rB].to`
21276
21264
  */
21277
- GetVerifyingPredicate: 3,
21278
- "3": "GetVerifyingPredicate",
21265
+ OutputCoinTo: 769,
21266
+ "769": "OutputCoinTo",
21279
21267
  /**
21280
- *r" Get the Chain ID this VM is operating within
21268
+ *r" Set `$rA` to `tx.outputs[$rB].amount`
21281
21269
  */
21282
- GetChainId: 4,
21283
- "4": "GetChainId",
21270
+ OutputCoinAmount: 770,
21271
+ "770": "OutputCoinAmount",
21284
21272
  /**
21285
- *r" Get memory address where the transaction is located
21273
+ *r" Set `$rA` to `Memory address of tx.outputs[$rB].asset_id`
21286
21274
  */
21287
- TxStart: 5,
21288
- "5": "TxStart",
21275
+ OutputCoinAssetId: 771,
21276
+ "771": "OutputCoinAssetId",
21289
21277
  /**
21290
- *r" Get memory address of base asset ID
21278
+ *r" Set `$rA` to `tx.outputs[$rB].inputIndex`
21291
21279
  */
21292
- BaseAssetId: 6,
21293
- "6": "BaseAssetId"
21294
- });
21295
- var GTFArgs2 = Object.freeze({
21280
+ OutputContractInputIndex: 772,
21281
+ "772": "OutputContractInputIndex",
21296
21282
  /**
21297
- *r" Set `$rA` to `tx.type`
21283
+ *r" Set `$rA` to `Memory address of tx.outputs[$rB].contractID`
21298
21284
  */
21299
- Type: 1,
21300
- "1": "Type",
21285
+ OutputContractCreatedContractId: 775,
21286
+ "775": "OutputContractCreatedContractId",
21301
21287
  /**
21302
- *r" Set `$rA` to `tx.scriptGasLimit`
21288
+ *r" Set `$rA` to `Memory address of tx.outputs[$rB].stateRoot`
21303
21289
  */
21304
- ScriptGasLimit: 2,
21305
- "2": "ScriptGasLimit",
21290
+ OutputContractCreatedStateRoot: 776,
21291
+ "776": "OutputContractCreatedStateRoot",
21306
21292
  /**
21307
- *r" Set `$rA` to `tx.scriptLength`
21293
+ *r" Set `$rA` to `tx.witnesses[$rB].dataLength`
21308
21294
  */
21309
- ScriptLength: 3,
21310
- "3": "ScriptLength",
21295
+ WitnessDataLength: 1024,
21296
+ "1024": "WitnessDataLength",
21311
21297
  /**
21312
- *r" Set `$rA` to `tx.scriptDataLength`
21298
+ *r" Set `$rA` to `Memory address of tx.witnesses[$rB].data`
21313
21299
  */
21314
- ScriptDataLength: 4,
21315
- "4": "ScriptDataLength",
21300
+ WitnessData: 1025,
21301
+ "1025": "WitnessData",
21316
21302
  /**
21317
- *r" Set `$rA` to `tx.inputsCount`
21303
+ *r" Set `$rA` to `tx.policyTypes`
21318
21304
  */
21319
- ScriptInputsCount: 5,
21320
- "5": "ScriptInputsCount",
21305
+ PolicyTypes: 1280,
21306
+ "1280": "PolicyTypes",
21321
21307
  /**
21322
- *r" Set `$rA` to `tx.outputsCount`
21308
+ *r" Set `$rA` to `tx.policies[0x00].gasPrice`
21323
21309
  */
21324
- ScriptOutputsCount: 6,
21325
- "6": "ScriptOutputsCount",
21310
+ PolicyTip: 1281,
21311
+ "1281": "PolicyTip",
21326
21312
  /**
21327
- *r" Set `$rA` to `tx.witnessesCount`
21313
+ *r" Set `$rA` to `tx.policies[count_ones(0b11 & tx.policyTypes) - 1].witnessLimit`
21328
21314
  */
21329
- ScriptWitnessesCount: 7,
21330
- "7": "ScriptWitnessesCount",
21315
+ PolicyWitnessLimit: 1282,
21316
+ "1282": "PolicyWitnessLimit",
21331
21317
  /**
21332
- *r" Set `$rA` to `Memory address of tx.script`
21318
+ *r" Set `$rA` to `tx.policies[count_ones(0b111 & tx.policyTypes) - 1].maturity`
21333
21319
  */
21334
- Script: 9,
21335
- "9": "Script",
21320
+ PolicyMaturity: 1283,
21321
+ "1283": "PolicyMaturity",
21336
21322
  /**
21337
- *r" Set `$rA` to `Memory address of tx.scriptData`
21323
+ *r" Set `$rA` to `tx.policies[count_ones(0b1111 & tx.policyTypes) - 1].maxFee`
21338
21324
  */
21339
- ScriptData: 10,
21340
- "10": "ScriptData",
21325
+ PolicyMaxFee: 1284,
21326
+ "1284": "PolicyMaxFee"
21327
+ });
21328
+ var MathOp = Object.freeze({
21341
21329
  /**
21342
- *r" Set `$rA` to `Memory address of tx.inputs[$rB]`
21330
+ * Add
21343
21331
  */
21344
- ScriptInputAtIndex: 11,
21345
- "11": "ScriptInputAtIndex",
21332
+ ADD: 0,
21333
+ "0": "ADD",
21346
21334
  /**
21347
- *r" Set `$rA` to `Memory address of t.outputs[$rB]`
21335
+ * Subtract
21348
21336
  */
21349
- ScriptOutputAtIndex: 12,
21350
- "12": "ScriptOutputAtIndex",
21337
+ SUB: 1,
21338
+ "1": "SUB",
21351
21339
  /**
21352
- *r" Set `$rA` to `Memory address of tx.witnesses[$rB]`
21340
+ * Invert bits (discards rhs)
21353
21341
  */
21354
- ScriptWitnessAtIndex: 13,
21355
- "13": "ScriptWitnessAtIndex",
21342
+ NOT: 2,
21343
+ "2": "NOT",
21356
21344
  /**
21357
- *r" Set `$rA` to size of the transaction in memory, in bytes
21345
+ * Bitwise or
21358
21346
  */
21359
- TxLength: 14,
21360
- "14": "TxLength",
21347
+ OR: 3,
21348
+ "3": "OR",
21361
21349
  /**
21362
- *r" Set `$rA` to `tx.bytecodeWitnessIndex`
21350
+ * Bitwise exclusive or
21363
21351
  */
21364
- CreateBytecodeWitnessIndex: 257,
21365
- "257": "CreateBytecodeWitnessIndex",
21352
+ XOR: 4,
21353
+ "4": "XOR",
21366
21354
  /**
21367
- *r" Set `$rA` to `tx.storageSlotsCount`
21355
+ * Bitwise and
21368
21356
  */
21369
- CreateStorageSlotsCount: 258,
21370
- "258": "CreateStorageSlotsCount",
21357
+ AND: 5,
21358
+ "5": "AND",
21371
21359
  /**
21372
- *r" Set `$rA` to `tx.inputsCount`
21360
+ * Shift left
21373
21361
  */
21374
- CreateInputsCount: 259,
21375
- "259": "CreateInputsCount",
21362
+ SHL: 6,
21363
+ "6": "SHL",
21376
21364
  /**
21377
- *r" Set `$rA` to `tx.outputsCount`
21365
+ * Shift right
21378
21366
  */
21379
- CreateOutputsCount: 260,
21380
- "260": "CreateOutputsCount",
21367
+ SHR: 7,
21368
+ "7": "SHR"
21369
+ });
21370
+ var PanicReason = Object.freeze({
21381
21371
  /**
21382
- *r" Set `$rA` to `tx.witnessesCount`
21372
+ *r" The byte can't be mapped to any known `PanicReason`.
21383
21373
  */
21384
- CreateWitnessesCount: 261,
21385
- "261": "CreateWitnessesCount",
21374
+ UnknownPanicReason: 0,
21375
+ "0": "UnknownPanicReason",
21386
21376
  /**
21387
- *r" Set `$rA` to `Memory address of tx.salt`
21377
+ *r" Found `RVRT` instruction.
21388
21378
  */
21389
- CreateSalt: 262,
21390
- "262": "CreateSalt",
21379
+ Revert: 1,
21380
+ "1": "Revert",
21391
21381
  /**
21392
- *r" Set `$rA` to `Memory address of tx.storageSlots[$rB]`
21382
+ *r" Execution ran out of gas.
21393
21383
  */
21394
- CreateStorageSlotAtIndex: 263,
21395
- "263": "CreateStorageSlotAtIndex",
21384
+ OutOfGas: 2,
21385
+ "2": "OutOfGas",
21396
21386
  /**
21397
- *r" Set `$rA` to `Memory address of tx.inputs[$rB]`
21387
+ *r" The transaction validity is violated.
21398
21388
  */
21399
- CreateInputAtIndex: 264,
21400
- "264": "CreateInputAtIndex",
21389
+ TransactionValidity: 3,
21390
+ "3": "TransactionValidity",
21401
21391
  /**
21402
- *r" Set `$rA` to `Memory address of t.outputs[$rB]`
21392
+ *r" Attempt to write outside interpreter memory boundaries.
21403
21393
  */
21404
- CreateOutputAtIndex: 265,
21405
- "265": "CreateOutputAtIndex",
21394
+ MemoryOverflow: 4,
21395
+ "4": "MemoryOverflow",
21406
21396
  /**
21407
- *r" Set `$rA` to `Memory address of tx.witnesses[$rB]`
21397
+ *r" Overflow while executing arithmetic operation.
21398
+ *r" These errors are ignored using the WRAPPING flag.
21408
21399
  */
21409
- CreateWitnessAtIndex: 266,
21410
- "266": "CreateWitnessAtIndex",
21400
+ ArithmeticOverflow: 5,
21401
+ "5": "ArithmeticOverflow",
21411
21402
  /**
21412
- *r" Set `$rA` to `tx.inputs[$rB].type`
21403
+ *r" Designed contract was not found in the storage.
21413
21404
  */
21414
- InputType: 512,
21415
- "512": "InputType",
21405
+ ContractNotFound: 6,
21406
+ "6": "ContractNotFound",
21416
21407
  /**
21417
- *r" Set `$rA` to `Memory address of tx.inputs[$rB].txID`
21408
+ *r" Memory ownership rules are violated.
21418
21409
  */
21419
- InputCoinTxId: 513,
21420
- "513": "InputCoinTxId",
21410
+ MemoryOwnership: 7,
21411
+ "7": "MemoryOwnership",
21421
21412
  /**
21422
- *r" Set `$rA` to `tx.inputs[$rB].outputIndex`
21413
+ *r" The asset ID balance isn't enough for the instruction.
21423
21414
  */
21424
- InputCoinOutputIndex: 514,
21425
- "514": "InputCoinOutputIndex",
21415
+ NotEnoughBalance: 8,
21416
+ "8": "NotEnoughBalance",
21426
21417
  /**
21427
- *r" Set `$rA` to `Memory address of tx.inputs[$rB].owner`
21418
+ *r" The interpreter is expected to be in internal context.
21428
21419
  */
21429
- InputCoinOwner: 515,
21430
- "515": "InputCoinOwner",
21420
+ ExpectedInternalContext: 9,
21421
+ "9": "ExpectedInternalContext",
21431
21422
  /**
21432
- *r" Set `$rA` to `tx.inputs[$rB].amount`
21423
+ *r" The queried asset ID was not found in the state.
21433
21424
  */
21434
- InputCoinAmount: 516,
21435
- "516": "InputCoinAmount",
21425
+ AssetIdNotFound: 10,
21426
+ "10": "AssetIdNotFound",
21436
21427
  /**
21437
- *r" Set `$rA` to `Memory address of tx.inputs[$rB].asset_id`
21428
+ *r" The provided input is not found in the transaction.
21438
21429
  */
21439
- InputCoinAssetId: 517,
21440
- "517": "InputCoinAssetId",
21430
+ InputNotFound: 11,
21431
+ "11": "InputNotFound",
21441
21432
  /**
21442
- *r" Set `$rA` to `Memory address of tx.inputs[$rB].txPointer`
21433
+ *r" The provided output is not found in the transaction.
21443
21434
  */
21444
- InputCoinTxPointer: 518,
21445
- "518": "InputCoinTxPointer",
21435
+ OutputNotFound: 12,
21436
+ "12": "OutputNotFound",
21446
21437
  /**
21447
- *r" Set `$rA` to `tx.inputs[$rB].witnessIndex`
21438
+ *r" The provided witness is not found in the transaction.
21448
21439
  */
21449
- InputCoinWitnessIndex: 519,
21450
- "519": "InputCoinWitnessIndex",
21440
+ WitnessNotFound: 13,
21441
+ "13": "WitnessNotFound",
21451
21442
  /**
21452
- *r" Set `$rA` to `tx.inputs[$rB].predicateLength`
21443
+ *r" The transaction maturity is not valid for this request.
21453
21444
  */
21454
- InputCoinPredicateLength: 521,
21455
- "521": "InputCoinPredicateLength",
21445
+ TransactionMaturity: 14,
21446
+ "14": "TransactionMaturity",
21456
21447
  /**
21457
- *r" Set `$rA` to `tx.inputs[$rB].predicateDataLength`
21448
+ *r" The metadata identifier is invalid.
21458
21449
  */
21459
- InputCoinPredicateDataLength: 522,
21460
- "522": "InputCoinPredicateDataLength",
21450
+ InvalidMetadataIdentifier: 15,
21451
+ "15": "InvalidMetadataIdentifier",
21461
21452
  /**
21462
- *r" Set `$rA` to `Memory address of tx.inputs[$rB].predicate`
21453
+ *r" The call structure is not valid.
21463
21454
  */
21464
- InputCoinPredicate: 523,
21465
- "523": "InputCoinPredicate",
21455
+ MalformedCallStructure: 16,
21456
+ "16": "MalformedCallStructure",
21466
21457
  /**
21467
- *r" Set `$rA` to `Memory address of tx.inputs[$rB].predicateData`
21458
+ *r" The provided register does not allow write operations.
21468
21459
  */
21469
- InputCoinPredicateData: 524,
21470
- "524": "InputCoinPredicateData",
21460
+ ReservedRegisterNotWritable: 17,
21461
+ "17": "ReservedRegisterNotWritable",
21471
21462
  /**
21472
- *r" Set `$rA` to `Memory address of tx.inputs[$rB].predicateGasUsed`
21463
+ *r" The execution resulted in an erroneous state of the interpreter.
21473
21464
  */
21474
- InputCoinPredicateGasUsed: 525,
21475
- "525": "InputCoinPredicateGasUsed",
21465
+ InvalidFlags: 18,
21466
+ "18": "InvalidFlags",
21476
21467
  /**
21477
- *r" Set `$rA` to `Memory address of tx.inputs[$rB].txID`
21468
+ *r" The provided immediate value is not valid for this instruction.
21478
21469
  */
21479
- InputContractTxId: 544,
21480
- "544": "InputContractTxId",
21470
+ InvalidImmediateValue: 19,
21471
+ "19": "InvalidImmediateValue",
21481
21472
  /**
21482
- *r" Set `$rA` to `tx.inputs[$rB].outputIndex`
21473
+ *r" The provided transaction input is not of type `Coin`.
21483
21474
  */
21484
- InputContractOutputIndex: 545,
21485
- "545": "InputContractOutputIndex",
21475
+ ExpectedCoinInput: 20,
21476
+ "20": "ExpectedCoinInput",
21486
21477
  /**
21487
- *r" Set `$rA` to `Memory address of tx.inputs[$rB].contractID`
21478
+ *r" `ECAL` instruction failed.
21488
21479
  */
21489
- InputContractId: 549,
21490
- "549": "InputContractId",
21480
+ EcalError: 21,
21481
+ "21": "EcalError",
21491
21482
  /**
21492
- *r" Set `$rA` to `Memory address of tx.inputs[$rB].sender`
21483
+ *r" Two segments of the interpreter memory should not intersect for write operations.
21493
21484
  */
21494
- InputMessageSender: 576,
21495
- "576": "InputMessageSender",
21485
+ MemoryWriteOverlap: 22,
21486
+ "22": "MemoryWriteOverlap",
21496
21487
  /**
21497
- *r" Set `$rA` to `Memory address of tx.inputs[$rB].recipient`
21488
+ *r" The requested contract is not listed in the transaction inputs.
21498
21489
  */
21499
- InputMessageRecipient: 577,
21500
- "577": "InputMessageRecipient",
21490
+ ContractNotInInputs: 23,
21491
+ "23": "ContractNotInInputs",
21501
21492
  /**
21502
- *r" Set `$rA` to `tx.inputs[$rB].amount`
21493
+ *r" The internal asset ID balance overflowed with the provided instruction.
21503
21494
  */
21504
- InputMessageAmount: 578,
21505
- "578": "InputMessageAmount",
21495
+ InternalBalanceOverflow: 24,
21496
+ "24": "InternalBalanceOverflow",
21506
21497
  /**
21507
- *r" Set `$rA` to `Memory address of tx.inputs[$rB].nonce`
21498
+ *r" The maximum allowed contract size is violated.
21508
21499
  */
21509
- InputMessageNonce: 579,
21510
- "579": "InputMessageNonce",
21500
+ ContractMaxSize: 25,
21501
+ "25": "ContractMaxSize",
21511
21502
  /**
21512
- *r" Set `$rA` to `tx.inputs[$rB].witnessIndex`
21503
+ *r" This instruction expects the stack area to be unallocated for this call.
21513
21504
  */
21514
- InputMessageWitnessIndex: 580,
21515
- "580": "InputMessageWitnessIndex",
21505
+ ExpectedUnallocatedStack: 26,
21506
+ "26": "ExpectedUnallocatedStack",
21516
21507
  /**
21517
- *r" Set `$rA` to `tx.inputs[$rB].dataLength`
21508
+ *r" The maximum allowed number of static contracts was reached for this transaction.
21518
21509
  */
21519
- InputMessageDataLength: 581,
21520
- "581": "InputMessageDataLength",
21510
+ MaxStaticContractsReached: 27,
21511
+ "27": "MaxStaticContractsReached",
21521
21512
  /**
21522
- *r" Set `$rA` to `tx.inputs[$rB].predicateLength`
21513
+ *r" The requested transfer amount cannot be zero.
21523
21514
  */
21524
- InputMessagePredicateLength: 582,
21525
- "582": "InputMessagePredicateLength",
21515
+ TransferAmountCannotBeZero: 28,
21516
+ "28": "TransferAmountCannotBeZero",
21526
21517
  /**
21527
- *r" Set `$rA` to `tx.inputs[$rB].predicateDataLength`
21518
+ *r" The provided transaction output should be of type `Variable`.
21528
21519
  */
21529
- InputMessagePredicateDataLength: 583,
21530
- "583": "InputMessagePredicateDataLength",
21520
+ ExpectedOutputVariable: 29,
21521
+ "29": "ExpectedOutputVariable",
21531
21522
  /**
21532
- *r" Set `$rA` to `Memory address of tx.inputs[$rB].data`
21523
+ *r" The expected context of the stack parent is internal.
21533
21524
  */
21534
- InputMessageData: 584,
21535
- "584": "InputMessageData",
21525
+ ExpectedParentInternalContext: 30,
21526
+ "30": "ExpectedParentInternalContext",
21536
21527
  /**
21537
- *r" Set `$rA` to `Memory address of tx.inputs[$rB].predicate`
21528
+ *r" The predicate returned non `1`. The `1` means successful verification
21529
+ *r" of the predicate, all other values means unsuccessful.
21538
21530
  */
21539
- InputMessagePredicate: 585,
21540
- "585": "InputMessagePredicate",
21531
+ PredicateReturnedNonOne: 31,
21532
+ "31": "PredicateReturnedNonOne",
21541
21533
  /**
21542
- *r" Set `$rA` to `Memory address of tx.inputs[$rB].predicateData`
21534
+ *r" The contract ID is already deployed and can't be overwritten.
21543
21535
  */
21544
- InputMessagePredicateData: 586,
21545
- "586": "InputMessagePredicateData",
21536
+ ContractIdAlreadyDeployed: 32,
21537
+ "32": "ContractIdAlreadyDeployed",
21546
21538
  /**
21547
- *r" Set `$rA` to `Memory address of tx.inputs[$rB].predicateGasUsed`
21539
+ *r" The loaded contract mismatch expectations.
21548
21540
  */
21549
- InputMessagePredicateGasUsed: 587,
21550
- "587": "InputMessagePredicateGasUsed",
21541
+ ContractMismatch: 33,
21542
+ "33": "ContractMismatch",
21551
21543
  /**
21552
- *r" Set `$rA` to `tx.outputs[$rB].type`
21544
+ *r" Attempting to send message data longer than `MAX_MESSAGE_DATA_LENGTH`
21553
21545
  */
21554
- OutputType: 768,
21555
- "768": "OutputType",
21546
+ MessageDataTooLong: 34,
21547
+ "34": "MessageDataTooLong",
21556
21548
  /**
21557
- *r" Set `$rA` to `Memory address of tx.outputs[$rB].to`
21549
+ *r" Mathematically invalid arguments where given to an arithmetic instruction.
21550
+ *r" For instance, division by zero produces this.
21551
+ *r" These errors are ignored using the UNSAFEMATH flag.
21558
21552
  */
21559
- OutputCoinTo: 769,
21560
- "769": "OutputCoinTo",
21553
+ ArithmeticError: 35,
21554
+ "35": "ArithmeticError",
21561
21555
  /**
21562
- *r" Set `$rA` to `tx.outputs[$rB].amount`
21556
+ *r" The contract instruction is not allowed in predicates.
21563
21557
  */
21564
- OutputCoinAmount: 770,
21565
- "770": "OutputCoinAmount",
21558
+ ContractInstructionNotAllowed: 36,
21559
+ "36": "ContractInstructionNotAllowed",
21566
21560
  /**
21567
- *r" Set `$rA` to `Memory address of tx.outputs[$rB].asset_id`
21561
+ *r" Transfer of zero coins is not allowed.
21568
21562
  */
21569
- OutputCoinAssetId: 771,
21570
- "771": "OutputCoinAssetId",
21563
+ TransferZeroCoins: 37,
21564
+ "37": "TransferZeroCoins",
21571
21565
  /**
21572
- *r" Set `$rA` to `tx.outputs[$rB].inputIndex`
21566
+ *r" Attempted to execute an invalid instruction
21573
21567
  */
21574
- OutputContractInputIndex: 772,
21575
- "772": "OutputContractInputIndex",
21568
+ InvalidInstruction: 38,
21569
+ "38": "InvalidInstruction",
21576
21570
  /**
21577
- *r" Set `$rA` to `Memory address of tx.outputs[$rB].contractID`
21571
+ *r" Memory outside $is..$ssp range is not executable
21578
21572
  */
21579
- OutputContractCreatedContractId: 775,
21580
- "775": "OutputContractCreatedContractId",
21573
+ MemoryNotExecutable: 39,
21574
+ "39": "MemoryNotExecutable",
21581
21575
  /**
21582
- *r" Set `$rA` to `Memory address of tx.outputs[$rB].stateRoot`
21576
+ *r" The policy is not set.
21583
21577
  */
21584
- OutputContractCreatedStateRoot: 776,
21585
- "776": "OutputContractCreatedStateRoot",
21578
+ PolicyIsNotSet: 40,
21579
+ "40": "PolicyIsNotSet",
21586
21580
  /**
21587
- *r" Set `$rA` to `tx.witnesses[$rB].dataLength`
21581
+ *r" The policy is not found across policies.
21588
21582
  */
21589
- WitnessDataLength: 1024,
21590
- "1024": "WitnessDataLength",
21583
+ PolicyNotFound: 41,
21584
+ "41": "PolicyNotFound",
21591
21585
  /**
21592
- *r" Set `$rA` to `Memory address of tx.witnesses[$rB].data`
21586
+ *r" Receipt context is full
21593
21587
  */
21594
- WitnessData: 1025,
21595
- "1025": "WitnessData",
21588
+ TooManyReceipts: 42,
21589
+ "42": "TooManyReceipts",
21596
21590
  /**
21597
- *r" Set `$rA` to `tx.policyTypes`
21591
+ *r" Balance of a contract overflowed
21598
21592
  */
21599
- PolicyTypes: 1280,
21600
- "1280": "PolicyTypes",
21593
+ BalanceOverflow: 43,
21594
+ "43": "BalanceOverflow",
21601
21595
  /**
21602
- *r" Set `$rA` to `tx.policies[0x00].gasPrice`
21596
+ *r" Block height value is invalid, typically because it is too large
21603
21597
  */
21604
- PolicyTip: 1281,
21605
- "1281": "PolicyTip",
21598
+ InvalidBlockHeight: 44,
21599
+ "44": "InvalidBlockHeight",
21606
21600
  /**
21607
- *r" Set `$rA` to `tx.policies[count_ones(0b11 & tx.policyTypes) - 1].witnessLimit`
21601
+ *r" Attempt to use sequential memory instructions with too large slot count,
21602
+ *r" typically because it cannot fit into usize
21608
21603
  */
21609
- PolicyWitnessLimit: 1282,
21610
- "1282": "PolicyWitnessLimit",
21604
+ TooManySlots: 45,
21605
+ "45": "TooManySlots",
21611
21606
  /**
21612
- *r" Set `$rA` to `tx.policies[count_ones(0b111 & tx.policyTypes) - 1].maturity`
21607
+ *r" Caller of this internal context is also expected to be internal,
21608
+ *r" i.e. $fp->$fp must be non-zero.
21613
21609
  */
21614
- PolicyMaturity: 1283,
21615
- "1283": "PolicyMaturity",
21610
+ ExpectedNestedCaller: 46,
21611
+ "46": "ExpectedNestedCaller",
21616
21612
  /**
21617
- *r" Set `$rA` to `tx.policies[count_ones(0b1111 & tx.policyTypes) - 1].maxFee`
21613
+ *r" During memory growth, the stack overlapped with the heap
21618
21614
  */
21619
- PolicyMaxFee: 1284,
21620
- "1284": "PolicyMaxFee"
21621
- });
21622
- var MathOp = Object.freeze({
21615
+ MemoryGrowthOverlap: 47,
21616
+ "47": "MemoryGrowthOverlap",
21623
21617
  /**
21624
- * Add
21618
+ *r" Attempting to read or write uninitialized memory.
21619
+ *r" Also occurs when boundary crosses from stack to heap.
21625
21620
  */
21626
- ADD: 0,
21627
- "0": "ADD",
21621
+ UninitalizedMemoryAccess: 48,
21622
+ "48": "UninitalizedMemoryAccess",
21623
+ /**
21624
+ *r" Overriding consensus parameters is not allowed.
21625
+ */
21626
+ OverridingConsensusParameters: 49,
21627
+ "49": "OverridingConsensusParameters",
21628
21628
  /**
21629
- * Subtract
21629
+ *r" The storage doesn't know about the hash of the state transition bytecode.
21630
21630
  */
21631
- SUB: 1,
21632
- "1": "SUB",
21631
+ UnknownStateTransactionBytecodeRoot: 50,
21632
+ "50": "UnknownStateTransactionBytecodeRoot",
21633
21633
  /**
21634
- * Invert bits (discards rhs)
21634
+ *r" Overriding the state transition bytecode is not allowed.
21635
21635
  */
21636
- NOT: 2,
21637
- "2": "NOT",
21636
+ OverridingStateTransactionBytecode: 51,
21637
+ "51": "OverridingStateTransactionBytecode",
21638
21638
  /**
21639
- * Bitwise or
21639
+ *r" The bytecode is already uploaded and cannot be uploaded again.
21640
21640
  */
21641
- OR: 3,
21642
- "3": "OR",
21641
+ BytecodeAlreadyUploaded: 52,
21642
+ "52": "BytecodeAlreadyUploaded",
21643
21643
  /**
21644
- * Bitwise exclusive or
21644
+ *r" The part of the bytecode is not sequentially connected to the previous parts.
21645
21645
  */
21646
- XOR: 4,
21647
- "4": "XOR",
21646
+ ThePartIsNotSequentiallyConnected: 53,
21647
+ "53": "ThePartIsNotSequentiallyConnected",
21648
21648
  /**
21649
- * Bitwise and
21649
+ *r" The requested blob is not found.
21650
21650
  */
21651
- AND: 5,
21652
- "5": "AND",
21651
+ BlobNotFound: 54,
21652
+ "54": "BlobNotFound",
21653
21653
  /**
21654
- * Shift left
21654
+ *r" The blob was already
21655
21655
  */
21656
- SHL: 6,
21657
- "6": "SHL",
21656
+ BlobIdAlreadyUploaded: 55,
21657
+ "55": "BlobIdAlreadyUploaded",
21658
21658
  /**
21659
- * Shift right
21659
+ *r" Active gas costs do not define the cost for this instruction.
21660
21660
  */
21661
- SHR: 7,
21662
- "7": "SHR"
21661
+ GasCostNotDefined: 56,
21662
+ "56": "GasCostNotDefined"
21663
21663
  });
21664
21664
  var ADDFinalization = typeof FinalizationRegistry === "undefined" ? { register: () => {
21665
21665
  }, unregister: () => {
@@ -24335,14 +24335,14 @@ spurious results.`);
24335
24335
  }
24336
24336
  /**
24337
24337
  * Construct the instruction from its parts.
24338
- * @param {RegId} contract_id_addr
24338
+ * @param {RegId} src_addr
24339
24339
  * @param {RegId} offset
24340
24340
  * @param {RegId} len
24341
24341
  * @param {Imm06} mode
24342
24342
  */
24343
- constructor(contract_id_addr, offset, len, mode) {
24344
- _assertClass(contract_id_addr, RegId);
24345
- var ptr0 = contract_id_addr.__destroy_into_raw();
24343
+ constructor(src_addr, offset, len, mode) {
24344
+ _assertClass(src_addr, RegId);
24345
+ var ptr0 = src_addr.__destroy_into_raw();
24346
24346
  _assertClass(offset, RegId);
24347
24347
  var ptr1 = offset.__destroy_into_raw();
24348
24348
  _assertClass(len, RegId);
@@ -28658,7 +28658,7 @@ spurious results.`);
28658
28658
  }
28659
28659
  }
28660
28660
  function wasm(imports) {
28661
- return _loadWasmModule(1, null, "AGFzbQEAAAABOgpgA39/fwF/YAF/AX9gBH9/f38Bf2ACf38AYAJ/fwF/YAABf2AFf39/f38Bf2ABfwBgA39/fwBgAAACGAEDd2JnEF9fd2JpbmRnZW5fdGhyb3cAAwP/Af0BAQEDAwMDAwMBAQMDAQEBAwMBAQEEAQMDAwEBAwEBAQQCAQMCAgICAgIDAwMEBAQEBAQEBAEBAQMDAAICBAQEBAQEBAQEBAABAQgDAwQBAQEBAQEBAgcDAQAAAQEDBwcBAwEDAgIBAQEAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQEBAQUBAQEBBAAEAQYCAgMDAAIABwEIBAEEAQkDAQEHAQUFBQUFBQUFBQUFBQUFBQUFBQUDBgYCAgQCBgYAAAgABAUDAQARBgkBfwFBgIDAAAsHjUzPBQZtZW1vcnkCABZfX3diZ19jb21wYXJlYXJnc19mcmVlABAaX193YmdfZ2V0X2NvbXBhcmVhcmdzX21vZGUASBpfX3diZ19zZXRfY29tcGFyZWFyZ3NfbW9kZQA4Il9fd2JnX2dldF9jb21wYXJlYXJnc19pbmRpcmVjdF9yaHMASSJfX3diZ19zZXRfY29tcGFyZWFyZ3NfaW5kaXJlY3RfcmhzAEsSY29tcGFyZWFyZ3NfdG9faW1tAFgUY29tcGFyZWFyZ3NfZnJvbV9pbW0AHxVfX3diZ19nZXRfbWF0aGFyZ3Nfb3AASBVfX3diZ19zZXRfbWF0aGFyZ3Nfb3AAORJfX3diZ19tdWxhcmdzX2ZyZWUAER5fX3diZ19nZXRfbXVsYXJnc19pbmRpcmVjdF9yaHMASB5fX3diZ19zZXRfbXVsYXJnc19pbmRpcmVjdF9yaHMATBJfX3diZ19kaXZhcmdzX2ZyZWUAIx5fX3diZ19nZXRfZGl2YXJnc19pbmRpcmVjdF9yaHMAuQEeX193Ymdfc2V0X2RpdmFyZ3NfaW5kaXJlY3RfcmhzAGMbX193YmdfcGFuaWNpbnN0cnVjdGlvbl9mcmVlABchcGFuaWNpbnN0cnVjdGlvbl9lcnJvcl90eXBlc2NyaXB0AE0XcGFuaWNpbnN0cnVjdGlvbl9yZWFzb24AWxxwYW5pY2luc3RydWN0aW9uX2luc3RydWN0aW9uAFwMZ21fZnJvbV9hcmdzANUBDWd0Zl9mcm9tX2FyZ3MAzQEHZ21fYXJncwCIAQhndGZfYXJncwBpDndkY21fZnJvbV9hcmdzADsOd2RvcF9mcm9tX2FyZ3MAOw53ZG1sX2Zyb21fYXJncwA8DndkZHZfZnJvbV9hcmdzAMkBCXdkY21fYXJncwAkCXdxY21fYXJncwAlCXdkb3BfYXJncwAmCXdxb3BfYXJncwAnCXdkbWxfYXJncwAoCXdxbWxfYXJncwApCXdkZHZfYXJncwBkCXdxZHZfYXJncwBlEF9fd2JnX2ltbTA2X2ZyZWUAKhBfX3diZ19pbW0xMl9mcmVlACsQX193YmdfaW1tMThfZnJlZQAsDl9fd2JnX2FkZF9mcmVlABgPX193Ymdfbm9vcF9mcmVlAAcSYWRkX25ld190eXBlc2NyaXB0AFkGYWRkX3JhADUGYWRkX3JiABIGYWRkX3JjABoDYWRkAMUBA2FuZACKAQNkaXYAiwECZXEAjAEDZXhwAI0BAmd0AI4BAmx0AI8BBG1sb2cAkAEEbXJvbwCRAQRtb2RfAJIBBW1vdmVfAD0DbXVsAJMBA25vdAA+Am9yAJQBA3NsbACVAQNzcmwAlgEDc3ViAJcBA3hvcgCYAQRtbGR2AGoDcmV0ALoBBHJldGQAPxNhbG9jX25ld190eXBlc2NyaXB0AGAHYWxvY19yYQAiBGFsb2MAuwEDbWNsAEADbWNwAJkBA21lcQBrE2Joc2hfbmV3X3R5cGVzY3JpcHQAIARiaHNoAC0EYmhlaQC8AQRidXJuAEEEY2FsbABsA2NjcABtBGNyb28AQgRjc2l6AEMCY2IAvQEDbGRjAG4DbG9nAG8EbG9nZABwBG1pbnQARARydnJ0AL4BBHNjd3EAmgEDc3J3AJsBBHNyd3EAcQNzd3cAnAEEc3d3cQByAnRyAJ0BA3RybwBzBGVjazEAngEEZWNyMQCfAQRlZDE5AHQEazI1NgCgAQRzMjU2AKEBBHRpbWUARRNub29wX25ld190eXBlc2NyaXB0AL8BBG5vb3AA3QEEZmxhZwDAAQNiYWwAogEDam1wAMEBA2puZQCjAQNzbW8AdRNhZGRpX25ld190eXBlc2NyaXB0AFoKYWRkaV9pbW0xMgAJBGFkZGkApAEEYW5kaQClAQRkaXZpAKYBBGV4cGkApwEEbW9kaQCoAQRtdWxpAKkBA29yaQCqAQRzbGxpAKsBBHNybGkArAEEc3ViaQCtAQR4b3JpAK4BBGpuZWkArwECbGIAsAECbHcAsQECc2IAsgECc3cAswEEbWNwaQC0ARJndGZfbmV3X3R5cGVzY3JpcHQAzwEDZ3RmALUBBG1jbGkALhFnbV9uZXdfdHlwZXNjcmlwdABGCGdtX2ltbTE4AA0CZ20ALwRtb3ZpADAEam56aQAxBGptcGYAMhNqbXBiX25ld190eXBlc2NyaXB0ABUEam1wYgAzBGpuemYAtgEEam56YgC3AQRqbmVmAHYKam5lYl9pbW0wNgA2BGpuZWIAdwJqaQBOE2NmZWlfbmV3X3R5cGVzY3JpcHQANwpjZmVpX2ltbTI0AAoEY2ZlaQBPBGNmc2kAUANjZmUAwgEDY2ZzAMMBBHBzaGwAUQRwc2hoAFIEcG9wbABTBHBvcGgAVBN3ZGNtX25ld190eXBlc2NyaXB0AMoBBHdkY20AeAR3cWNtAHkEd2RvcAB6BHdxb3AAewR3ZG1sAHwEd3FtbAB9BHdkZHYAfgR3cWR2AH8Ed2RtZACAAQR3cW1kAIEBBHdkYW0AggEEd3FhbQCDAQR3ZG1tAIQBBHdxbW0AhQEEZWNhbACGAQRic2l6ADQTYmxkZF9uZXdfdHlwZXNjcmlwdABVB2JsZGRfcmQANgRibGRkAIcBFl9fd2JnX2luc3RydWN0aW9uX2ZyZWUADBRpbnN0cnVjdGlvbl90b19ieXRlcwAGEGluc3RydWN0aW9uX3NpemUA7wERcmVnaWRfbmV3X2NoZWNrZWQAuAEJcmVnaWRfYmFsAN4BCnJlZ2lkX2NnYXMA3wEJcmVnaWRfZXJyAOABCnJlZ2lkX2ZsYWcA4QEIcmVnaWRfZnAA4gEKcmVnaWRfZ2dhcwDjAQhyZWdpZF9ocADkAQhyZWdpZF9pcwDlAQhyZWdpZF9vZgDmAQlyZWdpZF9vbmUA5wEIcmVnaWRfcGMA6AEJcmVnaWRfcmV0AOkBCnJlZ2lkX3JldGwA6gEIcmVnaWRfc3AA6wEJcmVnaWRfc3BwAOwBDnJlZ2lkX3dyaXRhYmxlAO0BCnJlZ2lkX3plcm8A7gEUcmVnaWRfbmV3X3R5cGVzY3JpcHQA2QELcmVnaWRfdG9fdTgA2gESYW5kX25ld190eXBlc2NyaXB0AFkSZGl2X25ld190eXBlc2NyaXB0AFkRZXFfbmV3X3R5cGVzY3JpcHQAWRJleHBfbmV3X3R5cGVzY3JpcHQAWRFndF9uZXdfdHlwZXNjcmlwdABZEWx0X25ld190eXBlc2NyaXB0AFkTbWxvZ19uZXdfdHlwZXNjcmlwdABZE21yb29fbmV3X3R5cGVzY3JpcHQAWRJtb2RfbmV3X3R5cGVzY3JpcHQAWRJtdWxfbmV3X3R5cGVzY3JpcHQAWRFvcl9uZXdfdHlwZXNjcmlwdABZEnNsbF9uZXdfdHlwZXNjcmlwdABZEnNybF9uZXdfdHlwZXNjcmlwdABZEnN1Yl9uZXdfdHlwZXNjcmlwdABZEnhvcl9uZXdfdHlwZXNjcmlwdABZEm1jcF9uZXdfdHlwZXNjcmlwdABZE3Njd3FfbmV3X3R5cGVzY3JpcHQAWRJzcndfbmV3X3R5cGVzY3JpcHQAWRJzd3dfbmV3X3R5cGVzY3JpcHQAWRF0cl9uZXdfdHlwZXNjcmlwdABZE2VjazFfbmV3X3R5cGVzY3JpcHQAWRNlY3IxX25ld190eXBlc2NyaXB0AFkTazI1Nl9uZXdfdHlwZXNjcmlwdABZE3MyNTZfbmV3X3R5cGVzY3JpcHQAWRJiYWxfbmV3X3R5cGVzY3JpcHQAWRJqbmVfbmV3X3R5cGVzY3JpcHQAWRNhbmRpX25ld190eXBlc2NyaXB0AFoTZGl2aV9uZXdfdHlwZXNjcmlwdABaE2V4cGlfbmV3X3R5cGVzY3JpcHQAWhNtb2RpX25ld190eXBlc2NyaXB0AFoTbXVsaV9uZXdfdHlwZXNjcmlwdABaEm9yaV9uZXdfdHlwZXNjcmlwdABaE3NsbGlfbmV3X3R5cGVzY3JpcHQAWhNzcmxpX25ld190eXBlc2NyaXB0AFoTc3ViaV9uZXdfdHlwZXNjcmlwdABaE3hvcmlfbmV3X3R5cGVzY3JpcHQAWhNqbmVpX25ld190eXBlc2NyaXB0AFoRbGJfbmV3X3R5cGVzY3JpcHQAWhFsd19uZXdfdHlwZXNjcmlwdABaEXNiX25ld190eXBlc2NyaXB0AFoRc3dfbmV3X3R5cGVzY3JpcHQAWhNtY3BpX25ld190eXBlc2NyaXB0AFoTam56Zl9uZXdfdHlwZXNjcmlwdABaE2puemJfbmV3X3R5cGVzY3JpcHQAWhFqaV9uZXdfdHlwZXNjcmlwdAA3E2Nmc2lfbmV3X3R5cGVzY3JpcHQANxNwc2hsX25ld190eXBlc2NyaXB0ADcTcHNoaF9uZXdfdHlwZXNjcmlwdAA3E3BvcGxfbmV3X3R5cGVzY3JpcHQANxNwb3BoX25ld190eXBlc2NyaXB0ADcTbW92aV9uZXdfdHlwZXNjcmlwdAAVE21jbGlfbmV3X3R5cGVzY3JpcHQAFRNqbnppX25ld190eXBlc2NyaXB0ABUTam1wZl9uZXdfdHlwZXNjcmlwdAAVEm5vdF9uZXdfdHlwZXNjcmlwdAAgE3JldGRfbmV3X3R5cGVzY3JpcHQAIBNtb3ZlX25ld190eXBlc2NyaXB0ACASbWNsX25ld190eXBlc2NyaXB0ACATYnVybl9uZXdfdHlwZXNjcmlwdAAgE2Nyb29fbmV3X3R5cGVzY3JpcHQAIBNjc2l6X25ld190eXBlc2NyaXB0ACATbWludF9uZXdfdHlwZXNjcmlwdAAgE3RpbWVfbmV3X3R5cGVzY3JpcHQAIBNic2l6X25ld190eXBlc2NyaXB0ACAGcmV0X3JhACIHYmhlaV9yYQAiBWNiX3JhACIHcnZydF9yYQAiB2ZsYWdfcmEAIgZqbXBfcmEAIghqaV9pbW0yNAAKCmNmc2lfaW1tMjQACgZjZmVfcmEAIgZjZnNfcmEAIgpwc2hsX2ltbTI0AAoKcHNoaF9pbW0yNAAKCnBvcGxfaW1tMjQACgpwb3BoX2ltbTI0AAoTbWxkdl9uZXdfdHlwZXNjcmlwdABVEm1lcV9uZXdfdHlwZXNjcmlwdABVEmNjcF9uZXdfdHlwZXNjcmlwdABVEmxvZ19uZXdfdHlwZXNjcmlwdABVE2xvZ2RfbmV3X3R5cGVzY3JpcHQAVRNzcndxX25ld190eXBlc2NyaXB0AFUTc3d3cV9uZXdfdHlwZXNjcmlwdABVEnRyb19uZXdfdHlwZXNjcmlwdABVE2VkMTlfbmV3X3R5cGVzY3JpcHQAVRJzbW9fbmV3X3R5cGVzY3JpcHQAVRJsZGNfbmV3X3R5cGVzY3JpcHQAVRNqbmVmX25ld190eXBlc2NyaXB0AFUTd2RtZF9uZXdfdHlwZXNjcmlwdABVE3dxbWRfbmV3X3R5cGVzY3JpcHQAVRN3ZGFtX25ld190eXBlc2NyaXB0AFUTd3FhbV9uZXdfdHlwZXNjcmlwdABVE3dkbW1fbmV3X3R5cGVzY3JpcHQAVRN3cW1tX25ld190eXBlc2NyaXB0AFUTZWNhbF9uZXdfdHlwZXNjcmlwdABVE2NhbGxfbmV3X3R5cGVzY3JpcHQAVRNfX3diZ19tYXRoYXJnc19mcmVlABAfX193Ymdfc2V0X21hdGhhcmdzX2luZGlyZWN0X3JocwBLHl9fd2JnX3NldF9tdWxhcmdzX2luZGlyZWN0X2xocwBLH19fd2JnX2dldF9tYXRoYXJnc19pbmRpcmVjdF9yaHMASR5fX3diZ19nZXRfbXVsYXJnc19pbmRpcmVjdF9saHMASRJyZXRfbmV3X3R5cGVzY3JpcHQAYBNiaGVpX25ld190eXBlc2NyaXB0AGARY2JfbmV3X3R5cGVzY3JpcHQAYBNydnJ0X25ld190eXBlc2NyaXB0AGATZmxhZ19uZXdfdHlwZXNjcmlwdABgEmptcF9uZXdfdHlwZXNjcmlwdABgEmNmZV9uZXdfdHlwZXNjcmlwdABgEmNmc19uZXdfdHlwZXNjcmlwdABgDl9fd2JnX3Ryb19mcmVlABgNX193YmdfbGJfZnJlZQAYD19fd2JnX3NybGlfZnJlZQAYD19fd2JnX3dxZHZfZnJlZQAYDV9fd2JnX3RyX2ZyZWUAGA9fX3diZ19lZDE5X2ZyZWUAGA5fX3diZ19tY2xfZnJlZQAYD19fd2JnX2RpdmlfZnJlZQAYDl9fd2JnX2xvZ19mcmVlABgPX193Ymdfam5laV9mcmVlABgOX193YmdfcmV0X2ZyZWUAGA5fX3diZ19tb2RfZnJlZQAYD19fd2JnX2NzaXpfZnJlZQAYD19fd2JnX2NhbGxfZnJlZQAYD19fd2JnX2Joc2hfZnJlZQAYD19fd2JnX3dkY21fZnJlZQAYDV9fd2JnX3NiX2ZyZWUAGA9fX3diZ19zY3dxX2ZyZWUAGA1fX3diZ19sd19mcmVlABgPX193YmdfYW5kaV9mcmVlABgPX193YmdfeG9yaV9mcmVlABgPX193YmdfY2ZzaV9mcmVlABgPX193YmdfbWxkdl9mcmVlABgPX193YmdfZXhwaV9mcmVlABgNX193YmdfZXFfZnJlZQAYDl9fd2JnX3N1Yl9mcmVlABgOX193Ymdfam1wX2ZyZWUAGA9fX3diZ19tdWxpX2ZyZWUAGA5fX3diZ19tZXFfZnJlZQAYD19fd2JnX3dkb3BfZnJlZQAYD19fd2JnX3N3d3FfZnJlZQAYD19fd2JnX2NmZWlfZnJlZQAYD19fd2JnX2VjazFfZnJlZQAYDV9fd2JnX2dtX2ZyZWUAGA9fX3diZ19qbmVmX2ZyZWUAGA5fX3diZ19iYWxfZnJlZQAYDl9fd2JnX3Ntb19mcmVlABgPX193Ymdfam56Zl9mcmVlABgPX193YmdfYWRkaV9mcmVlABgPX193YmdfbG9nZF9mcmVlABgOX193YmdfZGl2X2ZyZWUAGA9fX3diZ19rMjU2X2ZyZWUAGA5fX3diZ19sZGNfZnJlZQAYD19fd2JnX2JoZWlfZnJlZQAYD19fd2JnX2VjYWxfZnJlZQAYDV9fd2JnX2NiX2ZyZWUAGA9fX3diZ19wb3BsX2ZyZWUAGA1fX3diZ19qaV9mcmVlABgPX193YmdfZWNyMV9mcmVlABgPX193YmdfYnNpel9mcmVlABgOX193YmdfZXhwX2ZyZWUAGA9fX3diZ193ZGR2X2ZyZWUAGA9fX3diZ193ZG1kX2ZyZWUAGA9fX3diZ19tb2RpX2ZyZWUAGA9fX3diZ193cW1tX2ZyZWUAGA9fX3diZ19idXJuX2ZyZWUAGA5fX3diZ194b3JfZnJlZQAYD19fd2JnX21jbGlfZnJlZQAYDl9fd2JnX211bF9mcmVlABgOX193YmdfY2NwX2ZyZWUAGA9fX3diZ193cW1sX2ZyZWUAGA9fX3diZ19qbXBiX2ZyZWUAGA5fX3diZ19zcmxfZnJlZQAYD19fd2JnX3J2cnRfZnJlZQAYD19fd2JnX21pbnRfZnJlZQAYDl9fd2JnX2puZV9mcmVlABgPX193YmdfYWxvY19mcmVlABgPX193YmdfbW92ZV9mcmVlABgPX193Ymdfd3FvcF9mcmVlABgPX193YmdfbWNwaV9mcmVlABgOX193Ymdfb3JpX2ZyZWUAGA9fX3diZ19zbGxpX2ZyZWUAGA5fX3diZ19hbmRfZnJlZQAYD19fd2JnX21sb2dfZnJlZQAYD19fd2JnX3dxbWRfZnJlZQAYD19fd2JnX3Nyd3FfZnJlZQAYD19fd2JnX2ZsYWdfZnJlZQAYDV9fd2JnX3N3X2ZyZWUAGA5fX3diZ19jZmVfZnJlZQAYD19fd2JnX3dxYW1fZnJlZQAYDl9fd2JnX21jcF9mcmVlABgOX193Ymdfc3d3X2ZyZWUAGA5fX3diZ19jZnNfZnJlZQAYDV9fd2JnX29yX2ZyZWUAGA1fX3diZ19ndF9mcmVlABgPX193Ymdfd3FjbV9mcmVlABgPX193YmdfbW92aV9mcmVlABgPX193Ymdfam1wZl9mcmVlABgPX193Ymdfam5lYl9mcmVlABgPX193Ymdfd2RtbF9mcmVlABgOX193Ymdfc2xsX2ZyZWUAGA9fX3diZ190aW1lX2ZyZWUAGA9fX3diZ193ZG1tX2ZyZWUAGA9fX3diZ19qbnpiX2ZyZWUAGA9fX3diZ19wb3BoX2ZyZWUAGA9fX3diZ19ibGRkX2ZyZWUAGA9fX3diZ19yZXRkX2ZyZWUAGA5fX3diZ19ndGZfZnJlZQAYD19fd2JnX2Nyb29fZnJlZQAYD19fd2JnX2puemlfZnJlZQAYD19fd2JnX3BzaGxfZnJlZQAYD19fd2JnX21yb29fZnJlZQAYDl9fd2JnX25vdF9mcmVlABgPX193Ymdfd2RhbV9mcmVlABgOX193Ymdfc3J3X2ZyZWUAGA1fX3diZ19sdF9mcmVlABgPX193YmdfczI1Nl9mcmVlABgPX193Ymdfc3ViaV9mcmVlABgPX193YmdfcHNoaF9mcmVlABgTd3Fkdl9uZXdfdHlwZXNjcmlwdADKARN3cW1sX25ld190eXBlc2NyaXB0AMoBE3dkbWxfbmV3X3R5cGVzY3JpcHQAygETd3FvcF9uZXdfdHlwZXNjcmlwdADKARN3ZG9wX25ld190eXBlc2NyaXB0AMoBE3dxY21fbmV3X3R5cGVzY3JpcHQAygETd2Rkdl9uZXdfdHlwZXNjcmlwdADKAQ53cWNtX2Zyb21fYXJncwA7CndxZHZfaW1tMDYANgp3cW1sX2ltbTA2ADYKd2RtbF9pbW0wNgA2Cndxb3BfaW1tMDYANgp3ZG9wX2ltbTA2ADYKd3FjbV9pbW0wNgA2CndkZHZfaW1tMDYANgp3ZGNtX2ltbTA2ADYKam5lZl9pbW0wNgA2CWxkY19pbW0wNgA2Dndxb3BfZnJvbV9hcmdzADsOd3FtbF9mcm9tX2FyZ3MAPA53cWR2X2Zyb21fYXJncwDJAQVnbV9yYQA1BWd0X3JjABoFZ3RfcmIAEgVndF9yYQA1BWxiX3JiABIFbGJfcmEANQVsdF9yYwAaBWx0X3JiABIFbHRfcmEANQhsd19pbW0xMgAJBWx3X3JiABIFbHdfcmEANQVvcl9yYwAaBW9yX3JiABIFb3JfcmEANQhzYl9pbW0xMgAJBXNiX3JiABIFc2JfcmEANQhzd19pbW0xMgAJBXN3X3JiABIFc3dfcmEANQV0cl9yYwAaBXRyX3JiABIFdHJfcmEANQVlcV9yYwAaBWVxX3JiABIFZXFfcmEANQZhbmRfcmMAGgZhbmRfcmIAEgZhbmRfcmEANQZiYWxfcmMAGgZiYWxfcmIAEgZiYWxfcmEANQZjY3BfcmMAGgZjY3BfcmIAEgZjY3BfcmEANQZkaXZfcmMAGgZkaXZfcmIAEgZkaXZfcmEANQZleHBfcmMAGgZleHBfcmIAEgZleHBfcmEANQhsYl9pbW0xMgAJBmd0Zl9yYgASBmd0Zl9yYQA1BmpuZV9yYwAaBmpuZV9yYgASBmpuZV9yYQA1BmxkY19yYwAaBmxkY19yYgASBmxkY19yYQA1BmxvZ19yZAA2BmxvZ19yYwAaBmxvZ19yYgASBmxvZ19yYQA1Bm1jbF9yYgASBm1jbF9yYQA1Bm1jcF9yYwAaBm1jcF9yYgASBm1jcF9yYQA1Bm1lcV9yZAA2Bm1lcV9yYwAaBm1lcV9yYgASBm1lcV9yYQA1Bm1vZF9yYwAaBm1vZF9yYgASBm1vZF9yYQA1Bm11bF9yYwAaBm11bF9yYgASBm11bF9yYQA1Bm5vdF9yYgASBm5vdF9yYQA1CW9yaV9pbW0xMgAJBm9yaV9yYgASBm9yaV9yYQA1BnNsbF9yYwAaBnNsbF9yYgASBnNsbF9yYQA1BnNtb19yZAA2BnNtb19yYwAaBnNtb19yYgASBnNtb19yYQA1BnNybF9yYwAaBnNybF9yYgASBnNybF9yYQA1BnNyd19yYwAaBnNyd19yYgASBnNyd19yYQA1BnN1Yl9yYwAaBnN1Yl9yYgASBnN1Yl9yYQA1BnN3d19yYwAaBnN3d19yYgASBnN3d19yYQA1BnRyb19yZAA2BnRyb19yYwAaBnRyb19yYgASBnRyb19yYQA1Bnhvcl9yYwAaBnhvcl9yYgASBnhvcl9yYQA1CWd0Zl9pbW0xMgAJB2FkZGlfcmIAEgdhZGRpX3JhADUKYW5kaV9pbW0xMgAJB2FuZGlfcmIAEgdhbmRpX3JhADUHYmhzaF9yYgASB2Joc2hfcmEANQZjY3BfcmQANgdibGRkX3JjABoHYmxkZF9yYgASB2JsZGRfcmEANQdic2l6X3JiABIHYnNpel9yYQA1B2J1cm5fcmIAEgdidXJuX3JhADUHY2FsbF9yZAA2B2NhbGxfcmMAGgdjYWxsX3JiABIHY2FsbF9yYQA1B2Nyb29fcmIAEgdjcm9vX3JhADUHY3Npel9yYgASB2NzaXpfcmEANQpkaXZpX2ltbTEyAAkHZGl2aV9yYgASB2RpdmlfcmEANQdlY2FsX3JkADYHZWNhbF9yYwAaB2VjYWxfcmIAEgdlY2FsX3JhADUHZWNrMV9yYwAaB2VjazFfcmIAEgdlY2sxX3JhADUHZWNyMV9yYwAaB2VjcjFfcmIAEgdlY3IxX3JhADUHZWQxOV9yZAA2B2VkMTlfcmMAGgdlZDE5X3JiABIHZWQxOV9yYQA1CmV4cGlfaW1tMTIACQdleHBpX3JiABIHZXhwaV9yYQA1CmptcGJfaW1tMTgADQdqbXBiX3JhADUKam1wZl9pbW0xOAANB2ptcGZfcmEANQdqbmViX3JjABoHam5lYl9yYgASB2puZWJfcmEANQdqbmVmX3JjABoHam5lZl9yYgASB2puZWZfcmEANQpqbmVpX2ltbTEyAAkHam5laV9yYgASB2puZWlfcmEANQpqbnpiX2ltbTEyAAkHam56Yl9yYgASB2puemJfcmEANQpqbnpmX2ltbTEyAAkHam56Zl9yYgASB2puemZfcmEANQpqbnppX2ltbTE4AA0Ham56aV9yYQA1B2syNTZfcmMAGgdrMjU2X3JiABIHazI1Nl9yYQA1B2xvZ2RfcmQANgdsb2dkX3JjABoHbG9nZF9yYgASB2xvZ2RfcmEANQptY2xpX2ltbTE4AA0HbWNsaV9yYQA1Cm1jcGlfaW1tMTIACQdtY3BpX3JiABIHbWNwaV9yYQA1B21pbnRfcmIAEgdtaW50X3JhADUHbWxkdl9yZAA2B21sZHZfcmMAGgdtbGR2X3JiABIHbWxkdl9yYQA1B21sb2dfcmMAGgdtbG9nX3JiABIHbWxvZ19yYQA1Cm1vZGlfaW1tMTIACQdtb2RpX3JiABIHbW9kaV9yYQA1B21vdmVfcmIAEgdtb3ZlX3JhADUKbW92aV9pbW0xOAANB21vdmlfcmEANQdtcm9vX3JjABoHbXJvb19yYgASB21yb29fcmEANQptdWxpX2ltbTEyAAkHbXVsaV9yYgASB211bGlfcmEANQdyZXRkX3JiABIHcmV0ZF9yYQA1B3MyNTZfcmMAGgdzMjU2X3JiABIHczI1Nl9yYQA1B3Njd3FfcmMAGgdzY3dxX3JiABIHc2N3cV9yYQA1CnNsbGlfaW1tMTIACQdzbGxpX3JiABIHc2xsaV9yYQA1CnNybGlfaW1tMTIACQdzcmxpX3JiABIHc3JsaV9yYQA1B3Nyd3FfcmQANgdzcndxX3JjABoHc3J3cV9yYgASB3Nyd3FfcmEANQpzdWJpX2ltbTEyAAkHc3ViaV9yYgASB3N1YmlfcmEANQdzd3dxX3JkADYHc3d3cV9yYwAaB3N3d3FfcmIAEgdzd3dxX3JhADUHdGltZV9yYgASB3RpbWVfcmEANQd3ZGFtX3JkADYHd2RhbV9yYwAaB3dkYW1fcmIAEgd3ZGFtX3JhADUHd2RjbV9yYwAaB3dkY21fcmIAEgd3ZGNtX3JhADUHd2Rkdl9yYwAaB3dkZHZfcmIAEgd3ZGR2X3JhADUHd2RtZF9yZAA2B3dkbWRfcmMAGgd3ZG1kX3JiABIHd2RtZF9yYQA1B3dkbWxfcmMAGgd3ZG1sX3JiABIHd2RtbF9yYQA1B3dkbW1fcmQANgd3ZG1tX3JjABoHd2RtbV9yYgASB3dkbW1fcmEANQd3ZG9wX3JjABoHd2RvcF9yYgASB3dkb3BfcmEANQd3cWFtX3JkADYHd3FhbV9yYwAaB3dxYW1fcmIAEgd3cWFtX3JhADUHd3FjbV9yYwAaB3dxY21fcmIAEgd3cWNtX3JhADUHd3Fkdl9yYwAaB3dxZHZfcmIAEgd3cWR2X3JhADUHd3FtZF9yZAA2B3dxbWRfcmMAGgd3cW1kX3JiABIHd3FtZF9yYQA1B3dxbWxfcmMAGgd3cW1sX3JiABIHd3FtbF9yYQA1B3dxbW1fcmQA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C0HggsAAQRkQ2AEACykBAX9BEEEEEMYBIgEgADYCDCABQQA2AgggAUKBgICAEDcCACABQQhqCykBAX9BEEEEEMYBIgEgADoADCABQQA2AgggAUKBgICAEDcCACABQQhqCyIAIAIQAiECIAAQxwEgARDHASACEEdBCHRBygByENEBEGcLDwAgACABIAIgA0ESEPEBCw8AIAAgASACIANBGBDxAQsPACAAIAEgAiADQRwQ8QELDwAgACABIAIgA0EdEPEBCw8AIAAgASACIANBIRDyAQsPACAAIAEgAiADQSIQ8QELDwAgACABIAIgA0EjEPEBCw8AIAAgASACIANBKBDxAQsPACAAIAEgAiADQSoQ8QELDwAgACABIAIgA0EsEPEBCw8AIAAgASACIANBLxDxAQsPACAAIAEgAiADQTgQ8QELEAAgACABIAIgA0HTABDyAQsQACAAIAEgAiADQdQAEPIBCxAAIAAgASACIANB3gAQ8gELEAAgACABIAIgA0HfABDyAQsQACAAIAEgAiADQeAAEPIBCxAAIAAgASACIANB4QAQ8gELEAAgACABIAIgA0HiABDyAQsQACAAIAEgAiADQeMAEPIBCxAAIAAgASACIANB5AAQ8gELEAAgACABIAIgA0HlABDyAQsQACAAIAEgAiADQeYAEPEBCxAAIAAgASACIANB5wAQ8QELEAAgACABIAIgA0HoABDxAQsQACAAIAEgAiADQekAEPEBCxAAIAAgASACIANB6gAQ8QELEAAgACABIAIgA0HrABDxAQsQACAAIAEgAiADQewAEPEBCxAAIAAgASACIANB7gAQ8QELHgAgARBmIQEgABDHASABEMQBQQh0QcwAchDRARBnCxkAIAAgASACQSBBACAEG0EQQQAgAxtyECELDQAgACABIAJBARDzAQsNACAAIAEgAkECEPMBCw0AIAAgASACQQMQ8wELDQAgACABIAJBBBDzAQsNACAAIAEgAkEFEPMBCw0AIAAgASACQQYQ8wELDQAgACABIAJBBxDzAQsNACAAIAEgAkEIEPMBCw0AIAAgASACQQkQ8wELDQAgACABIAJBCxDzAQsNACAAIAEgAkENEPMBCw0AIAAgASACQQ4Q8wELDQAgACABIAJBDxDzAQsNACAAIAEgAkEQEPMBCw0AIAAgASACQREQ8wELDQAg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bmdlIGZvciAxOC1iaXQgaW1tZWRpYXRlAEgAEAAHAAAA2AAQACMAAAAiABAAEwAAALgDAAAcAAAAYCBvdXQgb2YgcmFuZ2UgZm9yIDI0LWJpdCBpbW1lZGlhdGUASAAQAAcAAAAcARAAIwAAACIAEAATAAAAvQMAABwAAABpbnZhbGlkIGVudW0gdmFsdWUgcGFzc2VkYXR0ZW1wdGVkIHRvIHRha2Ugb3duZXJzaGlwIG9mIFJ1c3QgdmFsdWUgd2hpbGUgaXQgd2FzIGJvcnJvd2VkEAAAABEAAAASAAAAEwAAABQAAAAVAAAAFgAAABcAAAAYAAAAGQAAABoAAAAbAAAAHAAAAB0AAAAeAAAAHwAAACAAAAAhAAAAIgAAACQAAAAlAAAAJgAAACcAAAAoAAAAKQAAACoAAAArAAAALAAAAC0AAAAuAAAALwAAADAAAAAxAAAAMgAAADMAAAA0AAAANQAAADYAAAA3AAAAOAAAADkAAAA6AAAAOwAAADwAAAA9AAAAPgAAAD8AAABAAAAAQQAAAEIAAABDAAAARwAAAEgAAABJAAAASgAAAEsAAABMAAAAUAAAAFEAAABSAAAAUwAAAFQAAABVAAAAVgAAAFcAAABYAAAAWQAAAFoAAABbAAAAXAAAAF0AAABeAAAAXwAAAGAAAABhAAAAcAAAAHEAAAByAAAAcwAAAHQAAAB1AAAAdgAAAHcAAAB4AAAAeQAAAJAAAACRAAAAkgAAAJMAAACUAAAAlQAAAJYAAACXAAAAmAAAAKAAAAChAAAAogAAAKMAAACkAAAApQAAAKYAAACnAAAAqAAAAKkAAACqAAAAqwAAAKwAAACtAAAAsAAAALoAAAC7AAAAAQAAAAAAAABjYWxsZWQgYE9wdGlvbjo6dW53cmFwKClgIG9uIGEgYE5vbmVgIHZhbHVlAAUAAAAAAAAAAQAAAAYAAAAwMDAxMDIwMzA0MDUwNjA3MDgwOTEwMTExMjEzMTQxNTE2MTcxODE5MjAyMTIyMjMyNDI1MjYyNzI4MjkzMDMxMzIzMzM0MzUzNjM3MzgzOTQwNDE0MjQzNDQ0NTQ2NDc0ODQ5NTA1MTUyNTM1NDU1NTY1NzU4NTk2MDYxNjI2MzY0NjU2NjY3Njg2OTcwNzE3MjczNzQ3NTc2Nzc3ODc5ODA4MTgyODM4NDg1ODY4Nzg4ODk5MDkxOTI5Mzk0OTU5Njk3OTg5OS9ydXN0L2RlcHMvZGxtYWxsb2MtMC4yLjYvc3JjL2RsbWFsbG9jLnJzYXNzZXJ0aW9uIGZhaWxlZDogcHNpemUgPj0gc2l6ZSArIG1pbl9vdmVyaGVhZACABBAAKQAAAKgEAAAJAAAAYXNzZXJ0aW9uIGZhaWxlZDogcHNpemUgPD0gc2l6ZSArIG1heF9vdmVyaGVhZAAAgAQQACkAAACuBAAADQAAAGxpYnJhcnkvc3RkL3NyYy9wYW5pY2tpbmcucnMoBRAAHAAAAIsCAAAeAAAAbnVsbCBwb2ludGVyIHBhc3NlZCB0byBydXN0cmVjdXJzaXZlIHVzZSBvZiBhbiBvYmplY3QgZGV0ZWN0ZWQgd2hpY2ggd291bGQgbGVhZCB0byB1bnNhZmUgYWxpYXNpbmcgaW4gcnVzdAA7CXByb2R1Y2VycwEMcHJvY2Vzc2VkLWJ5AgZ3YWxydXMGMC4yMS4zDHdhc20tYmluZGdlbgYwLjIuOTM=", imports);
28661
+ return _loadWasmModule(1, null, "AGFzbQEAAAABOgpgA39/fwF/YAF/AX9gBH9/f38Bf2ACf38AYAJ/fwF/YAABf2AFf39/f38Bf2ABfwBgA39/fwBgAAACGAEDd2JnEF9fd2JpbmRnZW5fdGhyb3cAAwP/Af0BAQEDAwMDAwMBAQMDAQEBAwMBAQEEAQMDAwEBAwEBAQQCAQMCAgICAgIDAwMEBAQEBAQEBAEBAQMDAAICBAQEBAQEBAQEBAABAQgDAwQBAQEBAQEBAgcDAQAAAQEDBwcBAwEDAgIBAQEAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAQEBAQUBAQEBBAAEAQYCAgMDAAIABwEIBAEEAQkDAQEHAQUFBQUFBQUFBQUFBQUFBQUFBQUDBgYCAgQCBgYAAAgABAUDAQARBgkBfwFBgIDAAAsHjUzPBQZtZW1vcnkCABZfX3diZ19jb21wYXJlYXJnc19mcmVlABAaX193YmdfZ2V0X2NvbXBhcmVhcmdzX21vZGUASBpfX3diZ19zZXRfY29tcGFyZWFyZ3NfbW9kZQA4Il9fd2JnX2dldF9jb21wYXJlYXJnc19pbmRpcmVjdF9yaHMASSJfX3diZ19zZXRfY29tcGFyZWFyZ3NfaW5kaXJlY3RfcmhzAEsSY29tcGFyZWFyZ3NfdG9faW1tAFgUY29tcGFyZWFyZ3NfZnJvbV9pbW0AHxVfX3diZ19nZXRfbWF0aGFyZ3Nfb3AASBVfX3diZ19zZXRfbWF0aGFyZ3Nfb3AAORJfX3diZ19tdWxhcmdzX2ZyZWUAER5fX3diZ19nZXRfbXVsYXJnc19pbmRpcmVjdF9yaHMASB5fX3diZ19zZXRfbXVsYXJnc19pbmRpcmVjdF9yaHMATBJfX3diZ19kaXZhcmdzX2ZyZWUAIx5fX3diZ19nZXRfZGl2YXJnc19pbmRpcmVjdF9yaHMAuQEeX193Ymdfc2V0X2RpdmFyZ3NfaW5kaXJlY3RfcmhzAGMbX193YmdfcGFuaWNpbnN0cnVjdGlvbl9mcmVlABchcGFuaWNpbnN0cnVjdGlvbl9lcnJvcl90eXBlc2NyaXB0AE0XcGFuaWNpbnN0cnVjdGlvbl9yZWFzb24AWxxwYW5pY2luc3RydWN0aW9uX2luc3RydWN0aW9uAFwMZ21fZnJvbV9hcmdzANUBDWd0Zl9mcm9tX2FyZ3MAzQEHZ21fYXJncwCIAQhndGZfYXJncwBpDndkY21fZnJvbV9hcmdzADsOd2RvcF9mcm9tX2FyZ3MAOw53ZG1sX2Zyb21fYXJncwA8DndkZHZfZnJvbV9hcmdzAMkBCXdkY21fYXJncwAkCXdxY21fYXJncwAlCXdkb3BfYXJncwAmCXdxb3BfYXJncwAnCXdkbWxfYXJncwAoCXdxbWxfYXJncwApCXdkZHZfYXJncwBkCXdxZHZfYXJncwBlEF9fd2JnX2ltbTA2X2ZyZWUAKhBfX3diZ19pbW0xMl9mcmVlACsQX193YmdfaW1tMThfZnJlZQAsDl9fd2JnX2FkZF9mcmVlABgPX193Ymdfbm9vcF9mcmVlAAcSYWRkX25ld190eXBlc2NyaXB0AFkGYWRkX3JhADUGYWRkX3JiABIGYWRkX3JjABoDYWRkAMUBA2FuZACKAQNkaXYAiwECZXEAjAEDZXhwAI0BAmd0AI4BAmx0AI8BBG1sb2cAkAEEbXJvbwCRAQRtb2RfAJIBBW1vdmVfAD0DbXVsAJMBA25vdAA+Am9yAJQBA3NsbACVAQNzcmwAlgEDc3ViAJcBA3hvcgCYAQRtbGR2AGoDcmV0ALoBBHJldGQAPxNhbG9jX25ld190eXBlc2NyaXB0AGAHYWxvY19yYQAiBGFsb2MAuwEDbWNsAEADbWNwAJkBA21lcQBrE2Joc2hfbmV3X3R5cGVzY3JpcHQAIARiaHNoAC0EYmhlaQC8AQRidXJuAEEEY2FsbABsA2NjcABtBGNyb28AQgRjc2l6AEMCY2IAvQEDbGRjAG4DbG9nAG8EbG9nZABwBG1pbnQARARydnJ0AL4BBHNjd3EAmgEDc3J3AJsBBHNyd3EAcQNzd3cAnAEEc3d3cQByAnRyAJ0BA3RybwBzBGVjazEAngEEZWNyMQCfAQRlZDE5AHQEazI1NgCgAQRzMjU2AKEBBHRpbWUARRNub29wX25ld190eXBlc2NyaXB0AL8BBG5vb3AA3QEEZmxhZwDAAQNiYWwAogEDam1wAMEBA2puZQCjAQNzbW8AdRNhZGRpX25ld190eXBlc2NyaXB0AFoKYWRkaV9pbW0xMgAJBGFkZGkApAEEYW5kaQClAQRkaXZpAKYBBGV4cGkApwEEbW9kaQCoAQRtdWxpAKkBA29yaQCqAQRzbGxpAKsBBHNybGkArAEEc3ViaQCtAQR4b3JpAK4BBGpuZWkArwECbGIAsAECbHcAsQECc2IAsgECc3cAswEEbWNwaQC0ARJndGZfbmV3X3R5cGVzY3JpcHQAzwEDZ3RmALUBBG1jbGkALhFnbV9uZXdfdHlwZXNjcmlwdABGCGdtX2ltbTE4AA0CZ20ALwRtb3ZpADAEam56aQAxBGptcGYAMhNqbXBiX25ld190eXBlc2NyaXB0ABUEam1wYgAzBGpuemYAtgEEam56YgC3AQRqbmVmAHYKam5lYl9pbW0wNgA2BGpuZWIAdwJqaQBOE2NmZWlfbmV3X3R5cGVzY3JpcHQANwpjZmVpX2ltbTI0AAoEY2ZlaQBPBGNmc2kAUANjZmUAwgEDY2ZzAMMBBHBzaGwAUQRwc2hoAFIEcG9wbABTBHBvcGgAVBN3ZGNtX25ld190eXBlc2NyaXB0AMoBBHdkY20AeAR3cWNtAHkEd2RvcAB6BHdxb3AAewR3ZG1sAHwEd3FtbAB9BHdkZHYAfgR3cWR2AH8Ed2RtZACAAQR3cW1kAIEBBHdkYW0AggEEd3FhbQCDAQR3ZG1tAIQBBHdxbW0AhQEEZWNhbACGAQRic2l6ADQTYmxkZF9uZXdfdHlwZXNjcmlwdABVB2JsZGRfcmQANgRibGRkAIcBFl9fd2JnX2luc3RydWN0aW9uX2ZyZWUADBRpbnN0cnVjdGlvbl90b19ieXRlcwAGEGluc3RydWN0aW9uX3NpemUA7wERcmVnaWRfbmV3X2NoZWNrZWQAuAEJcmVnaWRfYmFsAN4BCnJlZ2lkX2NnYXMA3wEJcmVnaWRfZXJyAOABCnJlZ2lkX2ZsYWcA4QEIcmVnaWRfZnAA4gEKcmVnaWRfZ2dhcwDjAQhyZWdpZF9ocADkAQhyZWdpZF9pcwDlAQhyZWdpZF9vZgDmAQlyZWdpZF9vbmUA5wEIcmVnaWRfcGMA6AEJcmVnaWRfcmV0AOkBCnJlZ2lkX3JldGwA6gEIcmVnaWRfc3AA6wEJcmVnaWRfc3BwAOwBDnJlZ2lkX3dyaXRhYmxlAO0BCnJlZ2lkX3plcm8A7gEUcmVnaWRfbmV3X3R5cGVzY3JpcHQA2QELcmVnaWRfdG9fdTgA2gESYW5kX25ld190eXBlc2NyaXB0AFkSZGl2X25ld190eXBlc2NyaXB0AFkRZXFfbmV3X3R5cGVzY3JpcHQAWRJleHBfbmV3X3R5cGVzY3JpcHQAWRFndF9uZXdfdHlwZXNjcmlwdABZEWx0X25ld190eXBlc2NyaXB0AFkTbWxvZ19uZXdfdHlwZXNjcmlwdABZE21yb29fbmV3X3R5cGVzY3JpcHQAWRJtb2RfbmV3X3R5cGVzY3JpcHQAWRJtdWxfbmV3X3R5cGVzY3JpcHQAWRFvcl9uZXdfdHlwZXNjcmlwdABZEnNsbF9uZXdfdHlwZXNjcmlwdABZEnNybF9uZXdfdHlwZXNjcmlwdABZEnN1Yl9uZXdfdHlwZXNjcmlwdABZEnhvcl9uZXdfdHlwZXNjcmlwdABZEm1jcF9uZXdfdHlwZXNjcmlwdABZE3Njd3FfbmV3X3R5cGVzY3JpcHQAWRJzcndfbmV3X3R5cGVzY3JpcHQAWRJzd3dfbmV3X3R5cGVzY3JpcHQAWRF0cl9uZXdfdHlwZXNjcmlwdABZE2VjazFfbmV3X3R5cGVzY3JpcHQAWRNlY3IxX25ld190eXBlc2NyaXB0AFkTazI1Nl9uZXdfdHlwZXNjcmlwdABZE3MyNTZfbmV3X3R5cGVzY3JpcHQAWRJiYWxfbmV3X3R5cGVzY3JpcHQAWRJqbmVfbmV3X3R5cGVzY3JpcHQAWRNhbmRpX25ld190eXBlc2NyaXB0AFoTZGl2aV9uZXdfdHlwZXNjcmlwdABaE2V4cGlfbmV3X3R5cGVzY3JpcHQAWhNtb2RpX25ld190eXBlc2NyaXB0AFoTbXVsaV9uZXdfdHlwZXNjcmlwdABaEm9yaV9uZXdfdHlwZXNjcmlwdABaE3NsbGlfbmV3X3R5cGVzY3JpcHQAWhNzcmxpX25ld190eXBlc2NyaXB0AFoTc3ViaV9uZXdfdHlwZXNjcmlwdABaE3hvcmlfbmV3X3R5cGVzY3JpcHQAWhNqbmVpX25ld190eXBlc2NyaXB0AFoRbGJfbmV3X3R5cGVzY3JpcHQAWhFsd19uZXdfdHlwZXNjcmlwdABaEXNiX25ld190eXBlc2NyaXB0AFoRc3dfbmV3X3R5cGVzY3JpcHQAWhNtY3BpX25ld190eXBlc2NyaXB0AFoTam56Zl9uZXdfdHlwZXNjcmlwdABaE2puemJfbmV3X3R5cGVzY3JpcHQAWhFqaV9uZXdfdHlwZXNjcmlwdAA3E2Nmc2lfbmV3X3R5cGVzY3JpcHQANxNwc2hsX25ld190eXBlc2NyaXB0ADcTcHNoaF9uZXdfdHlwZXNjcmlwdAA3E3BvcGxfbmV3X3R5cGVzY3JpcHQANxNwb3BoX25ld190eXBlc2NyaXB0ADcTbW92aV9uZXdfdHlwZXNjcmlwdAAVE21jbGlfbmV3X3R5cGVzY3JpcHQAFRNqbnppX25ld190eXBlc2NyaXB0ABUTam1wZl9uZXdfdHlwZXNjcmlwdAAVEm5vdF9uZXdfdHlwZXNjcmlwdAAgE3JldGRfbmV3X3R5cGVzY3JpcHQAIBNtb3ZlX25ld190eXBlc2NyaXB0ACASbWNsX25ld190eXBlc2NyaXB0ACATYnVybl9uZXdfdHlwZXNjcmlwdAAgE2Nyb29fbmV3X3R5cGVzY3JpcHQAIBNjc2l6X25ld190eXBlc2NyaXB0ACATbWludF9uZXdfdHlwZXNjcmlwdAAgE3RpbWVfbmV3X3R5cGVzY3JpcHQAIBNic2l6X25ld190eXBlc2NyaXB0ACAGcmV0X3JhACIHYmhlaV9yYQAiBWNiX3JhACIHcnZydF9yYQAiB2ZsYWdfcmEAIgZqbXBfcmEAIghqaV9pbW0yNAAKCmNmc2lfaW1tMjQACgZjZmVfcmEAIgZjZnNfcmEAIgpwc2hsX2ltbTI0AAoKcHNoaF9pbW0yNAAKCnBvcGxfaW1tMjQACgpwb3BoX2ltbTI0AAoTbWxkdl9uZXdfdHlwZXNjcmlwdABVEm1lcV9uZXdfdHlwZXNjcmlwdABVEmNjcF9uZXdfdHlwZXNjcmlwdABVEmxvZ19uZXdfdHlwZXNjcmlwdABVE2xvZ2RfbmV3X3R5cGVzY3JpcHQAVRNzcndxX25ld190eXBlc2NyaXB0AFUTc3d3cV9uZXdfdHlwZXNjcmlwdABVEnRyb19uZXdfdHlwZXNjcmlwdABVE2VkMTlfbmV3X3R5cGVzY3JpcHQAVRJzbW9fbmV3X3R5cGVzY3JpcHQAVRJsZGNfbmV3X3R5cGVzY3JpcHQAVRNqbmVmX25ld190eXBlc2NyaXB0AFUTd2RtZF9uZXdfdHlwZXNjcmlwdABVE3dxbWRfbmV3X3R5cGVzY3JpcHQAVRN3ZGFtX25ld190eXBlc2NyaXB0AFUTd3FhbV9uZXdfdHlwZXNjcmlwdABVE3dkbW1fbmV3X3R5cGVzY3JpcHQAVRN3cW1tX25ld190eXBlc2NyaXB0AFUTZWNhbF9uZXdfdHlwZXNjcmlwdABVE2NhbGxfbmV3X3R5cGVzY3JpcHQAVRNfX3diZ19tYXRoYXJnc19mcmVlABAfX193Ymdfc2V0X21hdGhhcmdzX2luZGlyZWN0X3JocwBLHl9fd2JnX3NldF9tdWxhcmdzX2luZGlyZWN0X2xocwBLH19fd2JnX2dldF9tYXRoYXJnc19pbmRpcmVjdF9yaHMASR5fX3diZ19nZXRfbXVsYXJnc19pbmRpcmVjdF9saHMASRJyZXRfbmV3X3R5cGVzY3JpcHQAYBNiaGVpX25ld190eXBlc2NyaXB0AGARY2JfbmV3X3R5cGVzY3JpcHQAYBNydnJ0X25ld190eXBlc2NyaXB0AGATZmxhZ19uZXdfdHlwZXNjcmlwdABgEmptcF9uZXdfdHlwZXNjcmlwdABgEmNmZV9uZXdfdHlwZXNjcmlwdABgEmNmc19uZXdfdHlwZXNjcmlwdABgD19fd2JnX3RpbWVfZnJlZQAYDl9fd2JnX21jbF9mcmVlABgPX193YmdfcG9wbF9mcmVlABgNX193YmdfbHRfZnJlZQAYD19fd2JnX2puemJfZnJlZQAYDl9fd2JnX3Nyd19mcmVlABgPX193Ymdfd3FtbF9mcmVlABgPX193YmdfazI1Nl9mcmVlABgNX193YmdfbGJfZnJlZQAYD19fd2JnX2puZWJfZnJlZQAYD19fd2JnX3JldGRfZnJlZQAYD19fd2JnX2V4cGlfZnJlZQAYD19fd2JnX3N3d3FfZnJlZQAYD19fd2JnX2Nyb29fZnJlZQAYDl9fd2JnX3Ntb19mcmVlABgOX193YmdfbGRjX2ZyZWUAGA9fX3diZ19tbG9nX2ZyZWUAGA9fX3diZ19ic2l6X2ZyZWUAGA1fX3diZ19lcV9mcmVlABgPX193YmdfbWNsaV9mcmVlABgPX193YmdfeG9yaV9mcmVlABgPX193YmdfYW5kaV9mcmVlABgPX193Ymdfd3FvcF9mcmVlABgPX193Ymdfd2RjbV9mcmVlABgPX193YmdfcHNoaF9mcmVlABgPX193Ymdfc3ViaV9mcmVlABgNX193Ymdfb3JfZnJlZQAYD19fd2JnX2puemlfZnJlZQAYD19fd2JnX3dkbWRfZnJlZQAYDV9fd2JnX2dtX2ZyZWUAGA5fX3diZ19zcmxfZnJlZQAYD19fd2JnX3NybGlfZnJlZQAYD19fd2JnX2ZsYWdfZnJlZQAYD19fd2JnX3dkYW1fZnJlZQAYD19fd2JnX21vZGlfZnJlZQAYD19fd2JnX3dxYW1fZnJlZQAYD19fd2JnX2VjazFfZnJlZQAYDl9fd2JnX2Nmc19mcmVlABgPX193Ymdfam5laV9mcmVlABgPX193YmdfczI1Nl9mcmVlABgPX193YmdfYmxkZF9mcmVlABgOX193YmdfbW9kX2ZyZWUAGA9fX3diZ19zY3dxX2ZyZWUAGA5fX3diZ19hbmRfZnJlZQAYDl9fd2JnX3Ryb19mcmVlABgPX193Ymdfc3J3cV9mcmVlABgPX193YmdfcG9waF9mcmVlABgOX193Ymdfc3d3X2ZyZWUAGA9fX3diZ193ZGR2X2ZyZWUAGA5fX3diZ19tY3BfZnJlZQAYDV9fd2JnX3NiX2ZyZWUAGA9fX3diZ19lY2FsX2ZyZWUAGA5fX3diZ19qbmVfZnJlZQAYD19fd2JnX2Fsb2NfZnJlZQAYD19fd2JnX2puemZfZnJlZQAYD19fd2JnX2NhbGxfZnJlZQAYD19fd2JnX3J2cnRfZnJlZQAYD19fd2JnX3dxbW1fZnJlZQAYD19fd2JnX21vdmlfZnJlZQAYD19fd2JnX3dkbWxfZnJlZQAYD19fd2JnX2JoZWlfZnJlZQAYDl9fd2JnX2NmZV9mcmVlABgPX193Ymdfc2xsaV9mcmVlABgPX193YmdfbWludF9mcmVlABgPX193YmdfcHNobF9mcmVlABgOX193YmdfZGl2X2ZyZWUAGA9fX3diZ19tY3BpX2ZyZWUAGA9fX3diZ193cWR2X2ZyZWUAGA9fX3diZ19kaXZpX2ZyZWUAGA5fX3diZ19iYWxfZnJlZQAYDl9fd2JnX2V4cF9mcmVlABgOX193Ymdfc3ViX2ZyZWUAGA9fX3diZ19qbmVmX2ZyZWUAGA9fX3diZ19tb3ZlX2ZyZWUAGA9fX3diZ19jZnNpX2ZyZWUAGA5fX3diZ19jY3BfZnJlZQAYD19fd2JnX2VkMTlfZnJlZQAYDl9fd2JnX2ptcF9mcmVlABgPX193YmdfYWRkaV9mcmVlABgOX193YmdfcmV0X2ZyZWUAGA5fX3diZ19zbGxfZnJlZQAYDl9fd2JnX29yaV9mcmVlABgPX193Ymdfd2RvcF9mcmVlABgPX193YmdfbG9nZF9mcmVlABgPX193Ymdfd3FjbV9mcmVlABgNX193YmdfY2JfZnJlZQAYD19fd2JnX2J1cm5fZnJlZQAYD19fd2JnX3dkbW1fZnJlZQAYDl9fd2JnX2d0Zl9mcmVlABgNX193Ymdfc3dfZnJlZQAYDV9fd2JnX2ppX2ZyZWUAGA9fX3diZ19jc2l6X2ZyZWUAGA1fX3diZ19ndF9mcmVlABgOX193YmdfbXVsX2ZyZWUAGA9fX3diZ19tdWxpX2ZyZWUAGA9fX3diZ19jZmVpX2ZyZWUAGA9fX3diZ19lY3IxX2ZyZWUAGA5fX3diZ19tZXFfZnJlZQAYD19fd2JnX3dxbWRfZnJlZQAYD19fd2JnX21yb29fZnJlZQAYD19fd2JnX21sZHZfZnJlZQAYD19fd2JnX2ptcGJfZnJlZQAYD19fd2JnX2Joc2hfZnJlZQAYDV9fd2JnX3RyX2ZyZWUAGA5fX3diZ194b3JfZnJlZQAYDV9fd2JnX2x3X2ZyZWUAGA5fX3diZ19sb2dfZnJlZQAYD19fd2JnX2ptcGZfZnJlZQAYDl9fd2JnX25vdF9mcmVlABgTd3Fkdl9uZXdfdHlwZXNjcmlwdADKARN3cW1sX25ld190eXBlc2NyaXB0AMoBE3dkbWxfbmV3X3R5cGVzY3JpcHQAygETd3FvcF9uZXdfdHlwZXNjcmlwdADKARN3ZG9wX25ld190eXBlc2NyaXB0AMoBE3dxY21fbmV3X3R5cGVzY3JpcHQAygETd2Rkdl9uZXdfdHlwZXNjcmlwdADKAQ53cWNtX2Zyb21fYXJncwA7CndxZHZfaW1tMDYANgp3cW1sX2ltbTA2ADYKd2RtbF9pbW0wNgA2Cndxb3BfaW1tMDYANgp3ZG9wX2ltbTA2ADYKd3FjbV9pbW0wNgA2CndkZHZfaW1tMDYANgp3ZGNtX2ltbTA2ADYKam5lZl9pbW0wNgA2CWxkY19pbW0wNgA2DndxbWxfZnJvbV9hcmdzADwOd3FvcF9mcm9tX2FyZ3MAOwVnbV9yYQA1BWd0X3JjABoFZ3RfcmIAEgVndF9yYQA1BWxiX3JiABIFbGJfcmEANQVsdF9yYwAaBWx0X3JiABIFbHRfcmEANQhsd19pbW0xMgAJBWx3X3JiABIFbHdfcmEANQVvcl9yYwAaBW9yX3JiABIFb3JfcmEANQhzYl9pbW0xMgAJBXNiX3JiABIFc2JfcmEANQhzd19pbW0xMgAJBXN3X3JiABIFc3dfcmEANQV0cl9yYwAaBXRyX3JiABIFdHJfcmEANQVlcV9yYwAaBWVxX3JiABIFZXFfcmEANQZhbmRfcmMAGgZhbmRfcmIAEgZhbmRfcmEANQZiYWxfcmMAGgZiYWxfcmIAEgZiYWxfcmEANQZjY3BfcmMAGgZjY3BfcmIAEgZjY3BfcmEANQZkaXZfcmMAGgZkaXZfcmIAEgZkaXZfcmEANQZleHBfcmMAGgZleHBfcmIAEgZleHBfcmEANQhsYl9pbW0xMgAJBmd0Zl9yYgASBmd0Zl9yYQA1BmpuZV9yYwAaBmpuZV9yYgASBmpuZV9yYQA1BmxkY19yYwAaBmxkY19yYgASBmxkY19yYQA1BmxvZ19yZAA2BmxvZ19yYwAaBmxvZ19yYgASBmxvZ19yYQA1Bm1jbF9yYgASBm1jbF9yYQA1Bm1jcF9yYwAaBm1jcF9yYgASBm1jcF9yYQA1Bm1lcV9yZAA2Bm1lcV9yYwAaBm1lcV9yYgASBm1lcV9yYQA1Bm1vZF9yYwAaBm1vZF9yYgASBm1vZF9yYQA1Bm11bF9yYwAaBm11bF9yYgASBm11bF9yYQA1Bm5vdF9yYgASBm5vdF9yYQA1CW9yaV9pbW0xMgAJBm9yaV9yYgASBm9yaV9yYQA1BnNsbF9yYwAaBnNsbF9yYgASBnNsbF9yYQA1BnNtb19yZAA2BnNtb19yYwAaBnNtb19yYgASBnNtb19yYQA1BnNybF9yYwAaBnNybF9yYgASBnNybF9yYQA1BnNyd19yYwAaBnNyd19yYgASBnNyd19yYQA1BnN1Yl9yYwAaBnN1Yl9yYgASBnN1Yl9yYQA1BnN3d19yYwAaBnN3d19yYgASBnN3d19yYQA1BnRyb19yZAA2BnRyb19yYwAaBnRyb19yYgASBnRyb19yYQA1Bnhvcl9yYwAaBnhvcl9yYgASBnhvcl9yYQA1CWd0Zl9pbW0xMgAJB2FkZGlfcmIAEgdhZGRpX3JhADUKYW5kaV9pbW0xMgAJB2FuZGlfcmIAEgdhbmRpX3JhADUHYmhzaF9yYgASB2Joc2hfcmEANQZjY3BfcmQANgdibGRkX3JjABoHYmxkZF9yYgASB2JsZGRfcmEANQdic2l6X3JiABIHYnNpel9yYQA1B2J1cm5fcmIAEgdidXJuX3JhADUHY2FsbF9yZAA2B2NhbGxfcmMAGgdjYWxsX3JiABIHY2FsbF9yYQA1B2Nyb29fcmIAEgdjcm9vX3JhADUHY3Npel9yYgASB2NzaXpfcmEANQpkaXZpX2ltbTEyAAkHZGl2aV9yYgASB2RpdmlfcmEANQdlY2FsX3JkADYHZWNhbF9yYwAaB2VjYWxfcmIAEgdlY2FsX3JhADUHZWNrMV9yYwAaB2VjazFfcmIAEgdlY2sxX3JhADUHZWNyMV9yYwAaB2VjcjFfcmIAEgdlY3IxX3JhADUHZWQxOV9yZAA2B2VkMTlfcmMAGgdlZDE5X3JiABIHZWQxOV9yYQA1CmV4cGlfaW1tMTIACQdleHBpX3JiABIHZXhwaV9yYQA1CmptcGJfaW1tMTgADQdqbXBiX3JhADUKam1wZl9pbW0xOAANB2ptcGZfcmEANQdqbmViX3JjABoHam5lYl9yYgASB2puZWJfcmEANQdqbmVmX3JjABoHam5lZl9yYgASB2puZWZfcmEANQpqbmVpX2ltbTEyAAkHam5laV9yYgASB2puZWlfcmEANQpqbnpiX2ltbTEyAAkHam56Yl9yYgASB2puemJfcmEANQpqbnpmX2ltbTEyAAkHam56Zl9yYgASB2puemZfcmEANQpqbnppX2ltbTE4AA0Ham56aV9yYQA1B2syNTZfcmMAGgdrMjU2X3JiABIHazI1Nl9yYQA1B2xvZ2RfcmQANgdsb2dkX3JjABoHbG9nZF9yYgASB2xvZ2RfcmEANQptY2xpX2ltbTE4AA0HbWNsaV9yYQA1Cm1jcGlfaW1tMTIACQdtY3BpX3JiABIHbWNwaV9yYQA1B21pbnRfcmIAEgdtaW50X3JhADUHbWxkdl9yZAA2B21sZHZfcmMAGgdtbGR2X3JiABIHbWxkdl9yYQA1B21sb2dfcmMAGgdtbG9nX3JiABIHbWxvZ19yYQA1Cm1vZGlfaW1tMTIACQdtb2RpX3JiABIHbW9kaV9yYQA1B21vdmVfcmIAEgdtb3ZlX3JhADUKbW92aV9pbW0xOAANB21vdmlfcmEANQdtcm9vX3JjABoHbXJvb19yYgASB21yb29fcmEANQptdWxpX2ltbTEyAAkHbXVsaV9yYgASB211bGlfcmEANQdyZXRkX3JiABIHcmV0ZF9yYQA1B3MyNTZfcmMAGgdzMjU2X3JiABIHczI1Nl9yYQA1B3Njd3FfcmMAGgdzY3dxX3JiABIHc2N3cV9yYQA1CnNsbGlfaW1tMTIACQdzbGxpX3JiABIHc2xsaV9yYQA1CnNybGlfaW1tMTIACQdzcmxpX3JiABIHc3JsaV9yYQA1B3Nyd3FfcmQANgdzcndxX3JjABoHc3J3cV9yYgASB3Nyd3FfcmEANQpzdWJpX2ltbTEyAAkHc3ViaV9yYgASB3N1YmlfcmEANQdzd3dxX3JkADYHc3d3cV9yYwAaB3N3d3FfcmIAEgdzd3dxX3JhADUHdGltZV9yYgASB3RpbWVfcmEANQd3ZGFtX3JkADYHd2RhbV9yYwAaB3dkYW1fcmIAEgd3ZGFtX3JhADUHd2RjbV9yYwAaB3dkY21fcmIAEgd3ZGNtX3JhADUHd2Rkdl9yYwAaB3dkZHZfcmIAEgd3ZGR2X3JhADUHd2RtZF9yZAA2B3dkbWRfcmMAGgd3ZG1kX3JiABIHd2RtZF9yYQA1B3dkbWxfcmMAGgd3ZG1sX3JiABIHd2RtbF9yYQA1B3dkbW1fcmQANgd3ZG1tX3JjABoHd2RtbV9yYgASB3dkbW1fcmEANQd3ZG9wX3JjABoHd2RvcF9yYgASB3dkb3BfcmEANQd3cWFtX3JkADYHd3FhbV9yYwAaB3dxYW1fcmIAEgd3cWFtX3JhADUHd3FjbV9yYwAaB3dxY21fcmIAEgd3cWNtX3JhADUHd3Fkdl9yYwAaB3dxZHZfcmIAEgd3cWR2X3JhADUHd3FtZF9yZAA2B3dxbWRfcmMAGgd3cW1kX3JiABIHd3FtZF9yYQA1B3dxbWxfcmMAGgd3cW1sX3JiABIHd3FtbF9yYQA1B3dxbW1fcmQANgd3cW1tX3JjABoHd3FtbV9y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C0HggsAAQRkQ2AEACykBAX9BEEEEEMYBIgEgADYCDCABQQA2AgggAUKBgICAEDcCACABQQhqCykBAX9BEEEEEMYBIgEgADoADCABQQA2AgggAUKBgICAEDcCACABQQhqCyIAIAIQAiECIAAQxwEgARDHASACEEdBCHRBygByENEBEGcLDwAgACABIAIgA0ESEPEBCw8AIAAgASACIANBGBDxAQsPACAAIAEgAiADQRwQ8QELDwAgACABIAIgA0EdEPEBCw8AIAAgASACIANBIRDyAQsPACAAIAEgAiADQSIQ8QELDwAgACABIAIgA0EjEPEBCw8AIAAgASACIANBKBDxAQsPACAAIAEgAiADQSoQ8QELDwAgACABIAIgA0EsEPEBCw8AIAAgASACIANBLxDxAQsPACAAIAEgAiADQTgQ8QELEAAgACABIAIgA0HTABDyAQsQACAAIAEgAiADQdQAEPIBCxAAIAAgASACIANB3gAQ8gELEAAgACABIAIgA0HfABDyAQsQACAAIAEgAiADQeAAEPIBCxAAIAAgASACIANB4QAQ8gELEAAgACABIAIgA0HiABDyAQsQACAAIAEgAiADQeMAEPIBCxAAIAAgASACIANB5AAQ8gELEAAgACABIAIgA0HlABDyAQsQACAAIAEgAiADQeYAEPEBCxAAIAAgASACIANB5wAQ8QELEAAgACABIAIgA0HoABDxAQsQACAAIAEgAiADQekAEPEBCxAAIAAgASACIANB6gAQ8QELEAAgACABIAIgA0HrABDxAQsQACAAIAEgAiADQewAEPEBCxAAIAAgASACIANB7gAQ8QELHgAgARBmIQEgABDHASABEMQBQQh0QcwAchDRARBnCxkAIAAgASACQSBBACAEG0EQQQAgAxtyECELDQAgACABIAJBARDzAQsNACAAIAEgAkECEPMBCw0AIAAgASACQQMQ8wELDQAgACABIAJBBBDzAQsNACAAIAEgAkEFEPMBCw0AIAAgASACQQYQ8wELDQAgACABIAJBBxDzAQsNACAAIAEgAkEIEPMBCw0AIAAgASACQQkQ8wELDQAgACABIAJBCxDzAQsNACAAIAEgAkENEPMBCw0AIAAgASACQQ4Q8wELDQAgACABIAJBDxDzAQsNACAAIAEgAkEQEPMBCw0AIAAgASACQREQ8wELDQAg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bmdlIGZvciAxOC1iaXQgaW1tZWRpYXRlAEgAEAAHAAAA2AAQACMAAAAiABAAEwAAALoDAAAcAAAAYCBvdXQgb2YgcmFuZ2UgZm9yIDI0LWJpdCBpbW1lZGlhdGUASAAQAAcAAAAcARAAIwAAACIAEAATAAAAvwMAABwAAABpbnZhbGlkIGVudW0gdmFsdWUgcGFzc2VkYXR0ZW1wdGVkIHRvIHRha2Ugb3duZXJzaGlwIG9mIFJ1c3QgdmFsdWUgd2hpbGUgaXQgd2FzIGJvcnJvd2VkEAAAABEAAAASAAAAEwAAABQAAAAVAAAAFgAAABcAAAAYAAAAGQAAABoAAAAbAAAAHAAAAB0AAAAeAAAAHwAAACAAAAAhAAAAIgAAACQAAAAlAAAAJgAAACcAAAAoAAAAKQAAACoAAAArAAAALAAAAC0AAAAuAAAALwAAADAAAAAxAAAAMgAAADMAAAA0AAAANQAAADYAAAA3AAAAOAAAADkAAAA6AAAAOwAAADwAAAA9AAAAPgAAAD8AAABAAAAAQQAAAEIAAABDAAAARwAAAEgAAABJAAAASgAAAEsAAABMAAAAUAAAAFEAAABSAAAAUwAAAFQAAABVAAAAVgAAAFcAAABYAAAAWQAAAFoAAABbAAAAXAAAAF0AAABeAAAAXwAAAGAAAABhAAAAcAAAAHEAAAByAAAAcwAAAHQAAAB1AAAAdgAAAHcAAAB4AAAAeQAAAJAAAACRAAAAkgAAAJMAAACUAAAAlQAAAJYAAACXAAAAmAAAAKAAAAChAAAAogAAAKMAAACkAAAApQAAAKYAAACnAAAAqAAAAKkAAACqAAAAqwAAAKwAAACtAAAAsAAAALoAAAC7AAAAAQAAAAAAAABjYWxsZWQgYE9wdGlvbjo6dW53cmFwKClgIG9uIGEgYE5vbmVgIHZhbHVlAAUAAAAAAAAAAQAAAAYAAAAwMDAxMDIwMzA0MDUwNjA3MDgwOTEwMTExMjEzMTQxNTE2MTcxODE5MjAyMTIyMjMyNDI1MjYyNzI4MjkzMDMxMzIzMzM0MzUzNjM3MzgzOTQwNDE0MjQzNDQ0NTQ2NDc0ODQ5NTA1MTUyNTM1NDU1NTY1NzU4NTk2MDYxNjI2MzY0NjU2NjY3Njg2OTcwNzE3MjczNzQ3NTc2Nzc3ODc5ODA4MTgyODM4NDg1ODY4Nzg4ODk5MDkxOTI5Mzk0OTU5Njk3OTg5OS9ydXN0L2RlcHMvZGxtYWxsb2MtMC4yLjYvc3JjL2RsbWFsbG9jLnJzYXNzZXJ0aW9uIGZhaWxlZDogcHNpemUgPj0gc2l6ZSArIG1pbl9vdmVyaGVhZACABBAAKQAAAKgEAAAJAAAAYXNzZXJ0aW9uIGZhaWxlZDogcHNpemUgPD0gc2l6ZSArIG1heF9vdmVyaGVhZAAAgAQQACkAAACuBAAADQAAAGxpYnJhcnkvc3RkL3NyYy9wYW5pY2tpbmcucnMoBRAAHAAAAIsCAAAeAAAAbnVsbCBwb2ludGVyIHBhc3NlZCB0byBydXN0cmVjdXJzaXZlIHVzZSBvZiBhbiBvYmplY3QgZGV0ZWN0ZWQgd2hpY2ggd291bGQgbGVhZCB0byB1bnNhZmUgYWxpYXNpbmcgaW4gcnVzdAA7CXByb2R1Y2VycwEMcHJvY2Vzc2VkLWJ5AgZ3YWxydXMGMC4yMS4zDHdhc20tYmluZGdlbgYwLjIuOTM=", imports);
28662
28662
  }
28663
28663
  async function initWasm2() {
28664
28664
  return await __wbg_init(wasm());
@@ -28920,9 +28920,9 @@ spurious results.`);
28920
28920
  // ../versions/dist/index.mjs
28921
28921
  function getBuiltinVersions() {
28922
28922
  return {
28923
- FORC: "0.64.0",
28924
- FUEL_CORE: "0.36.0",
28925
- FUELS: "0.94.8"
28923
+ FORC: "0.65.2",
28924
+ FUEL_CORE: "0.38.0",
28925
+ FUELS: "0.95.0"
28926
28926
  };
28927
28927
  }
28928
28928
  function parseVersion(version) {
@@ -29106,21 +29106,6 @@ This unreleased fuel-core build may include features and updates not yet support
29106
29106
  var DEFAULT_PRECISION = 9;
29107
29107
  var DEFAULT_MIN_PRECISION = 3;
29108
29108
  var DEFAULT_DECIMAL_UNITS = 9;
29109
- function toFixed(value, options) {
29110
- const { precision = DEFAULT_PRECISION, minPrecision = DEFAULT_MIN_PRECISION } = options || {};
29111
- const [valueUnits = "0", valueDecimals = "0"] = String(value || "0.0").split(".");
29112
- const groupRegex = /(\d)(?=(\d{3})+\b)/g;
29113
- const units = valueUnits.replace(groupRegex, "$1,");
29114
- let decimals = valueDecimals.slice(0, precision);
29115
- if (minPrecision < precision) {
29116
- const trimmedDecimal = decimals.match(/.*[1-9]{1}/);
29117
- const lastNonZeroIndex = trimmedDecimal?.[0].length || 0;
29118
- const keepChars = Math.max(minPrecision, lastNonZeroIndex);
29119
- decimals = decimals.slice(0, keepChars);
29120
- }
29121
- const decimalPortion = decimals ? `.${decimals}` : "";
29122
- return `${units}${decimalPortion}`;
29123
- }
29124
29109
  var BN = class extends import_bn.default {
29125
29110
  MAX_U64 = "0xFFFFFFFFFFFFFFFF";
29126
29111
  constructor(value, base, endian) {
@@ -29172,28 +29157,53 @@ This unreleased fuel-core build may include features and updates not yet support
29172
29157
  format(options) {
29173
29158
  const {
29174
29159
  units = DEFAULT_DECIMAL_UNITS,
29175
- precision = DEFAULT_PRECISION,
29176
- minPrecision = DEFAULT_MIN_PRECISION
29160
+ precision: initialPrecision = DEFAULT_PRECISION,
29161
+ minPrecision: initialMinPrecision = DEFAULT_MIN_PRECISION
29177
29162
  } = options || {};
29163
+ if (units === 0) {
29164
+ return this.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",");
29165
+ }
29166
+ const minPrecision = initialMinPrecision > initialPrecision ? initialPrecision : initialMinPrecision;
29167
+ const precision = initialPrecision > initialMinPrecision ? initialPrecision : initialMinPrecision;
29178
29168
  const formattedUnits = this.formatUnits(units);
29179
- const formattedFixed = toFixed(formattedUnits, { precision, minPrecision });
29180
- if (!parseFloat(formattedFixed)) {
29181
- const [, originalDecimals = "0"] = formattedUnits.split(".");
29182
- const firstNonZero = originalDecimals.match(/[1-9]/);
29183
- if (firstNonZero && firstNonZero.index && firstNonZero.index + 1 > precision) {
29184
- const [valueUnits = "0"] = formattedFixed.split(".");
29185
- return `${valueUnits}.${originalDecimals.slice(0, firstNonZero.index + 1)}`;
29169
+ const [integerPart, fractionalPart = ""] = formattedUnits.split(".");
29170
+ const formattedInteger = integerPart.replace(/\B(?=(\d{3})+(?!\d))/g, ",");
29171
+ if (precision === 0) {
29172
+ return formattedInteger;
29173
+ }
29174
+ let formattedFractional = fractionalPart.replace(/0+$/, "");
29175
+ if (formattedFractional.length > precision) {
29176
+ if (integerPart === "0") {
29177
+ const firstNonZeroIndex = formattedFractional.search(/[1-9]/);
29178
+ if (firstNonZeroIndex >= 0 && firstNonZeroIndex < precision) {
29179
+ formattedFractional = formattedFractional.slice(0, precision);
29180
+ } else {
29181
+ formattedFractional = formattedFractional.slice(0, firstNonZeroIndex + 1);
29182
+ }
29183
+ } else {
29184
+ formattedFractional = formattedFractional.slice(0, precision);
29186
29185
  }
29186
+ } else {
29187
+ formattedFractional = formattedFractional.slice(0, precision);
29187
29188
  }
29188
- return formattedFixed;
29189
+ if (formattedFractional.length < minPrecision) {
29190
+ formattedFractional = formattedFractional.padEnd(minPrecision, "0");
29191
+ }
29192
+ if (formattedFractional === "" && minPrecision === 0) {
29193
+ return formattedInteger;
29194
+ }
29195
+ return formattedFractional ? `${formattedInteger}.${formattedFractional}` : formattedInteger;
29189
29196
  }
29190
29197
  formatUnits(units = DEFAULT_DECIMAL_UNITS) {
29191
- const valueUnits = this.toString().slice(0, units * -1);
29192
- const valueDecimals = this.toString().slice(units * -1);
29193
- const length = valueDecimals.length;
29194
- const defaultDecimals = Array.from({ length: units - length }).fill("0").join("");
29195
- const integerPortion = valueUnits ? `${valueUnits}.` : "0.";
29196
- return `${integerPortion}${defaultDecimals}${valueDecimals}`;
29198
+ const valueString = this.toString();
29199
+ const valueLength = valueString.length;
29200
+ if (valueLength <= units) {
29201
+ const paddedZeros = "0".repeat(units - valueLength);
29202
+ return `0.${paddedZeros}${valueString}`;
29203
+ }
29204
+ const integerPart = valueString.slice(0, valueLength - units);
29205
+ const fractionalPart = valueString.slice(valueLength - units);
29206
+ return `${integerPart}.${fractionalPart}`;
29197
29207
  }
29198
29208
  // END ANCHOR: HELPERS
29199
29209
  // ANCHOR: OVERRIDES to accept better inputs
@@ -32038,6 +32048,15 @@ If you are attempting to transform a hex value, please make sure it is being pas
32038
32048
  );
32039
32049
  }
32040
32050
  }
32051
+ /**
32052
+ * Takes an B256 Address and returns back an checksum address.
32053
+ * The implementation follows the ERC-55 https://github.com/ethereum/ercs/blob/master/ERCS/erc-55.md.
32054
+ *
32055
+ * @returns A new `ChecksumAddress` instance
32056
+ */
32057
+ toChecksum() {
32058
+ return Address.toChecksum(this.toB256());
32059
+ }
32041
32060
  /**
32042
32061
  * Returns the `bech32Address` property
32043
32062
  *
@@ -32071,12 +32090,12 @@ If you are attempting to transform a hex value, please make sure it is being pas
32071
32090
  return this.toB256();
32072
32091
  }
32073
32092
  /**
32074
- * Converts and returns the `bech32Address` property as a string
32093
+ * returns the address `checksum` as a string
32075
32094
  *
32076
32095
  * @returns The `bech32Address` property as a string
32077
32096
  */
32078
32097
  toString() {
32079
- return this.bech32Address;
32098
+ return this.toChecksum();
32080
32099
  }
32081
32100
  /**
32082
32101
  * Converts and returns the `bech32Address` property as a string
@@ -32108,12 +32127,12 @@ If you are attempting to transform a hex value, please make sure it is being pas
32108
32127
  };
32109
32128
  }
32110
32129
  /**
32111
- * Returns the value of the `bech32Address` property
32130
+ * returns the address `checksum` as a string
32112
32131
  *
32113
32132
  * @returns The value of `bech32Address` property
32114
32133
  */
32115
32134
  valueOf() {
32116
- return this.bech32Address;
32135
+ return this.toChecksum();
32117
32136
  }
32118
32137
  /**
32119
32138
  * Compares this the `bech32Address` property to another for direct equality
@@ -32220,6 +32239,35 @@ If you are attempting to transform a hex value, please make sure it is being pas
32220
32239
  const paddedAddress = padFirst12BytesOfEvmAddress(evmAddress);
32221
32240
  return new Address(toBech32(paddedAddress));
32222
32241
  }
32242
+ /**
32243
+ * Takes an ChecksumAddress and validates if it is a valid checksum address.
32244
+ *
32245
+ * @returns A `boolean` instance indicating if the address is valid.
32246
+ */
32247
+ static isChecksumValid(address) {
32248
+ let addressParsed = address;
32249
+ if (!address.startsWith("0x")) {
32250
+ addressParsed = `0x${address}`;
32251
+ }
32252
+ if (addressParsed.trim().length !== 66) {
32253
+ return false;
32254
+ }
32255
+ return Address.toChecksum(hexlify(addressParsed)) === addressParsed;
32256
+ }
32257
+ /** @hidden */
32258
+ static toChecksum(address) {
32259
+ const addressHex = hexlify(address).toLowerCase().slice(2);
32260
+ const checksum = sha256(address);
32261
+ let ret2 = "0x";
32262
+ for (let i = 0; i < 32; ++i) {
32263
+ const byte = checksum[i];
32264
+ const ha = addressHex.charAt(i * 2);
32265
+ const hb = addressHex.charAt(i * 2 + 1);
32266
+ ret2 += (byte & 240) >= 128 ? ha.toUpperCase() : ha;
32267
+ ret2 += (byte & 15) >= 8 ? hb.toUpperCase() : hb;
32268
+ }
32269
+ return ret2;
32270
+ }
32223
32271
  };
32224
32272
 
32225
32273
  // ../transactions/dist/index.mjs
@@ -37289,6 +37337,26 @@ ${DryRunSuccessStatusFragmentDoc}`;
37289
37337
  }
37290
37338
  ${DryRunTransactionStatusFragmentDoc}
37291
37339
  ${ReceiptFragmentDoc}`;
37340
+ var BlockFragmentDoc = lib_default2`
37341
+ fragment blockFragment on Block {
37342
+ id
37343
+ height
37344
+ header {
37345
+ time
37346
+ daHeight
37347
+ stateTransitionBytecodeVersion
37348
+ transactionsCount
37349
+ transactionsRoot
37350
+ messageOutboxRoot
37351
+ eventInboxRoot
37352
+ prevRoot
37353
+ applicationHash
37354
+ }
37355
+ transactions {
37356
+ id
37357
+ }
37358
+ }
37359
+ `;
37292
37360
  var CoinFragmentDoc = lib_default2`
37293
37361
  fragment coinFragment on Coin {
37294
37362
  type: __typename
@@ -37368,33 +37436,6 @@ ${ReceiptFragmentDoc}`;
37368
37436
  nonce
37369
37437
  amount
37370
37438
  data
37371
- }
37372
- `;
37373
- var BalanceFragmentDoc = lib_default2`
37374
- fragment balanceFragment on Balance {
37375
- owner
37376
- amount
37377
- assetId
37378
- }
37379
- `;
37380
- var BlockFragmentDoc = lib_default2`
37381
- fragment blockFragment on Block {
37382
- id
37383
- height
37384
- header {
37385
- time
37386
- daHeight
37387
- stateTransitionBytecodeVersion
37388
- transactionsCount
37389
- transactionsRoot
37390
- messageOutboxRoot
37391
- eventInboxRoot
37392
- prevRoot
37393
- applicationHash
37394
- }
37395
- transactions {
37396
- id
37397
- }
37398
37439
  }
37399
37440
  `;
37400
37441
  var TxParametersFragmentDoc = lib_default2`
@@ -37454,167 +37495,6 @@ ${ReceiptFragmentDoc}`;
37454
37495
  `;
37455
37496
  var GasCostsFragmentDoc = lib_default2`
37456
37497
  fragment GasCostsFragment on GasCosts {
37457
- version
37458
- add
37459
- addi
37460
- aloc
37461
- and
37462
- andi
37463
- bal
37464
- bhei
37465
- bhsh
37466
- burn
37467
- cb
37468
- cfei
37469
- cfsi
37470
- div
37471
- divi
37472
- ecr1
37473
- eck1
37474
- ed19
37475
- eq
37476
- exp
37477
- expi
37478
- flag
37479
- gm
37480
- gt
37481
- gtf
37482
- ji
37483
- jmp
37484
- jne
37485
- jnei
37486
- jnzi
37487
- jmpf
37488
- jmpb
37489
- jnzf
37490
- jnzb
37491
- jnef
37492
- jneb
37493
- lb
37494
- log
37495
- lt
37496
- lw
37497
- mint
37498
- mlog
37499
- modOp
37500
- modi
37501
- moveOp
37502
- movi
37503
- mroo
37504
- mul
37505
- muli
37506
- mldv
37507
- noop
37508
- not
37509
- or
37510
- ori
37511
- poph
37512
- popl
37513
- pshh
37514
- pshl
37515
- ret
37516
- rvrt
37517
- sb
37518
- sll
37519
- slli
37520
- srl
37521
- srli
37522
- srw
37523
- sub
37524
- subi
37525
- sw
37526
- sww
37527
- time
37528
- tr
37529
- tro
37530
- wdcm
37531
- wqcm
37532
- wdop
37533
- wqop
37534
- wdml
37535
- wqml
37536
- wddv
37537
- wqdv
37538
- wdmd
37539
- wqmd
37540
- wdam
37541
- wqam
37542
- wdmm
37543
- wqmm
37544
- xor
37545
- xori
37546
- alocDependentCost {
37547
- ...DependentCostFragment
37548
- }
37549
- bldd {
37550
- ...DependentCostFragment
37551
- }
37552
- bsiz {
37553
- ...DependentCostFragment
37554
- }
37555
- cfe {
37556
- ...DependentCostFragment
37557
- }
37558
- cfeiDependentCost {
37559
- ...DependentCostFragment
37560
- }
37561
- call {
37562
- ...DependentCostFragment
37563
- }
37564
- ccp {
37565
- ...DependentCostFragment
37566
- }
37567
- croo {
37568
- ...DependentCostFragment
37569
- }
37570
- csiz {
37571
- ...DependentCostFragment
37572
- }
37573
- ed19DependentCost {
37574
- ...DependentCostFragment
37575
- }
37576
- k256 {
37577
- ...DependentCostFragment
37578
- }
37579
- ldc {
37580
- ...DependentCostFragment
37581
- }
37582
- logd {
37583
- ...DependentCostFragment
37584
- }
37585
- mcl {
37586
- ...DependentCostFragment
37587
- }
37588
- mcli {
37589
- ...DependentCostFragment
37590
- }
37591
- mcp {
37592
- ...DependentCostFragment
37593
- }
37594
- mcpi {
37595
- ...DependentCostFragment
37596
- }
37597
- meq {
37598
- ...DependentCostFragment
37599
- }
37600
- retd {
37601
- ...DependentCostFragment
37602
- }
37603
- s256 {
37604
- ...DependentCostFragment
37605
- }
37606
- scwq {
37607
- ...DependentCostFragment
37608
- }
37609
- smo {
37610
- ...DependentCostFragment
37611
- }
37612
- srwq {
37613
- ...DependentCostFragment
37614
- }
37615
- swwq {
37616
- ...DependentCostFragment
37617
- }
37618
37498
  contractRoot {
37619
37499
  ...DependentCostFragment
37620
37500
  }
@@ -37624,6 +37504,10 @@ ${ReceiptFragmentDoc}`;
37624
37504
  vmInitialization {
37625
37505
  ...DependentCostFragment
37626
37506
  }
37507
+ s256 {
37508
+ ...DependentCostFragment
37509
+ }
37510
+ ecr1
37627
37511
  newStoragePerByte
37628
37512
  }
37629
37513
  ${DependentCostFragmentDoc}`;
@@ -37660,16 +37544,12 @@ ${GasCostsFragmentDoc}`;
37660
37544
  var ChainInfoFragmentDoc = lib_default2`
37661
37545
  fragment chainInfoFragment on ChainInfo {
37662
37546
  name
37663
- latestBlock {
37664
- ...blockFragment
37665
- }
37666
37547
  daHeight
37667
37548
  consensusParameters {
37668
37549
  ...consensusParametersFragment
37669
37550
  }
37670
37551
  }
37671
- ${BlockFragmentDoc}
37672
- ${ConsensusParametersFragmentDoc}`;
37552
+ ${ConsensusParametersFragmentDoc}`;
37673
37553
  var ContractBalanceFragmentDoc = lib_default2`
37674
37554
  fragment contractBalanceFragment on ContractBalance {
37675
37555
  contract
@@ -37700,6 +37580,12 @@ ${ConsensusParametersFragmentDoc}`;
37700
37580
  blockHeight
37701
37581
  failure
37702
37582
  }
37583
+ }
37584
+ `;
37585
+ var TransactionRawPayloadFragmentDoc = lib_default2`
37586
+ fragment transactionRawPayload on Transaction {
37587
+ id
37588
+ rawPayload
37703
37589
  }
37704
37590
  `;
37705
37591
  var GetVersionDocument = lib_default2`
@@ -37723,6 +37609,17 @@ ${ConsensusParametersFragmentDoc}`;
37723
37609
  }
37724
37610
  }
37725
37611
  ${ChainInfoFragmentDoc}`;
37612
+ var GetChainAndNodeInfoDocument = lib_default2`
37613
+ query getChainAndNodeInfo {
37614
+ chain {
37615
+ ...chainInfoFragment
37616
+ }
37617
+ nodeInfo {
37618
+ ...nodeInfoFragment
37619
+ }
37620
+ }
37621
+ ${ChainInfoFragmentDoc}
37622
+ ${NodeInfoFragmentDoc}`;
37726
37623
  var GetTransactionDocument = lib_default2`
37727
37624
  query getTransaction($transactionId: TransactionId!) {
37728
37625
  transaction(id: $transactionId) {
@@ -37780,6 +37677,24 @@ ${TransactionFragmentDoc}`;
37780
37677
  }
37781
37678
  }
37782
37679
  ${TransactionEstimatePredicatesFragmentDoc}`;
37680
+ var GetLatestBlockDocument = lib_default2`
37681
+ query getLatestBlock {
37682
+ chain {
37683
+ latestBlock {
37684
+ ...blockFragment
37685
+ }
37686
+ }
37687
+ }
37688
+ ${BlockFragmentDoc}`;
37689
+ var GetLatestBlockHeightDocument = lib_default2`
37690
+ query getLatestBlockHeight {
37691
+ chain {
37692
+ latestBlock {
37693
+ height
37694
+ }
37695
+ }
37696
+ }
37697
+ `;
37783
37698
  var GetBlockDocument = lib_default2`
37784
37699
  query getBlock($blockId: BlockId, $height: U32) {
37785
37700
  block(id: $blockId, height: $height) {
@@ -37792,12 +37707,12 @@ ${TransactionFragmentDoc}`;
37792
37707
  block(id: $blockId, height: $blockHeight) {
37793
37708
  ...blockFragment
37794
37709
  transactions {
37795
- ...transactionFragment
37710
+ ...transactionRawPayload
37796
37711
  }
37797
37712
  }
37798
37713
  }
37799
37714
  ${BlockFragmentDoc}
37800
- ${TransactionFragmentDoc}`;
37715
+ ${TransactionRawPayloadFragmentDoc}`;
37801
37716
  var GetBlocksDocument = lib_default2`
37802
37717
  query getBlocks($after: String, $before: String, $first: Int, $last: Int) {
37803
37718
  blocks(after: $after, before: $before, first: $first, last: $last) {
@@ -37872,10 +37787,10 @@ ${MessageCoinFragmentDoc}`;
37872
37787
  var GetBalanceDocument = lib_default2`
37873
37788
  query getBalance($owner: Address!, $assetId: AssetId!) {
37874
37789
  balance(owner: $owner, assetId: $assetId) {
37875
- ...balanceFragment
37790
+ amount
37876
37791
  }
37877
37792
  }
37878
- ${BalanceFragmentDoc}`;
37793
+ `;
37879
37794
  var GetLatestGasPriceDocument = lib_default2`
37880
37795
  query getLatestGasPrice {
37881
37796
  latestGasPrice {
@@ -37904,13 +37819,13 @@ ${MessageCoinFragmentDoc}`;
37904
37819
  }
37905
37820
  edges {
37906
37821
  node {
37907
- ...balanceFragment
37822
+ assetId
37823
+ amount
37908
37824
  }
37909
37825
  }
37910
37826
  }
37911
37827
  }
37912
- ${PageInfoFragmentDoc}
37913
- ${BalanceFragmentDoc}`;
37828
+ ${PageInfoFragmentDoc}`;
37914
37829
  var GetMessagesDocument = lib_default2`
37915
37830
  query getMessages($owner: Address!, $after: String, $before: String, $first: Int, $last: Int) {
37916
37831
  messages(
@@ -37991,6 +37906,19 @@ ${MessageFragmentDoc}`;
37991
37906
  }
37992
37907
  }
37993
37908
  ${MessageFragmentDoc}`;
37909
+ var IsUserAccountDocument = lib_default2`
37910
+ query isUserAccount($blobId: BlobId!, $contractId: ContractId!, $transactionId: TransactionId!) {
37911
+ blob(id: $blobId) {
37912
+ id
37913
+ }
37914
+ contract(id: $contractId) {
37915
+ id
37916
+ }
37917
+ transaction(id: $transactionId) {
37918
+ id
37919
+ }
37920
+ }
37921
+ `;
37994
37922
  var SubmitAndAwaitDocument = lib_default2`
37995
37923
  subscription submitAndAwait($encodedTransaction: HexString!) {
37996
37924
  submitAndAwait(tx: $encodedTransaction) {
@@ -38023,6 +37951,9 @@ ${MessageFragmentDoc}`;
38023
37951
  getChain(variables, options) {
38024
37952
  return requester(GetChainDocument, variables, options);
38025
37953
  },
37954
+ getChainAndNodeInfo(variables, options) {
37955
+ return requester(GetChainAndNodeInfoDocument, variables, options);
37956
+ },
38026
37957
  getTransaction(variables, options) {
38027
37958
  return requester(GetTransactionDocument, variables, options);
38028
37959
  },
@@ -38038,6 +37969,12 @@ ${MessageFragmentDoc}`;
38038
37969
  estimatePredicates(variables, options) {
38039
37970
  return requester(EstimatePredicatesDocument, variables, options);
38040
37971
  },
37972
+ getLatestBlock(variables, options) {
37973
+ return requester(GetLatestBlockDocument, variables, options);
37974
+ },
37975
+ getLatestBlockHeight(variables, options) {
37976
+ return requester(GetLatestBlockHeightDocument, variables, options);
37977
+ },
38041
37978
  getBlock(variables, options) {
38042
37979
  return requester(GetBlockDocument, variables, options);
38043
37980
  },
@@ -38098,6 +38035,9 @@ ${MessageFragmentDoc}`;
38098
38035
  getMessageByNonce(variables, options) {
38099
38036
  return requester(GetMessageByNonceDocument, variables, options);
38100
38037
  },
38038
+ isUserAccount(variables, options) {
38039
+ return requester(IsUserAccountDocument, variables, options);
38040
+ },
38101
38041
  submitAndAwait(variables, options) {
38102
38042
  return requester(SubmitAndAwaitDocument, variables, options);
38103
38043
  },
@@ -41385,10 +41325,11 @@ ${PANIC_DOC_URL}#variant.${statusReason}`;
41385
41325
  // src/providers/provider.ts
41386
41326
  var MAX_RETRIES = 10;
41387
41327
  var RESOURCES_PAGE_SIZE_LIMIT = 512;
41328
+ var TRANSACTIONS_PAGE_SIZE_LIMIT = 60;
41388
41329
  var BLOCKS_PAGE_SIZE_LIMIT = 5;
41389
41330
  var DEFAULT_RESOURCE_CACHE_TTL = 2e4;
41390
41331
  var processGqlChain = (chain) => {
41391
- const { name, daHeight, consensusParameters, latestBlock } = chain;
41332
+ const { name, daHeight, consensusParameters } = chain;
41392
41333
  const {
41393
41334
  contractParams,
41394
41335
  feeParams,
@@ -41439,14 +41380,6 @@ ${PANIC_DOC_URL}#variant.${statusReason}`;
41439
41380
  maxScriptDataLength: bn(scriptParams.maxScriptDataLength)
41440
41381
  },
41441
41382
  gasCosts
41442
- },
41443
- latestBlock: {
41444
- id: latestBlock.id,
41445
- height: bn(latestBlock.height),
41446
- time: latestBlock.header.time,
41447
- transactions: latestBlock.transactions.map((i) => ({
41448
- id: i.id
41449
- }))
41450
41383
  }
41451
41384
  };
41452
41385
  };
@@ -41477,14 +41410,17 @@ ${PANIC_DOC_URL}#variant.${statusReason}`;
41477
41410
  retryOptions: void 0,
41478
41411
  headers: void 0
41479
41412
  });
41480
- const { url: rawUrl, urlWithoutAuth, headers } = _Provider.extractBasicAuth(url);
41413
+ const { url: rawUrl, urlWithoutAuth, headers: authHeaders } = _Provider.extractBasicAuth(url);
41481
41414
  this.url = rawUrl;
41482
41415
  this.urlWithoutAuth = urlWithoutAuth;
41483
- this.options = { ...this.options, ...options };
41484
41416
  this.url = url;
41485
- if (headers) {
41486
- this.options = { ...this.options, headers: { ...this.options.headers, ...headers } };
41487
- }
41417
+ const { FUELS } = versions;
41418
+ const headers = { ...authHeaders, ...options.headers, Source: `ts-sdk-${FUELS}` };
41419
+ this.options = {
41420
+ ...this.options,
41421
+ ...options,
41422
+ headers
41423
+ };
41488
41424
  this.operations = this.createOperations();
41489
41425
  const { resourceCacheTTL } = this.options;
41490
41426
  if (isDefined(resourceCacheTTL)) {
@@ -41623,9 +41559,25 @@ ${PANIC_DOC_URL}#variant.${statusReason}`;
41623
41559
  * @returns A promise that resolves to the Chain and NodeInfo.
41624
41560
  */
41625
41561
  async fetchChainAndNodeInfo() {
41626
- const nodeInfo = await this.fetchNode();
41627
- _Provider.ensureClientVersionIsSupported(nodeInfo);
41628
- const chain = await this.fetchChain();
41562
+ let nodeInfo;
41563
+ let chain;
41564
+ try {
41565
+ nodeInfo = this.getNode();
41566
+ chain = this.getChain();
41567
+ } catch (error) {
41568
+ const data = await this.operations.getChainAndNodeInfo();
41569
+ nodeInfo = {
41570
+ maxDepth: bn(data.nodeInfo.maxDepth),
41571
+ maxTx: bn(data.nodeInfo.maxTx),
41572
+ nodeVersion: data.nodeInfo.nodeVersion,
41573
+ utxoValidation: data.nodeInfo.utxoValidation,
41574
+ vmBacktrace: data.nodeInfo.vmBacktrace
41575
+ };
41576
+ _Provider.ensureClientVersionIsSupported(nodeInfo);
41577
+ chain = processGqlChain(data.chain);
41578
+ _Provider.chainInfoCache[this.urlWithoutAuth] = chain;
41579
+ _Provider.nodeInfoCache[this.urlWithoutAuth] = nodeInfo;
41580
+ }
41629
41581
  return {
41630
41582
  chain,
41631
41583
  nodeInfo
@@ -41717,8 +41669,12 @@ Supported fuel-core version: ${supportedVersion}.`
41717
41669
  * @returns A promise that resolves to the latest block number.
41718
41670
  */
41719
41671
  async getBlockNumber() {
41720
- const { chain } = await this.operations.getChain();
41721
- return bn(chain.latestBlock.height, 10);
41672
+ const {
41673
+ chain: {
41674
+ latestBlock: { height }
41675
+ }
41676
+ } = await this.operations.getLatestBlockHeight();
41677
+ return bn(height);
41722
41678
  }
41723
41679
  /**
41724
41680
  * Returns the node information for the current provider network.
@@ -42265,17 +42221,18 @@ Supported fuel-core version: ${supportedVersion}.`
42265
42221
  * @returns A promise that resolves to the block or null.
42266
42222
  */
42267
42223
  async getBlock(idOrHeight) {
42268
- let variables;
42269
- if (typeof idOrHeight === "number") {
42270
- variables = { height: bn(idOrHeight).toString(10) };
42271
- } else if (idOrHeight === "latest") {
42272
- variables = { height: (await this.getBlockNumber()).toString(10) };
42273
- } else if (idOrHeight.length === 66) {
42274
- variables = { blockId: idOrHeight };
42224
+ let block2;
42225
+ if (idOrHeight === "latest") {
42226
+ const {
42227
+ chain: { latestBlock }
42228
+ } = await this.operations.getLatestBlock();
42229
+ block2 = latestBlock;
42275
42230
  } else {
42276
- variables = { blockId: bn(idOrHeight).toString(10) };
42231
+ const isblockId = typeof idOrHeight === "string" && idOrHeight.length === 66;
42232
+ const variables = isblockId ? { blockId: idOrHeight } : { height: bn(idOrHeight).toString(10) };
42233
+ const response = await this.operations.getBlock(variables);
42234
+ block2 = response.block;
42277
42235
  }
42278
- const { block: block2 } = await this.operations.getBlock(variables);
42279
42236
  if (!block2) {
42280
42237
  return null;
42281
42238
  }
@@ -42401,7 +42358,12 @@ Supported fuel-core version: ${supportedVersion}.`
42401
42358
  async getTransactions(paginationArgs) {
42402
42359
  const {
42403
42360
  transactions: { edges, pageInfo }
42404
- } = await this.operations.getTransactions(paginationArgs);
42361
+ } = await this.operations.getTransactions({
42362
+ ...this.validatePaginationArgs({
42363
+ inputArgs: paginationArgs,
42364
+ paginationLimit: TRANSACTIONS_PAGE_SIZE_LIMIT
42365
+ })
42366
+ });
42405
42367
  const coder = new TransactionCoder();
42406
42368
  const transactions = edges.map(({ node: { rawPayload } }) => {
42407
42369
  try {
@@ -42657,6 +42619,40 @@ Supported fuel-core version: ${supportedVersion}.`
42657
42619
  });
42658
42620
  return bn(latestBlockHeight);
42659
42621
  }
42622
+ /**
42623
+ * Check if the given ID is an account.
42624
+ *
42625
+ * @param id - The ID to check.
42626
+ * @returns A promise that resolves to the result of the check.
42627
+ */
42628
+ async isUserAccount(id) {
42629
+ const { contract, blob, transaction } = await this.operations.isUserAccount({
42630
+ blobId: id,
42631
+ contractId: id,
42632
+ transactionId: id
42633
+ });
42634
+ if (contract || blob || transaction) {
42635
+ return false;
42636
+ }
42637
+ return true;
42638
+ }
42639
+ async getAddressType(id) {
42640
+ const { contract, blob, transaction } = await this.operations.isUserAccount({
42641
+ blobId: id,
42642
+ contractId: id,
42643
+ transactionId: id
42644
+ });
42645
+ if (contract) {
42646
+ return "Contract";
42647
+ }
42648
+ if (blob) {
42649
+ return "Blob";
42650
+ }
42651
+ if (transaction) {
42652
+ return "Transaction";
42653
+ }
42654
+ return "Account";
42655
+ }
42660
42656
  /**
42661
42657
  * Get the transaction response for the given transaction ID.
42662
42658
  *
@@ -49011,10 +49007,17 @@ Supported fuel-core version: ${supportedVersion}.`
49011
49007
  };
49012
49008
 
49013
49009
  // src/predicate/predicate.ts
49010
+ function getDataOffset(binary) {
49011
+ const buffer = binary.buffer.slice(binary.byteOffset + 8, binary.byteOffset + 16);
49012
+ const dataView = new DataView(buffer);
49013
+ const dataOffset = dataView.getBigUint64(0, false);
49014
+ return Number(dataOffset);
49015
+ }
49014
49016
  var Predicate = class extends Account {
49015
49017
  bytes;
49016
49018
  predicateData = [];
49017
49019
  interface;
49020
+ loaderBytecode = "";
49018
49021
  /**
49019
49022
  * Creates an instance of the Predicate class.
49020
49023
  *
@@ -49029,7 +49032,13 @@ Supported fuel-core version: ${supportedVersion}.`
49029
49032
  abi,
49030
49033
  provider,
49031
49034
  data,
49032
- configurableConstants
49035
+ configurableConstants,
49036
+ /**
49037
+ * TODO: Implement a getBytes method within the Predicate class. This method should return the loaderBytecode if it is set.
49038
+ * The getBytes method should be used in all places where we use this.bytes.
49039
+ * Note: Do not set loaderBytecode to a default string here; it should remain undefined when not provided.
49040
+ */
49041
+ loaderBytecode = ""
49033
49042
  }) {
49034
49043
  const { predicateBytes, predicateInterface } = Predicate.processPredicateData(
49035
49044
  bytecode,
@@ -49040,6 +49049,7 @@ Supported fuel-core version: ${supportedVersion}.`
49040
49049
  super(address, provider);
49041
49050
  this.bytes = predicateBytes;
49042
49051
  this.interface = predicateInterface;
49052
+ this.loaderBytecode = loaderBytecode;
49043
49053
  if (data !== void 0 && data.length > 0) {
49044
49054
  this.predicateData = data;
49045
49055
  }
@@ -49164,7 +49174,7 @@ Supported fuel-core version: ${supportedVersion}.`
49164
49174
  * @param abiInterface - The ABI interface of the predicate.
49165
49175
  * @returns The mutated bytes with the configurable constants set.
49166
49176
  */
49167
- static setConfigurableConstants(bytes2, configurableConstants, abiInterface) {
49177
+ static setConfigurableConstants(bytes2, configurableConstants, abiInterface, loaderBytecode) {
49168
49178
  const mutatedBytes = bytes2;
49169
49179
  try {
49170
49180
  if (!abiInterface) {
@@ -49190,6 +49200,15 @@ Supported fuel-core version: ${supportedVersion}.`
49190
49200
  const encoded = abiInterface.encodeConfigurable(key, value);
49191
49201
  mutatedBytes.set(encoded, offset);
49192
49202
  });
49203
+ if (loaderBytecode) {
49204
+ const offset = getDataOffset(bytes2);
49205
+ const dataSection = mutatedBytes.slice(offset);
49206
+ const dataSectionLen = dataSection.length;
49207
+ const dataSectionLenBytes = new Uint8Array(8);
49208
+ const dataSectionLenDataView = new DataView(dataSectionLenBytes.buffer);
49209
+ dataSectionLenDataView.setBigUint64(0, BigInt(dataSectionLen), false);
49210
+ mutatedBytes.set(concat([loaderBytecode, dataSectionLenBytes, dataSection]));
49211
+ }
49193
49212
  } catch (err) {
49194
49213
  throw new FuelError(
49195
49214
  ErrorCode.INVALID_CONFIGURABLE_CONSTANTS,