docs: public void storeState(final Configuration configuration) {
          // clear properties from vertex program
          Set<String> oldKeys = new HashSet<>();
          configuration.subset(PREFIX_SELECTED_TYPE_KEY).getKeys()
                  .forEachRemaining(key -> oldKeys.add(PREFIX_SELECTED_TYPE_KEY + "." + key));
          oldKeys.forEach(configuration::clearProperty);
  
          // store selectedTypes
          selectedTypes.forEach(typeId ->
                  configuration.addProperty(PREFIX_SELECTED_TYPE_KEY + "." + typeId, typeId));
  
          // store user specified properties
          persistentProperties.forEach((key, value) ->
                  configuration.addProperty(PREFIX_PERSISTENT_PROPERTIES + "." + key, value));
      }