Skip to main content

platform_version/version/fee/
v3.rs

1use crate::version::fee::data_contract_registration::v3::FEE_DATA_CONTRACT_REGISTRATION_VERSION3;
2use crate::version::fee::document_ttl::v1::FEE_DOCUMENT_TTL_VERSION1;
3use crate::version::fee::v2::FEE_VERSION2;
4use crate::version::fee::vote_resolution_fund_fees::v2::VOTE_RESOLUTION_FUND_FEES_VERSION2;
5use crate::version::fee::FeeVersion;
6
7/// Introduced in protocol version 14 (4.2).
8pub const FEE_VERSION3: FeeVersion = FeeVersion {
9    // Contested contributions use the active protocol, so unchanged storage
10    // rates retain the historical fee_version_number inherited from FEE_VERSION2.
11    vote_resolution_fund_fees: VOTE_RESOLUTION_FUND_FEES_VERSION2,
12    // Tokens with a once-per-identity distribution pay a registration surcharge.
13    data_contract_registration: FEE_DATA_CONTRACT_REGISTRATION_VERSION3,
14    // Documents of a type declaring a `ttl` (new in protocol version 14) pay the
15    // tiered lifetime price and prepay their deletion; FEE_VERSION2 carries the same
16    // group, unread before 14, so the table is spelled out here where it takes effect.
17    document_ttl: FEE_DOCUMENT_TTL_VERSION1,
18    ..FEE_VERSION2
19};