[EnableEpochs] # SCDeployEnableEpoch represents the epoch when the deployment of smart contracts will be enabled SCDeployEnableEpoch = 180 # BuiltInFunctionsEnableEpoch represents the epoch when the built in functions will be enabled BuiltInFunctionsEnableEpoch = 180 # RelayedTransactionsEnableEpoch represents the epoch when the relayed transactions will be enabled RelayedTransactionsEnableEpoch = 180 # PenalizedTooMuchGasEnableEpoch represents the epoch when the penalization for using too much gas will be enabled PenalizedTooMuchGasEnableEpoch = 124 # SwitchJailWaitingEnableEpoch represents the epoch when the system smart contract processing at end of epoch is enabled SwitchJailWaitingEnableEpoch = 124 # BelowSignedThresholdEnableEpoch represents the epoch when the change for computing rating for validators below signed rating is enabled BelowSignedThresholdEnableEpoch = 124 # SwitchHysteresisForMinNodesEnableEpoch represents the epoch when the system smart contract changes its config to consider # also (minimum) hysteresis nodes for the minimum number of nodes SwitchHysteresisForMinNodesEnableEpoch = 124 # TransactionSignedWithTxHashEnableEpoch represents the epoch when the node will also accept transactions that are # signed with the hash of transaction TransactionSignedWithTxHashEnableEpoch = 239 # MetaProtectionEnableEpoch represents the epoch when the transactions to the metachain are checked to have enough gas MetaProtectionEnableEpoch = 180 # AheadOfTimeGasUsageEnableEpoch represents the epoch when the cost of smart contract prepare changes from compiler per byte to ahead of time prepare per byte AheadOfTimeGasUsageEnableEpoch = 180 # GasPriceModifierEnableEpoch represents the epoch when the gas price modifier in fee computation is enabled GasPriceModifierEnableEpoch = 180 # RepairCallbackEnableEpoch represents the epoch when the callback repair is activated for scrs RepairCallbackEnableEpoch = 239 # BlockGasAndFeesReCheckEnableEpoch represents the epoch when gas and fees used in each created or processed block are re-checked BlockGasAndFeesReCheckEnableEpoch = 239 # BalanceWaitingListsEnableEpoch represents the epoch when the shard waiting lists are balanced at the start of an epoch BalanceWaitingListsEnableEpoch = 272 # ReturnDataToLastTransferEnableEpoch represents the epoch when returned data is added to last output transfer for callbacks ReturnDataToLastTransferEnableEpoch = 272 # SenderInOutTransferEnableEpoch represents the epoch when the feature of having different senders in output transfer is enabled SenderInOutTransferEnableEpoch = 272 # StakeEnableEpoch represents the epoch when staking is enabled StakeEnableEpoch = 124 # StakingV2EnableEpoch represents the epoch when staking v2 is enabled StakingV2EnableEpoch = 239 # DoubleKeyProtectionEnableEpoch represents the epoch when the double key protection will be enabled DoubleKeyProtectionEnableEpoch = 180 # ESDTEnableEpoch represents the epoch when ESDT is enabled ESDTEnableEpoch = 272 # GovernanceEnableEpoch represents the epoch when governance is enabled GovernanceEnableEpoch = 1265 # DelegationManagerEnableEpoch represents the epoch when the delegation manager is enabled # epoch should not be 0 DelegationManagerEnableEpoch = 239 # DelegationSmartContractEnableEpoch represents the epoch when delegation smart contract is enabled # epoch should not be 0 DelegationSmartContractEnableEpoch = 239 # CorrectLastUnjailedEnableEpoch represents the epoch when the fix regaring the last unjailed node should apply CorrectLastUnjailedEnableEpoch = 272 # RelayedTransactionsV2EnableEpoch represents the epoch when the relayed transactions V2 will be enabled RelayedTransactionsV2EnableEpoch = 432 # UnbondTokensV2EnableEpoch represents the epoch when the new implementation of the unbond tokens function is available UnbondTokensV2EnableEpoch = 319 # SaveJailedAlwaysEnableEpoch represents the epoch when saving jailed status at end of epoch will happen in all cases SaveJailedAlwaysEnableEpoch = 319 # ReDelegateBelowMinCheckEnableEpoch represents the epoch when the check for the re-delegated value will be enabled ReDelegateBelowMinCheckEnableEpoch = 319 # ValidatorToDelegationEnableEpoch represents the epoch when the validator-to-delegation feature will be enabled ValidatorToDelegationEnableEpoch = 319 # IncrementSCRNonceInMultiTransferEnableEpoch represents the epoch when the fix for preventing the generation of the same SCRs # is enabled. The fix is done by adding an extra increment. IncrementSCRNonceInMultiTransferEnableEpoch = 432 # ESDTMultiTransferEnableEpoch represents the epoch when esdt multitransfer built in function is enabled ESDTMultiTransferEnableEpoch = 432 # GlobalMintBurnDisableEpoch represents the epoch when the global mint and burn functions are disabled GlobalMintBurnDisableEpoch = 432 # ESDTTransferRoleEnableEpoch represents the epoch when esdt transfer role set is enabled ESDTTransferRoleEnableEpoch = 432 # ComputeRewardCheckpointEnableEpoch represents the epoch when compute rewards checkpoint epoch is enabled ComputeRewardCheckpointEnableEpoch = 427 # SCRSizeInvariantCheckEnableEpoch represents the epoch when the scr size invariant check is enabled SCRSizeInvariantCheckEnableEpoch = 427 # BackwardCompSaveKeyValueEnableEpoch represents the epoch when the backward compatibility for save key value error is enabled BackwardCompSaveKeyValueEnableEpoch = 427 # ESDTNFTCreateOnMultiShardEnableEpoch represents the epoch when esdt nft creation is enabled on multiple shards ESDTNFTCreateOnMultiShardEnableEpoch = 460 # MetaESDTSetEnableEpoch represents the epoch when the backward compatibility for save key value error is enabled MetaESDTSetEnableEpoch = 460 # AddTokensToDelegationEnableEpoch represents the epoch when adding tokens to delegation is enabled for whitelisted address AddTokensToDelegationEnableEpoch = 460 # MultiESDTTransferFixOnCallBackOnEnableEpoch represents the epoch when multi esdt transfer on callback fix is enabled MultiESDTTransferFixOnCallBackOnEnableEpoch = 460 # OptimizeGasUsedInCrossMiniBlocksEnableEpoch represents the epoch when gas used in cross shard mini blocks will be optimized OptimizeGasUsedInCrossMiniBlocksEnableEpoch = 460 # CorrectFirstQueuedEpoch represents the epoch when the backward compatibility for setting the first queued node is enabled CorrectFirstQueuedEpoch = 460 # DeleteDelegatorAfterClaimRewardsEnableEpoch represents the epoch when the delegators data is deleted for delegators that have to claim rewards after they withdraw all funds DeleteDelegatorAfterClaimRewardsEnableEpoch = 460 # FixOOGReturnCodeEnableEpoch represents the epoch when the backward compatibility returning out of gas error is enabled FixOOGReturnCodeEnableEpoch = 460 # RemoveNonUpdatedStorageEnableEpoch represents the epoch when the backward compatibility for removing non updated storage is enabled RemoveNonUpdatedStorageEnableEpoch = 460 # OptimizeNFTStoreEnableEpoch represents the epoch when optimizations on NFT metadata store and send are enabled OptimizeNFTStoreEnableEpoch = 613 # CreateNFTThroughExecByCallerEnableEpoch represents the epoch when nft creation through execution on destination by caller is enabled CreateNFTThroughExecByCallerEnableEpoch = 613 # StopDecreasingValidatorRatingWhenStuckEnableEpoch represents the epoch when we should stop decreasing validator's rating if, for instance, a shard gets stuck StopDecreasingValidatorRatingWhenStuckEnableEpoch = 613 # FrontRunningProtectionEnableEpoch represents the epoch when the first version of protection against front running is enabled FrontRunningProtectionEnableEpoch = 613 # IsPayableBySCEnableEpoch represents the epoch when a new flag isPayable by SC is enabled IsPayableBySCEnableEpoch = 613 # CleanUpInformativeSCRsEnableEpoch represents the epoch when the informative-only scrs are cleaned from miniblocks and logs are created from them CleanUpInformativeSCRsEnableEpoch = 613 # StorageAPICostOptimizationEnableEpoch represents the epoch when new storage helper functions are enabled and cost is reduced in Wasm VM StorageAPICostOptimizationEnableEpoch = 613 # ESDTRegisterAndSetAllRolesEnableEpoch represents the epoch when new function to register tickerID and set all roles is enabled ESDTRegisterAndSetAllRolesEnableEpoch = 613 # ScheduledMiniBlocksEnableEpoch represents the epoch when scheduled mini blocks would be created if needed ScheduledMiniBlocksEnableEpoch = 613 # CorrectJailedNotUnstakedEpoch represents the epoch when the jailed validators will also be unstaked if the queue is empty CorrectJailedNotUnstakedEmptyQueueEpoch = 613 # DoNotReturnOldBlockInBlockchainHookEnableEpoch represents the epoch when the fetch old block operation is # disabled in the blockchain hook component DoNotReturnOldBlockInBlockchainHookEnableEpoch = 613 # AddFailedRelayedTxToInvalidMBsDisableEpoch represents the epoch when adding the failed relayed txs to invalid miniblocks is disabled AddFailedRelayedTxToInvalidMBsDisableEpoch = 613 # SCRSizeInvariantOnBuiltInResultEnableEpoch represents the epoch when scr size invariant on built in result is enabled SCRSizeInvariantOnBuiltInResultEnableEpoch = 613 # CheckCorrectTokenIDForTransferRoleEnableEpoch represents the epoch when the correct token ID check is applied for transfer role verification CheckCorrectTokenIDForTransferRoleEnableEpoch = 669 # DisableExecByCallerEnableEpoch represents the epoch when the check on value is disabled on exec by caller DisableExecByCallerEnableEpoch = 676 # RefactorContextEnableEpoch represents the epoch when refactoring/simplifying is enabled in contexts RefactorContextEnableEpoch = 680 # FailExecutionOnEveryAPIErrorEnableEpoch represent the epoch when new protection in VM is enabled to fail all wrong API calls FailExecutionOnEveryAPIErrorEnableEpoch = 706 # ManagedCryptoAPIsEnableEpoch represents the epoch when new managed crypto APIs are enabled in the wasm VM ManagedCryptoAPIsEnableEpoch = 706 # CheckFunctionArgumentEnableEpoch represents the epoch when the extra argument check is enabled in vm-common CheckFunctionArgumentEnableEpoch = 708 # CheckExecuteOnReadOnlyEnableEpoch represents the epoch when the extra checks are enabled for execution on read only CheckExecuteOnReadOnlyEnableEpoch = 707 # ESDTMetadataContinuousCleanupEnableEpoch represents the epoch when esdt metadata is automatically deleted according to inshard liquidity ESDTMetadataContinuousCleanupEnableEpoch = 795 # MiniBlockPartialExecutionEnableEpoch represents the epoch when mini block partial execution will be enabled MiniBlockPartialExecutionEnableEpoch = 795 # FixAsyncCallBackArgsListEnableEpoch represents the epoch when the async callback arguments lists fix will be enabled FixAsyncCallBackArgsListEnableEpoch = 795 # FixOldTokenLiquidityEnableEpoch represents the epoch when the fix for old token liquidity is enabled FixOldTokenLiquidityEnableEpoch = 811 # RuntimeMemStoreLimitEnableEpoch represents the epoch when the condition for Runtime MemStore is enabled RuntimeMemStoreLimitEnableEpoch = 938 # SetSenderInEeiOutputTransferEnableEpoch represents the epoch when setting the sender in eei output transfers will be enabled SetSenderInEeiOutputTransferEnableEpoch = 938 # RefactorPeersMiniBlocksEnableEpoch represents the epoch when refactor of the peers mini blocks will be enabled RefactorPeersMiniBlocksEnableEpoch = 938 # MaxBlockchainHookCountersEnableEpoch represents the epoch when the max blockchainhook counters are enabled MaxBlockchainHookCountersEnableEpoch = 938 # WipeSingleNFTLiquidityDecreaseEnableEpoch represents the epoch when the system account liquidity is decreased for wipeSingleNFT as well WipeSingleNFTLiquidityDecreaseEnableEpoch = 938 # AlwaysSaveTokenMetaDataEnableEpoch represents the epoch when the token metadata is always saved AlwaysSaveTokenMetaDataEnableEpoch = 938 # RuntimeCodeSizeFixEnableEpoch represents the epoch when the code size fix in the VM is enabled RuntimeCodeSizeFixEnableEpoch = 970 # RelayedNonceFixEnableEpoch represents the epoch when the nonce fix for relayed txs is enabled RelayedNonceFixEnableEpoch = 1043 # SetGuardianEnableEpoch represents the epoch when the guard account feature is enabled in the protocol SetGuardianEnableEpoch = 1075 # DeterministicSortOnValidatorsInfoEnableEpoch represents the epoch when the deterministic sorting on validators info is enabled DeterministicSortOnValidatorsInfoEnableEpoch = 1126 # SCProcessorV2EnableEpoch represents the epoch when SC processor V2 will be used SCProcessorV2EnableEpoch = 1265 # AutoBalanceDataTriesEnableEpoch represents the epoch when the data tries are automatically balanced by inserting at the hashed key instead of the normal key AutoBalanceDataTriesEnableEpoch = 1265 # MigrateDataTrieEnableEpoch represents the epoch when the data tries migration is enabled MigrateDataTrieEnableEpoch = 1293 # KeepExecOrderOnCreatedSCRsEnableEpoch represents the epoch when the execution order of created SCRs is ensured KeepExecOrderOnCreatedSCRsEnableEpoch = 1265 # MultiClaimOnDelegationEnableEpoch represents the epoch when the multi claim on delegation is enabled MultiClaimOnDelegationEnableEpoch = 1265 # ChangeUsernameEnableEpoch represents the epoch when changing username is enabled ChangeUsernameEnableEpoch = 1000000 # ConsistentTokensValuesLengthCheckEnableEpoch represents the epoch when the consistent tokens values length check is enabled ConsistentTokensValuesLengthCheckEnableEpoch = 1265 # FixDelegationChangeOwnerOnAccountEnableEpoch represents the epoch when the fix for the delegation system smart contract is enabled FixDelegationChangeOwnerOnAccountEnableEpoch = 1265 # DynamicGasCostForDataTrieStorageLoadEnableEpoch represents the epoch when dynamic gas cost for data trie storage load will be enabled DynamicGasCostForDataTrieStorageLoadEnableEpoch = 1265 # ScToScLogEventEnableEpoch represents the epoch when the sc to sc log event feature is enabled ScToScLogEventEnableEpoch = 1265 # NFTStopCreateEnableEpoch represents the epoch when NFT stop create feature is enabled NFTStopCreateEnableEpoch = 1265 # ChangeOwnerAddressCrossShardThroughSCEnableEpoch represents the epoch when the change owner address built in function will work also through a smart contract call cross shard ChangeOwnerAddressCrossShardThroughSCEnableEpoch = 1265 # FixGasRemainingForSaveKeyValueBuiltinFunctionEnableEpoch represents the epoch when the fix for the remaining gas in the SaveKeyValue builtin function is enabled FixGasRemainingForSaveKeyValueBuiltinFunctionEnableEpoch = 1265 # CurrentRandomnessOnSortingEnableEpoch represents the epoch when the current randomness on sorting is enabled CurrentRandomnessOnSortingEnableEpoch = 1391 # StakeLimitsEnableEpoch represents the epoch when stake limits on validators are enabled # Should have the same value as StakingV4Step1EnableEpoch that triggers the automatic unstake operations for the queue nodes StakeLimitsEnableEpoch = 1391 # StakingV4Step1EnableEpoch represents the epoch when staking v4 is initialized. This is the epoch in which # all nodes from staking queue are moved in the auction list StakingV4Step1EnableEpoch = 1391 # StakingV4Step2EnableEpoch represents the epoch when staking v4 is enabled. Should have a greater value than StakingV4Step1EnableEpoch. # From this epoch, all shuffled out nodes are moved to auction nodes. No auction nodes selection is done yet. StakingV4Step2EnableEpoch = 1392 # StakingV4Step3EnableEpoch represents the epoch in which selected nodes from auction will be distributed to waiting list StakingV4Step3EnableEpoch = 1393 # AlwaysMergeContextsInEEIEnableEpoch represents the epoch in which the EEI will always merge the contexts AlwaysMergeContextsInEEIEnableEpoch = 1391 # CleanupAuctionOnLowWaitingListEnableEpoch represents the epoch when duplicated data cleanup from auction list is enabled in the condition of a low waiting list # Should have the same value as StakingV4Step1EnableEpoch if the low waiting list has not happened, otherwise should have a greater value CleanupAuctionOnLowWaitingListEnableEpoch = 1391 # UseGasBoundedShouldFailExecutionEnableEpoch represents the epoch when use bounded gas function should fail execution in case of error UseGasBoundedShouldFailExecutionEnableEpoch = 1512 # DynamicESDTEnableEpoch represents the epoch when dynamic NFT feature is enabled DynamicESDTEnableEpoch = 1575 # EGLDInMultiTransferEnableEpoch represents the epoch when EGLD in multitransfer is enabled EGLDInMultiTransferEnableEpoch = 1575 # CryptoOpcodesV2EnableEpoch represents the epoch when BLSMultiSig, Secp256r1 and other opcodes are enabled CryptoOpcodesV2EnableEpoch = 1575 # UnjailCleanupEnableEpoch represents the epoch when the cleanup of the unjailed nodes is enabled UnJailCleanupEnableEpoch = 1575 # FixRelayedBaseCostEnableEpoch represents the epoch when the fix for relayed base cost will be enabled FixRelayedBaseCostEnableEpoch = 1575 # MultiESDTNFTTransferAndExecuteByUserEnableEpoch represents the epoch when enshrined sovereign cross chain opcodes are enabled MultiESDTNFTTransferAndExecuteByUserEnableEpoch = 9999999 # FixRelayedMoveBalanceToNonPayableSCEnableEpoch represents the epoch when the fix for relayed move balance to non payable sc will be enabled FixRelayedMoveBalanceToNonPayableSCEnableEpoch = 1575 # RelayedTransactionsV3EnableEpoch represents the epoch when the relayed transactions v3 will be enabled RelayedTransactionsV3EnableEpoch = 1671 # RelayedTransactionsV3FixESDTTransferEnableEpoch represents the epoch when the fix for relayed transactions v3 with esdt transfer will be enabled RelayedTransactionsV3FixESDTTransferEnableEpoch = 1671 # AndromedaEnableEpoch represents the epoch when the equivalent messages and fix order for consensus features are enabled AndromedaEnableEpoch = 1763 # SupernovaEnableEpoch represents the epoch when sub-second finality will be enabled SupernovaEnableEpoch = 2233 # FixEpochChangeProposedCurrentEpochEnableEpoch represents the epoch when epoch change proposed blocks expose the prepared epoch FixEpochChangeProposedCurrentEpochEnableEpoch = 2238 # CheckBuiltInCallOnTransferValueAndFailEnableRound represents the ROUND when the check on transfer value fix is activated CheckBuiltInCallOnTransferValueAndFailEnableRound = 25184293 # THIS MUST BE A ROUND # MaskVMInternalDependenciesErrorsEnableEpoch represents the epoch when the additional internal erorr masking in vm is enabled MaskVMInternalDependenciesErrorsEnableEpoch = 1820 # FixBackTransferOPCODEEnableEpoch represents the epoch when the fix for back transfers opcode will be enabled FixBackTransferOPCODEEnableEpoch = 1820 # ValidationOnGobDecodeEnableEpoch represents the epoch when validation on GobDecode will be taken into account ValidationOnGobDecodeEnableEpoch = 1820 # BarnardOpcodesEnableEpoch represents the epoch when Barnard opcodes will be enabled BarnardOpcodesEnableEpoch = 1820 # AutomaticActivationOfNodesDisableEpoch represents the epoch when automatic activation of nodes for validators is disabled AutomaticActivationOfNodesDisableEpoch = 1820 # GovernanceDisableProposeEnableEpoch represents the epoch when governance disable proposal is enabled GovernanceDisableProposeEnableEpoch = 1820 # GovernanceFixesEnableEpoch represents the epoch when governance fixes are enabled GovernanceFixesEnableEpoch = 1831 # FixGetBalanceEnableEpoch represents the epoch when get balance opcode fix will be enabled FixGetBalanceEnableEpoch = 1820 # RelayedTransactionsV1V2DisableEpoch represents the epoch when relayed transactions v1 and v2 are disabled RelayedTransactionsV1V2DisableEpoch = 1918 # FullShardDataValidationEnableEpoch represents the epoch when NumPendingMiniBlocks and LastIncludedMetaNonce # in meta ShardData are enforced during verification; before it, these two fields are skipped. FullShardDataValidationEnableEpoch = 2086 # ConsumedGasInEconomicsFixEnableEpoch represents the epoch when consumed gas in accumulated economics is fixed ConsumedGasInEconomicsFixEnableEpoch = 2093 # AttributeExtraGasUsageEnableEpoch represents the epoch when the extra gas usage for attributes is enabled AttributeExtraGasUsageEnableEpoch = 2198 # BLSMultiSignerEnableEpoch represents the activation epoch for different types of BLS multi-signers BLSMultiSignerEnableEpoch = [ { EnableEpoch = 0, Type = "no-KOSK" }, { EnableEpoch = 938, Type = "KOSK" } ] # MaxNodesChangeEnableEpoch holds configuration for changing the maximum number of nodes and the enabling epoch MaxNodesChangeEnableEpoch = [ { EpochEnable = 0, MaxNumNodes = 2169, NodesToShufflePerShard = 143 }, { EpochEnable = 249, MaxNumNodes = 3200, NodesToShufflePerShard = 80 }, # Staking v4 configuration, where: # - Enable epoch = StakingV4Step3EnableEpoch # - NodesToShufflePerShard = same as previous entry in MaxNodesChangeEnableEpoch # - MaxNumNodes = (MaxNumNodesFromPreviousEpochEnable - (numOfShards+1)*NodesToShufflePerShard) { EpochEnable = 1393, MaxNumNodes = 2880, NodesToShufflePerShard = 80 }, ] [GasSchedule] # GasScheduleByEpochs holds the configuration for the gas schedule that will be applied from specific epochs GasScheduleByEpochs = [ { StartEpoch = 0, FileName = "gasScheduleV1.toml" }, { StartEpoch = 180, FileName = "gasScheduleV2.toml" }, { StartEpoch = 239, FileName = "gasScheduleV3.toml" }, { StartEpoch = 460, FileName = "gasScheduleV4.toml" }, { StartEpoch = 582, FileName = "gasScheduleV5.toml" }, { StartEpoch = 613, FileName = "gasScheduleV6.toml" }, { StartEpoch = 938, FileName = "gasScheduleV7.toml" }, { StartEpoch = 1433, FileName = "gasScheduleV8.toml" }, { StartEpoch = 1763, FileName = "gasScheduleV9.toml" }, ]