1"use strict";(self.webpackChunktonscan=self.webpackChunktonscan||[]).push([[2637],{52637:function(e){e.exports=JSON.parse('{"abi_schema_version":"1.0","alias_instantiations":[],"author":"Storm Trade","compiler_name":"tolk","compiler_version":"1.4.1","contract_name":"SmartAccountFactory","declarations":[{"description":"Runtime storage for SmartAccountFactory.","fields":[{"description":"Admin address authorized to mutate factory configuration.","name":"adminAddress","ty_idx":7},{"description":"Highload query timeout in seconds, stored as uint24.","name":"highloadTimeout","ty_idx":26},{"description":"Factory hot public key copied into newly initialized SmartAccount key storage.","name":"hotPublicKey","ty_idx":13},{"description":"Factory cold public key copied into newly initialized SmartAccount key storage.","name":"coldPublicKey","ty_idx":13},{"description":"Referenced NFT-style content cell.","name":"content","ty_idx":3},{"description":"Ordinary SmartAccount code version stored alongside the deploy code cell.","name":"saOrdinaryVersion","ty_idx":21},{"description":"Referenced ordinary SmartAccount code used in initialization messages.","name":"saOrdinaryCode","ty_idx":3}],"kind":"struct","name":"SmartAccountFactoryStorage","ty_idx":34},{"description":"Key bundle embedded into SmartAccount initialization data.","fields":[{"description":"Hot public key accepted by initialized SmartAccounts.","name":"hotPublicKey","ty_idx":13},{"description":"Cold public key accepted by initialized SmartAccounts.","name":"coldPublicKey","ty_idx":13},{"description":"User public keys stored as cells.","name":"userPublicKeys","ty_idx":14},{"description":"Number of user public keys included in the dictionary.","name":"keysCount","ty_idx":21}],"kind":"struct","name":"SmartAccountFactoryKeys","ty_idx":27},{"description":"SmartAccount initialization payload forwarded from factory to the blank account code.","fields":[{"description":"Highload query timeout in seconds copied from factory storage.","name":"highloadTimeout","ty_idx":26},{"description":"Referenced key bundle with factory and user public keys.","name":"keys","ty_idx":28},{"description":"SmartAccount code version to store after initialization.","name":"version","ty_idx":21},{"description":"Ordinary SmartAccount code cell installed by the initialization flow.","name":"newCode","ty_idx":3}],"kind":"struct","name":"SmartAccountFactoryInitializationData","ty_idx":25},{"description":"Vault-originated deploy notification authenticated by the factory before deploying a blank account.","fields":[{"description":"Query id copied into the outgoing deploy-with-deposit notification.","name":"queryId","ty_idx":11},{"description":"Asset amount forwarded from the vault notification.","name":"amount","ty_idx":6},{"description":"User public keys dictionary for the new SmartAccount.","name":"userPublicKeys","ty_idx":14},{"description":"Original sender address forwarded into the outgoing deposit notification.","name":"senderAddress","ty_idx":7},{"description":"SmartAccount owner address used to derive the blank account StateInit.","name":"ownerAddress","ty_idx":7},{"description":"Jetton minter address authenticated as part of the vault-originated flow.","name":"jettonMinterAddress","ty_idx":7}],"kind":"struct","name":"StormNotifyWithDeploy","prefix":{"prefix_len":32,"prefix_num":1518990754},"ty_idx":12},{"description":"User/admin deploy request for an ordinary SmartAccount without a deposit amount.","fields":[{"description":"Query id copied into the outgoing initialization message.","name":"queryId","ty_idx":11},{"description":"User public keys dictionary for the new SmartAccount.","name":"userPublicKeys","ty_idx":14}],"kind":"struct","name":"StormDeployOrdinarySa","prefix":{"prefix_len":32,"prefix_num":50515321},"ty_idx":15},{"description":"Deposit-plus-initialization body emitted to a newly deployed blank SmartAccount.","fields":[{"description":"Query id copied from the incoming vault notification.","name":"queryId","ty_idx":11},{"description":"Vault address that authenticated the deploy-with-deposit flow.","name":"vaultAddress","ty_idx":7},{"description":"Deposit amount forwarded to the SmartAccount.","name":"amount","ty_idx":6},{"description":"Original sender address forwarded from the vault notification.","name":"senderAddress","ty_idx":7},{"description":"Initialization data installed by the blank SmartAccount before processing the deposit.","name":"initData","ty_idx":25}],"kind":"struct","name":"StormDepositNotifyWithDeploy","prefix":{"prefix_len":32,"prefix_num":413176567},"ty_idx":24},{"description":"Initialization body emitted to a newly deployed blank SmartAccount without a deposit amount.","fields":[{"description":"Query id copied from the ordinary deploy request.","name":"queryId","ty_idx":11},{"description":"Initialization data installed by the blank SmartAccount.","name":"initData","ty_idx":25}],"kind":"struct","name":"StormInitSa","prefix":{"prefix_len":32,"prefix_num":1527634420},"ty_idx":29},{"description":"Admin request to replace the factory code cell and current continuation.","fields":[{"description":"Query id echoed in the standard excess response.","name":"queryId","ty_idx":11},{"description":"New factory code cell installed with `set_code`.","name":"newCode","ty_idx":3}],"kind":"struct","name":"SmartAccountFactoryUpgradeCode","prefix":{"prefix_len":32,"prefix_num":396190201},"ty_idx":16},{"description":"Admin request to replace the hot public key stored by the factory.","fields":[{"description":"Query id echoed in the standard excess response.","name":"queryId","ty_idx":11},{"description":"Replacement hot public key stored as uint256.","name":"hotPublicKey","ty_idx":13}],"kind":"struct","name":"SmartAccountFactorySetHotPublicKey","prefix":{"prefix_len":32,"prefix_num":466767014},"ty_idx":17},{"description":"Admin request to send the stored cold public key to another address.","fields":[{"description":"Query id copied into the outgoing cold-key reply.","name":"queryId","ty_idx":11},{"description":"Destination address that receives the cold-key reply body.","name":"replyAddress","ty_idx":7}],"kind":"struct","name":"SmartAccountFactoryRequestColdPublicKey","prefix":{"prefix_len":32,"prefix_num":2047597084},"ty_idx":18},{"description":"Admin request to replace the cold public key stored by the factory.","fields":[{"description":"Query id echoed in the standard excess response.","name":"queryId","ty_idx":11},{"description":"Replacement cold public key stored as uint256.","name":"coldPublicKey","ty_idx":13}],"kind":"struct","name":"SmartAccountFactorySetColdPublicKey","prefix":{"prefix_len":32,"prefix_num":194846924},"ty_idx":19},{"description":"Admin request to replace ordinary SmartAccount code version and code cell.","fields":[{"description":"Query id echoed in the standard excess response.","name":"queryId","ty_idx":11},{"description":"Replacement ordinary SmartAccount code version.","name":"version","ty_idx":21},{"description":"Replacement ordinary SmartAccount code cell.","name":"code","ty_idx":3}],"kind":"struct","name":"SmartAccountFactorySetOrdinarySmartAccountCode","prefix":{"prefix_len":32,"prefix_num":208447838},"ty_idx":20},{"description":"Admin request to replace the factory content cell.","fields":[{"description":"Query id echoed in the standard excess response.","name":"queryId","ty_idx":11},{"description":"Replacement NFT-style content cell.","name":"content","ty_idx":3}],"kind":"struct","name":"SmartAccountFactorySetContent","prefix":{"prefix_len":32,"prefix_num":324377944},"ty_idx":22},{"description":"Admin request to replace the factory admin address.","fields":[{"description":"Query id echoed in the standard excess response.","name":"queryId","ty_idx":11},{"description":"Replacement admin address.","name":"newAdminAddress","ty_idx":7}],"kind":"struct","name":"SmartAccountFactorySetAdmin","prefix":{"prefix_len":32,"prefix_num":1606562004},"ty_idx":23},{"description":"Standard excess response emitted after successful admin mutations.","fields":[{"description":"Query id copied from the accepted admin request.","name":"queryId","ty_idx":11}],"kind":"struct","name":"StormExcesses","prefix":{"prefix_len":32,"prefix_num":3576854235},"ty_idx":30},{"description":"Cold public key reply emitted to the admin-supplied destination address.","fields":[{"description":"Query id copied from the cold-key request.","name":"queryId","ty_idx":11},{"description":"Current admin address included in the reply body.","name":"adminAddress","ty_idx":7},{"description":"Current cold public key stored by the factory.","name":"coldPublicKey","ty_idx":13}],"kind":"struct","name":"SmartAccountFactoryColdPublicKeyReply","prefix":{"prefix_len":32,"prefix_num":1881435558},"ty_idx":31},{"description":"Factory configuration returned by `get_factory_data`.","fields":[{"description":"Admin address from factory storage.","name":"adminAddress","ty_idx":7},{"description":"Highload query timeout in seconds returned as a stack integer.","name":"highloadTimeout","ty_idx":9},{"description":"Factory hot public key returned as a stack integer.","name":"hotPublicKey","ty_idx":1},{"description":"Factory cold public key returned as a stack integer.","name":"coldPublicKey","ty_idx":1},{"description":"Raw content cell from factory storage.","name":"content","ty_idx":3},{"description":"Ordinary SmartAccount code version from factory storage.","name":"saOrdinaryVersion","ty_idx":21},{"description":"Ordinary SmartAccount code cell from factory storage.","name":"saOrdinaryCode","ty_idx":3}],"kind":"struct","name":"SmartAccountFactoryDataReply","ty_idx":35},{"description":"Minimum fee tuple returned by `get_min_fees`.","fields":[{"description":"Minimum native-asset deposit fee in nanograms.","name":"depositMinFeeNative","ty_idx":6},{"description":"Minimum jetton deposit fee in nanograms.","name":"depositMinFeeJetton","ty_idx":6},{"description":"Minimum native-asset deposit-with-deploy fee in nanograms.","name":"depositWithDeployMinFeeNative","ty_idx":6},{"description":"Minimum jetton deposit-with-deploy fee in nanograms.","name":"depositWithDeployMinFeeJetton","ty_idx":6},{"description":"Minimum withdrawal fee in nanograms.","name":"withdrawMinFee","ty_idx":6},{"description":"One-year storage fee estimate for an ordinary SmartAccount.","name":"ordinarySaStorageFee","ty_idx":6}],"kind":"struct","name":"SmartAccountFactoryMinFeesReply","ty_idx":36},{"description":"TEP-66-style royalty parameters returned by `royalty_params`.","fields":[{"description":"Royalty numerator.","name":"numerator","ty_idx":1},{"description":"Royalty denominator.","name":"denominator","ty_idx":1},{"description":"Royalty payout address, currently the factory admin address.","name":"royaltyAddress","ty_idx":7}],"kind":"struct","name":"SmartAccountFactoryRoyaltyParams","ty_idx":37},{"description":"NFT collection identity returned by the SmartAccount Factory.","fields":[{"description":"Sentinel next-item index; this revision derives SmartAccount items from address hashes.","name":"nextItemIndex","ty_idx":1},{"description":"Collection metadata loaded from the first content reference.","name":"collectionMetadata","ty_idx":3},{"description":"Factory admin address exposed as the collection owner.","name":"adminAddress","ty_idx":7}],"kind":"struct","name":"SmartAccountFactoryCollectionDataReply","ty_idx":38},{"description":"SmartAccountFactory exit codes.","encoded_as_ty_idx":33,"kind":"enum","members":[{"description":"Deployment request did not attach enough balance for deploy and storage fees.","name":"NotEnoughGasToDeploy","value":"150"},{"description":"Sender is not authorized for the requested factory operation.","name":"Unauthorized","value":"401"},{"description":"Admin operation attached less value than required.","name":"InsufficientGas","value":"406"},{"description":"SmartAccount deployment was attempted outside basechain workchain 0.","name":"WrongWorkchain","value":"710"},{"description":"Incoming internal message opcode is not supported.","name":"WrongOperation","value":"65535"}],"name":"Errors","ty_idx":32}],"description":"Storm Trade Smart Account Factory deploys user trading accounts and connects first deposits to the correct Smart Account.","emitted_events":[],"get_methods":[{"description":"Return factory configuration and the ordinary SmartAccount code cell.","name":"get_factory_data","parameters":[],"return_ty_idx":35,"tvm_method_id":76063},{"description":"Return minimum fee thresholds for deposit, deposit-with-deploy, withdrawal, and ordinary SmartAccount storage.","name":"get_min_fees","parameters":[],"return_ty_idx":36,"tvm_method_id":90700},{"description":"Return royalty numerator, denominator, and payout address for the factory NFT collection helper.","name":"royalty_params","parameters":[],"return_ty_idx":37,"tvm_method_id":85719},{"description":"Return the deterministic blank SmartAccount address for the supplied item index.","name":"get_nft_address_by_index","parameters":[{"name":"itemIndex","ty_idx":1}],"return_ty_idx":7,"tvm_method_id":92067},{"description":"Return collection metadata and admin identity from populated factory content.","name":"get_collection_data","parameters":[],"return_ty_idx":38,"tvm_method_id":102491},{"description":"Combine the stored common-content prefix with an item\'s individual content cell.","name":"get_nft_content","parameters":[{"name":"itemIndex","ty_idx":1},{"name":"individualContent","ty_idx":3}],"return_ty_idx":3,"tvm_method_id":68445}],"incoming_external":[],"incoming_messages":[{"body_ty_idx":12},{"body_ty_idx":15},{"body_ty_idx":16},{"body_ty_idx":17},{"body_ty_idx":18},{"body_ty_idx":19},{"body_ty_idx":20},{"body_ty_idx":22},{"body_ty_idx":23}],"outgoing_messages":[{"body_ty_idx":24},{"body_ty_idx":29},{"body_ty_idx":30},{"body_ty_idx":31}],"storage":{"storage_ty_idx":34},"struct_instantiations":[],"thrown_errors":[{"description":"Deployment request did not attach enough balance for deploy and storage fees.","err_code":150,"kind":"enum_member","name":"Errors.NotEnoughGasToDeploy"},{"description":"Sender is not authorized for the requested factory operation.","err_code":401,"kind":"enum_member","name":"Errors.Unauthorized"},{"description":"Admin operation attached less value than required.","err_code":406,"kind":"enum_member","name":"Errors.InsufficientGas"},{"description":"SmartAccount deployment was attempted outside basechain workchain 0.","err_code":710,"kind":"enum_member","name":"Errors.WrongWorkchain"},{"description":"Incoming internal message opcode is not supported.","err_code":65535,"kind":"enum_member","name":"Errors.WrongOperation"}],"unique_types":[{"kind":"void"},{"kind":"int"},{"kind":"slice"},{"kind":"cell"},{"kind":"builder"},{"kind":"bool"},{"kind":"coins"},{"kind":"address"},{"kind":"intN","n":32},{"kind":"uintN","n":32},{"kind":"intN","n":64},{"kind":"uintN","n":64},{"kind":"StructRef","struct_name":"StormNotifyWithDeploy"},{"kind":"uintN","n":256},{"key_ty_idx":13,"kind":"mapKV","value_ty_idx":3},{"kind":"StructRef","struct_name":"StormDeployOrdinarySa"},{"kind":"StructRef","struct_name":"SmartAccountFactoryUpgradeCode"},{"kind":"StructRef","struct_name":"SmartAccountFactorySetHotPublicKey"},{"kind":"StructRef","struct_name":"SmartAccountFactoryRequestColdPublicKey"},{"kind":"StructRef","struct_name":"SmartAccountFactorySetColdPublicKey"},{"kind":"StructRef","struct_name":"SmartAccountFactorySetOrdinarySmartAccountCode"},{"kind":"uintN","n":8},{"kind":"StructRef","struct_name":"SmartAccountFactorySetContent"},{"kind":"StructRef","struct_name":"SmartAccountFactorySetAdmin"},{"kind":"StructRef","struct_name":"StormDepositNotifyWithDeploy"},{"kind":"StructRef","struct_name":"SmartAccountFactoryInitializationData"},{"kind":"uintN","n":24},{"kind":"StructRef","struct_name":"SmartAccountFactoryKeys"},{"inner_ty_idx":27,"kind":"cellOf"},{"kind":"StructRef","struct_name":"StormInitSa"},{"kind":"StructRef","struct_name":"StormExcesses"},{"kind":"StructRef","struct_name":"SmartAccountFactoryColdPublicKeyReply"},{"enum_name":"Errors","kind":"EnumRef"},{"kind":"uintN","n":16},{"kind":"StructRef","struct_name":"SmartAccountFactoryStorage"},{"kind":"StructRef","struct_name":"SmartAccountFactoryDataReply"},{"kind":"StructRef","struct_name":"SmartAccountFactoryMinFeesReply"},{"kind":"StructRef","struct_name":"SmartAccountFactoryRoyaltyParams"},{
1"kind":"StructRef","struct_name":"SmartAccountFactoryCollectionDataReply"}],"version":"1.0"}')}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.