first commit

state machine