Added new state implementation