what's the point of making this public if the StateCall class is package-private?