clean up states list need loop