# Error

The error module defines the LidoError enum for the available error types in the Solido program along with some small conversion implementations to and from the Solana ProgramError struct.

## Errors#

The LidoError enum, at time of writing, defines the following errors:

ErrorDescription
AlreadyInUseThe Lido address passed to the program is in use; i.e. the Solido program has already been initialised.
InvalidOwnerThe address of the owner of the Solido program is different to the passed program id.
InvalidAmountThe amount being staked is below the minimum stake amount.
SignatureMissingA required signature is missing
InvalidReserveAuthorityThe authority for the reserve account, where SOL gets deposited, is invalid
CalculationFailureCalculation failed due to division by zero or overflow
WrongStakeStateStake account is in an invalid state or does not exist when processing a stake deposit
MaximumNumberOfAccountsExceededThe maximum number of entries in the account map is already at maximum capacity as defined by maximum entries
UnexpectedMaxValidatorsThe size of the account for the Solido state does not match max_validators
InvalidManagerWrong manager trying to alter the state of the Solido program
InvalidMaintainerWrong maintainer trying to alter the state of the Solido program
InvalidAccountInfoThe provided account is mismatched in is_writable or is_signer to what was expected for that type of account
TooManyAccountKeysMore accounts were provided than Solido expects
InvalidValidatorCreditAccountThe account provided when claiming validator fees is incorrect
InvalidFeeRecipientThe provided fee recipient account is incorrect