fix - state handle logic