fsm

i'll write something later :)