Main FSM implemented, up to CHECK state