Refactored, states