Split into classes for clarity