diff --git a/tlb/config.go b/tlb/config.go index fe633a25..ff4065d1 100644 --- a/tlb/config.go +++ b/tlb/config.go @@ -616,6 +616,20 @@ type ConfigParam44 struct { SuspendedAddressList SuspendedAddressList } +type PrecompiledSmc struct { + Magic Magic `tlb:"#b0"` + GasUsage uint64 +} + +type PrecompiledContractsConfig struct { + Magic Magic `tlb:"#c0"` + List HashmapE[Bits256, PrecompiledSmc] +} + +type ConfigParam45 struct { + PrecompiledContractsConfig PrecompiledContractsConfig +} + type OracleBridgeParams struct { BridgeAddress Bits256 OracleMutlisigAddress Bits256 diff --git a/tlb/config.tlb b/tlb/config.tlb index 2784ae76..db4b4e9c 100644 --- a/tlb/config.tlb +++ b/tlb/config.tlb @@ -195,6 +195,10 @@ _ SizeLimitsConfig = ConfigParam 43; suspended_address_list#00 addresses:(HashmapE AddressWithWorkchain Unit) suspended_until:uint32 = SuspendedAddressList; _ SuspendedAddressList = ConfigParam 44; +precompiled_smc#b0 gas_usage:uint64 = PrecompiledSmc; +precompiled_contracts_config#c0 list:(HashmapE 256 PrecompiledSmc) = PrecompiledContractsConfig; +_ PrecompiledContractsConfig = ConfigParam 45; + oracle_bridge_params#_ bridge_address:bits256 oracle_mutlisig_address:bits256 oracles:(HashmapE 256 bits256) external_chain_address:bits256 = OracleBridgeParams; _ OracleBridgeParams = ConfigParam 71; // Ethereum bridge _ OracleBridgeParams = ConfigParam 72; // Binance Smart Chain bridge diff --git a/ton/config.go b/ton/config.go index a240797f..da73d77b 100644 --- a/ton/config.go +++ b/ton/config.go @@ -54,6 +54,7 @@ type BlockchainConfig struct { ConfigParam40 *tlb.ConfigParam40 `json:",omitempty"` ConfigParam43 *tlb.ConfigParam43 `json:",omitempty"` ConfigParam44 *tlb.ConfigParam44 `json:",omitempty"` + ConfigParam45 *tlb.ConfigParam45 `json:",omitempty"` ConfigParam71 *tlb.ConfigParam71 `json:",omitempty"` ConfigParam72 *tlb.ConfigParam72 `json:",omitempty"`