Seems this begs a method on state_descriptor for better encapsulation.