added StateTable class