nonconsumingchoice doesn’t affect the contract it’s contained in. You can execute it as many times as you want. In contrast, a
consumingchoice can be called exactly once. As soon as the call happens, the containing contract is marked as inactive and a subsequent call will fail.