actually done the extraction now for StateSelector (which is now an interface).