@Override
 public <G, D, L> void exportParameters(
     ParameterHelper helper, DataDocument<G, D, L> document, D dictionary) {
   document.addToDictionary(
       dictionary, "$name", helper.toClassName(MutableMeasurementProfile.class));
   if (intensityDeviation != 0 && !Double.isNaN(intensityDeviation))
     document.addToDictionary(dictionary, "intensityDeviation", getIntensityDeviation());
   if (getMedianNoiseIntensity() != 0 && !Double.isNaN(getMedianNoiseIntensity()))
     document.addToDictionary(dictionary, "medianNoiseIntensity", getMedianNoiseIntensity());
   if (formulaConstraints != null)
     document.addToDictionary(
         dictionary, "formulaConstraints", helper.wrap(document, getFormulaConstraints()));
   if (getAllowedMassDeviation() != null)
     document.addToDictionary(
         dictionary, "allowedMassDeviation", getAllowedMassDeviation().toString());
   if (getStandardMs1MassDeviation() != null)
     document.addToDictionary(
         dictionary, "standardMs1MassDeviation", getStandardMs1MassDeviation().toString());
   if (getStandardMs2MassDeviation() != null)
     document.addToDictionary(
         dictionary, "standardMs2MassDeviation", getStandardMs2MassDeviation().toString());
   if (getStandardMassDifferenceDeviation() != null)
     document.addToDictionary(
         dictionary,
         "standardMassDifferenceDeviation",
         getStandardMassDifferenceDeviation().toString());
 }
 @Override
 public <G, D, L> void exportParameters(
     ParameterHelper helper, DataDocument<G, D, L> document, D dictionary) {
   document.addToDictionary(dictionary, "score", penalty);
 }
 @Override
 public <G, D, L> void exportParameters(
     ParameterHelper helper, DataDocument<G, D, L> document, D dictionary) {
   document.addToDictionary(dictionary, "zeroIntensity", zeroIntensity);
   document.addToDictionary(dictionary, "fullIntensity", fullIntensity);
 }