public override IDeepCopyable CopyTo(IDeepCopyable other) { var dest = other as EncounterHospitalizationAccomodationComponent; if (dest != null) { base.CopyTo(dest); if (Bed != null) { dest.Bed = (Hl7.Fhir.Model.ResourceReference)Bed.DeepCopy(); } if (Period != null) { dest.Period = (Hl7.Fhir.Model.Period)Period.DeepCopy(); } return(dest); } else { throw new ArgumentException("Can only copy to an object of the same type", "other"); } }