state detection