Refactor demanded state into its own object.