Symmetric get/set_state