Refactor to stateless, first step