The `#[error_code]` enum defines custom errors. The `require!` macro asserts boolean conditions and returns errors.
rust
#[error_code]
pub enum VaultError {
#[msg("Insufficient vault balance")]
InsufficientBalance,
}
require!(vault.balance >= amount, VaultError::InsufficientBalance);