public synchronized <ParametersT extends Parameters> void add(
      InsecureKeyCreator<ParametersT> creator, Class<ParametersT> parametersClass)
      throws GeneralSecurityException {
    InsecureKeyCreator<?> existingCreator = creators.get(parametersClass);
    if (existingCreator != null) {
      if (!existingCreator.equals(creator)) {
        throw new GeneralSecurityException(
            "Different key creator for parameters class already inserted");
      }
    }
    creators.put(parametersClass, creator);
  }
Adds a new "InsecureKeyCreator" to the instance.

<p>If a creator for this class has been added previously, the two instances have to be equal.
Otherwise, this method throws a {@code GeneralSecurityException}.
java_src/src/main/java/com/google/crypto/tink/internal/MutableKeyDerivationRegistry.java