Implemented 3 user states