working state implementation