Probably going to move to functions that do not depend on an initial state. Final state is easier to reason about