public AdverseReactionExposureComponent copy(AdverseReaction e) {
   AdverseReactionExposureComponent dst = e.new AdverseReactionExposureComponent();
   dst.exposureDate = exposureDate == null ? null : exposureDate.copy();
   dst.exposureType = exposureType == null ? null : exposureType.copy();
   dst.causalityExpectation = causalityExpectation == null ? null : causalityExpectation.copy();
   dst.substance = substance == null ? null : substance.copy();
   return dst;
 }
 public AdverseReaction copy() {
   AdverseReaction dst = new AdverseReaction();
   dst.reactionDate = reactionDate == null ? null : reactionDate.copy();
   dst.subject = subject == null ? null : subject.copy();
   dst.didNotOccurFlag = didNotOccurFlag == null ? null : didNotOccurFlag.copy();
   dst.recorder = recorder == null ? null : recorder.copy();
   dst.symptom = new ArrayList<AdverseReactionSymptomComponent>();
   for (AdverseReactionSymptomComponent i : symptom) dst.symptom.add(i.copy(dst));
   dst.exposure = new ArrayList<AdverseReactionExposureComponent>();
   for (AdverseReactionExposureComponent i : exposure) dst.exposure.add(i.copy(dst));
   return dst;
 }