maybe we should use the with_state(state) provided by the gem