code: protected State updateSignature(State state, Acceptance acc) {
          assert (state != init);
          StateSignature sig = state.getSignature();
          if (sig.acceptance == acc) {
              return state;
          }
          register.remove(sig);
          sig.acceptance = acc;
          sig.updateHashCode();
          return replaceOrRegister(state);
      }
docs: Updates the signature for a given state.
  
  @param state
  the state
  @param acc
  the new acceptance value
  
  @return the canonical state for the updated signature