expr 002-fsm: adding different gate types