---
# System prepended metadata

title: Plasm Validators Module

---

# Plasm Validators Module


## Overview

The Plasm validators module manages validators and distributes rewards to validators for an era.
[`more...`](https://docs.plasmnet.io)

![](https://i.imgur.com/oBqWo4X.png)

## Interface

### Hooks
* `fn on_finalize` - The hook called at the end of blocks execution
### Dispatchable Functions
* `set_validators` - Manually set new validators (sudo)

### Module methods
* `fn reward_to_validators` - Reward the validators for an era
## Storage
* `ElectedValidators` - The currently elected validator set keyed by stash account ID
    * `EraIndex => Option<Vec<T::AccountId>>`
* `UntreatedEra` - The untreated era is EraIndex
    * `EraIndex`
* `Validators` - Set of next era accounts that can validate blocks
    * `Vec<T::AccountId>`


## Events

* `NewValidators(Vec<AccountId>)` - Validator set changed
* `ValidatorReward(EraIndex, AccountId, Balance)` - The amount of minted rewards for validators
* `TotalValidatorRewards(EraIndex, Balance)`- The total amount of minted rewards for validators.

## Related Modules

- [Plasm-Reward](../plasm-rewards/README.md): The Reward module for Plasm Network.


* * *

Plasm is licensed under the GPLv3.0 by Stake Technologies Inc.