Decree is a special [[Data element (Datum)|datum]] type used to inform the blockchain network about particular system changes.
Decrees are needed for setting some of the network parameters such as size of common-network commission (and wallet for this commission), minimal signatures quantity for transaction acceptance, list of network owners (ones who can work with zerochain directly), etc.
## Decree types
- `DAP_CHAIN_DATUM_DECREE_COMMON_SUBTYPE_FEE`
specifies network commission and corresponding wallet address ([[Anchor]] is needed)
- `DAP_CHAIN_DATUM_DECREE_COMMON_SUBTYPE_OWNERS`
specifies list of network owners ([[Anchor]] is not needed)
- `DAP_CHAIN_DATUM_DECREE_COMMON_SUBTYPE_OWNERS_MIN`
gets minimal signatures quantity for decree acceptance ([[Anchor]] is not needed)
- `DAP_CHAIN_DATUM_DECREE_COMMON_SUBTYPE_STAKE_APPROVE`
confirms stake validity ([[Anchor]] is needed)
- `DAP_CHAIN_DATUM_DECREE_COMMON_SUBTYPE_STAKE_INVALIDATE`
invalidates stake ([[Anchor]] is needed)
- `DAP_CHAIN_DATUM_DECREE_COMMON_SUBTYPE_STAKE_MIN_VALUE`
sets minimal stake value to become validator ([[Anchor]] is needed)
- `DAP_CHAIN_DATUM_DECREE_COMMON_SUBTYPE_STAKE_MIN_VALIDATORS_COUNT`
sets minimal validators quantity for [[Block]] acceptance ([[Anchor]] is needed)
- `DAP_CHAIN_DATUM_DECREE_COMMON_SUBTYPE_BAN`
bans the node ([[Anchor]] is not needed)
- `DAP_CHAIN_DATUM_DECREE_COMMON_SUBTYPE_UNBAN`
unbans the node ([[Anchor]] is not needed)
- `DAP_CHAIN_DATUM_DECREE_COMMON_SUBTYPE_REWARD`
sets base reward value ([[Anchor]] is needed)
Decree is an infrastructure datum, it is created in zerochain. If decree changes some parameters in mainchain then there will be created [[Anchor]] for it in the mainchain.