001package org.hl7.fhir.convertors.conv40_50.datatypes40_50.general40_50;
002
003import java.util.stream.Collectors;
004
005import org.hl7.fhir.convertors.context.ConversionContext40_50;
006import org.hl7.fhir.convertors.conv40_50.datatypes40_50.BackboneElement40_50;
007import org.hl7.fhir.convertors.conv40_50.datatypes40_50.primitive40_50.DateTime40_50;
008import org.hl7.fhir.convertors.conv40_50.datatypes40_50.primitive40_50.Decimal40_50;
009import org.hl7.fhir.convertors.conv40_50.datatypes40_50.primitive40_50.PositiveInt40_50;
010import org.hl7.fhir.convertors.conv40_50.datatypes40_50.primitive40_50.Time40_50;
011import org.hl7.fhir.convertors.conv40_50.datatypes40_50.primitive40_50.UnsignedInt40_50;
012import org.hl7.fhir.exceptions.FHIRException;
013
014public class Timing40_50 {
015  public static org.hl7.fhir.r4.model.Timing convertTiming(org.hl7.fhir.r5.model.Timing src) throws FHIRException {
016    if (src == null) return null;
017    org.hl7.fhir.r4.model.Timing tgt = new org.hl7.fhir.r4.model.Timing();
018    BackboneElement40_50.copyBackboneElement(src, tgt);
019    for (org.hl7.fhir.r5.model.DateTimeType t : src.getEvent()) tgt.getEvent().add(DateTime40_50.convertDateTime(t));
020    if (src.hasRepeat()) tgt.setRepeat(convertTimingRepeatComponent(src.getRepeat()));
021    if (src.hasCode()) tgt.setCode(CodeableConcept40_50.convertCodeableConcept(src.getCode()));
022    return tgt;
023  }
024
025  public static org.hl7.fhir.r5.model.Timing convertTiming(org.hl7.fhir.r4.model.Timing src) throws FHIRException {
026    if (src == null) return null;
027    org.hl7.fhir.r5.model.Timing tgt = new org.hl7.fhir.r5.model.Timing();
028    BackboneElement40_50.copyBackboneElement(src, tgt);
029    for (org.hl7.fhir.r4.model.DateTimeType t : src.getEvent()) tgt.getEvent().add(DateTime40_50.convertDateTime(t));
030    if (src.hasRepeat()) tgt.setRepeat(convertTimingRepeatComponent(src.getRepeat()));
031    if (src.hasCode()) tgt.setCode(CodeableConcept40_50.convertCodeableConcept(src.getCode()));
032    return tgt;
033  }
034
035  public static org.hl7.fhir.r5.model.Timing.TimingRepeatComponent convertTimingRepeatComponent(org.hl7.fhir.r4.model.Timing.TimingRepeatComponent src) throws FHIRException {
036    if (src == null) return null;
037    org.hl7.fhir.r5.model.Timing.TimingRepeatComponent tgt = new org.hl7.fhir.r5.model.Timing.TimingRepeatComponent();
038    ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt);
039    if (src.hasBounds())
040      tgt.setBounds(ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().convertType(src.getBounds()));
041    if (src.hasCount()) tgt.setCountElement(PositiveInt40_50.convertPositiveInt(src.getCountElement()));
042    if (src.hasCountMax()) tgt.setCountMaxElement(PositiveInt40_50.convertPositiveInt(src.getCountMaxElement()));
043    if (src.hasDuration()) tgt.setDurationElement(Decimal40_50.convertDecimal(src.getDurationElement()));
044    if (src.hasDurationMax()) tgt.setDurationMaxElement(Decimal40_50.convertDecimal(src.getDurationMaxElement()));
045    if (src.hasDurationUnit()) tgt.setDurationUnitElement(convertUnitsOfTime(src.getDurationUnitElement()));
046    if (src.hasFrequency()) tgt.setFrequencyElement(PositiveInt40_50.convertPositiveInt(src.getFrequencyElement()));
047    if (src.hasFrequencyMax())
048      tgt.setFrequencyMaxElement(PositiveInt40_50.convertPositiveInt(src.getFrequencyMaxElement()));
049    if (src.hasPeriod()) tgt.setPeriodElement(Decimal40_50.convertDecimal(src.getPeriodElement()));
050    if (src.hasPeriodMax()) tgt.setPeriodMaxElement(Decimal40_50.convertDecimal(src.getPeriodMaxElement()));
051    if (src.hasPeriodUnit()) tgt.setPeriodUnitElement(convertUnitsOfTime(src.getPeriodUnitElement()));
052    tgt.setDayOfWeek(src.getDayOfWeek().stream().map(Timing40_50::convertDayOfWeek).collect(Collectors.toList()));
053    if (src.hasWhen())
054      tgt.setWhen(src.getWhen().stream().map(Timing40_50::convertEventTiming).collect(Collectors.toList()));
055    for (org.hl7.fhir.r4.model.TimeType t : src.getTimeOfDay()) tgt.getTimeOfDay().add(Time40_50.convertTime(t));
056    if (src.hasOffset()) tgt.setOffsetElement(UnsignedInt40_50.convertUnsignedInt(src.getOffsetElement()));
057    return tgt;
058  }
059
060  public static org.hl7.fhir.r4.model.Timing.TimingRepeatComponent convertTimingRepeatComponent(org.hl7.fhir.r5.model.Timing.TimingRepeatComponent src) throws FHIRException {
061    if (src == null) return null;
062    org.hl7.fhir.r4.model.Timing.TimingRepeatComponent tgt = new org.hl7.fhir.r4.model.Timing.TimingRepeatComponent();
063    ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt);
064    if (src.hasBounds())
065      tgt.setBounds(ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().convertType(src.getBounds()));
066    if (src.hasCount()) tgt.setCountElement(PositiveInt40_50.convertPositiveInt(src.getCountElement()));
067    if (src.hasCountMax()) tgt.setCountMaxElement(PositiveInt40_50.convertPositiveInt(src.getCountMaxElement()));
068    if (src.hasDuration()) tgt.setDurationElement(Decimal40_50.convertDecimal(src.getDurationElement()));
069    if (src.hasDurationMax()) tgt.setDurationMaxElement(Decimal40_50.convertDecimal(src.getDurationMaxElement()));
070    if (src.hasDurationUnit()) tgt.setDurationUnitElement(convertUnitsOfTime(src.getDurationUnitElement()));
071    if (src.hasFrequency()) tgt.setFrequencyElement(PositiveInt40_50.convertPositiveInt(src.getFrequencyElement()));
072    if (src.hasFrequencyMax())
073      tgt.setFrequencyMaxElement(PositiveInt40_50.convertPositiveInt(src.getFrequencyMaxElement()));
074    if (src.hasPeriod()) tgt.setPeriodElement(Decimal40_50.convertDecimal(src.getPeriodElement()));
075    if (src.hasPeriodMax()) tgt.setPeriodMaxElement(Decimal40_50.convertDecimal(src.getPeriodMaxElement()));
076    if (src.hasPeriodUnit()) tgt.setPeriodUnitElement(convertUnitsOfTime(src.getPeriodUnitElement()));
077    tgt.setDayOfWeek(src.getDayOfWeek().stream().map(Timing40_50::convertDayOfWeek).collect(Collectors.toList()));
078    if (src.hasWhen())
079      tgt.setWhen(src.getWhen().stream().map(Timing40_50::convertEventTiming).collect(Collectors.toList()));
080    for (org.hl7.fhir.r5.model.TimeType t : src.getTimeOfDay()) tgt.getTimeOfDay().add(Time40_50.convertTime(t));
081    if (src.hasOffset()) tgt.setOffsetElement(UnsignedInt40_50.convertUnsignedInt(src.getOffsetElement()));
082    return tgt;
083  }
084
085  static public org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.Timing.UnitsOfTime> convertUnitsOfTime(org.hl7.fhir.r4.model.Enumeration<org.hl7.fhir.r4.model.Timing.UnitsOfTime> src) throws FHIRException {
086    if (src == null || src.isEmpty()) return null;
087    org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.Timing.UnitsOfTime> tgt = new org.hl7.fhir.r5.model.Enumeration<>(new org.hl7.fhir.r5.model.Timing.UnitsOfTimeEnumFactory());
088    ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt);
089    if (src.getValue() == null) {
090      tgt.setValue(org.hl7.fhir.r5.model.Timing.UnitsOfTime.NULL);
091    } else {
092      switch (src.getValue()) {
093        case S:
094          tgt.setValue(org.hl7.fhir.r5.model.Timing.UnitsOfTime.S);
095          break;
096        case MIN:
097          tgt.setValue(org.hl7.fhir.r5.model.Timing.UnitsOfTime.MIN);
098          break;
099        case H:
100          tgt.setValue(org.hl7.fhir.r5.model.Timing.UnitsOfTime.H);
101          break;
102        case D:
103          tgt.setValue(org.hl7.fhir.r5.model.Timing.UnitsOfTime.D);
104          break;
105        case WK:
106          tgt.setValue(org.hl7.fhir.r5.model.Timing.UnitsOfTime.WK);
107          break;
108        case MO:
109          tgt.setValue(org.hl7.fhir.r5.model.Timing.UnitsOfTime.MO);
110          break;
111        case A:
112          tgt.setValue(org.hl7.fhir.r5.model.Timing.UnitsOfTime.A);
113          break;
114        default:
115          tgt.setValue(org.hl7.fhir.r5.model.Timing.UnitsOfTime.NULL);
116          break;
117      }
118    }
119    return tgt;
120  }
121
122  static public org.hl7.fhir.r4.model.Enumeration<org.hl7.fhir.r4.model.Timing.UnitsOfTime> convertUnitsOfTime(org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.Timing.UnitsOfTime> src) throws FHIRException {
123    if (src == null || src.isEmpty()) return null;
124    org.hl7.fhir.r4.model.Enumeration<org.hl7.fhir.r4.model.Timing.UnitsOfTime> tgt = new org.hl7.fhir.r4.model.Enumeration<>(new org.hl7.fhir.r4.model.Timing.UnitsOfTimeEnumFactory());
125    ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt);
126    if (src.getValue() == null) {
127      tgt.setValue(org.hl7.fhir.r4.model.Timing.UnitsOfTime.NULL);
128    } else {
129      switch (src.getValue()) {
130        case S:
131          tgt.setValue(org.hl7.fhir.r4.model.Timing.UnitsOfTime.S);
132          break;
133        case MIN:
134          tgt.setValue(org.hl7.fhir.r4.model.Timing.UnitsOfTime.MIN);
135          break;
136        case H:
137          tgt.setValue(org.hl7.fhir.r4.model.Timing.UnitsOfTime.H);
138          break;
139        case D:
140          tgt.setValue(org.hl7.fhir.r4.model.Timing.UnitsOfTime.D);
141          break;
142        case WK:
143          tgt.setValue(org.hl7.fhir.r4.model.Timing.UnitsOfTime.WK);
144          break;
145        case MO:
146          tgt.setValue(org.hl7.fhir.r4.model.Timing.UnitsOfTime.MO);
147          break;
148        case A:
149          tgt.setValue(org.hl7.fhir.r4.model.Timing.UnitsOfTime.A);
150          break;
151        default:
152          tgt.setValue(org.hl7.fhir.r4.model.Timing.UnitsOfTime.NULL);
153          break;
154      }
155    }
156    return tgt;
157  }
158
159  static public org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.Enumerations.DaysOfWeek> convertDayOfWeek(org.hl7.fhir.r4.model.Enumeration<org.hl7.fhir.r4.model.Timing.DayOfWeek> src) throws FHIRException {
160    if (src == null || src.isEmpty()) return null;
161    org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.Enumerations.DaysOfWeek> tgt = new org.hl7.fhir.r5.model.Enumeration<>(new org.hl7.fhir.r5.model.Enumerations.DaysOfWeekEnumFactory());
162    ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt);
163    if (src.getValue() == null) {
164      tgt.setValue(org.hl7.fhir.r5.model.Enumerations.DaysOfWeek.NULL);
165    } else {
166      switch (src.getValue()) {
167        case MON:
168          tgt.setValue(org.hl7.fhir.r5.model.Enumerations.DaysOfWeek.MON);
169          break;
170        case TUE:
171          tgt.setValue(org.hl7.fhir.r5.model.Enumerations.DaysOfWeek.TUE);
172          break;
173        case WED:
174          tgt.setValue(org.hl7.fhir.r5.model.Enumerations.DaysOfWeek.WED);
175          break;
176        case THU:
177          tgt.setValue(org.hl7.fhir.r5.model.Enumerations.DaysOfWeek.THU);
178          break;
179        case FRI:
180          tgt.setValue(org.hl7.fhir.r5.model.Enumerations.DaysOfWeek.FRI);
181          break;
182        case SAT:
183          tgt.setValue(org.hl7.fhir.r5.model.Enumerations.DaysOfWeek.SAT);
184          break;
185        case SUN:
186          tgt.setValue(org.hl7.fhir.r5.model.Enumerations.DaysOfWeek.SUN);
187          break;
188        default:
189          tgt.setValue(org.hl7.fhir.r5.model.Enumerations.DaysOfWeek.NULL);
190          break;
191      }
192    }
193    return tgt;
194  }
195
196  static public org.hl7.fhir.r4.model.Enumeration<org.hl7.fhir.r4.model.Timing.DayOfWeek> convertDayOfWeek(org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.Enumerations.DaysOfWeek> src) throws FHIRException {
197    if (src == null || src.isEmpty()) return null;
198    org.hl7.fhir.r4.model.Enumeration<org.hl7.fhir.r4.model.Timing.DayOfWeek> tgt = new org.hl7.fhir.r4.model.Enumeration<>(new org.hl7.fhir.r4.model.Timing.DayOfWeekEnumFactory());
199    ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt);
200    if (src.getValue() == null) {
201      tgt.setValue(org.hl7.fhir.r4.model.Timing.DayOfWeek.NULL);
202    } else {
203      switch (src.getValue()) {
204        case MON:
205          tgt.setValue(org.hl7.fhir.r4.model.Timing.DayOfWeek.MON);
206          break;
207        case TUE:
208          tgt.setValue(org.hl7.fhir.r4.model.Timing.DayOfWeek.TUE);
209          break;
210        case WED:
211          tgt.setValue(org.hl7.fhir.r4.model.Timing.DayOfWeek.WED);
212          break;
213        case THU:
214          tgt.setValue(org.hl7.fhir.r4.model.Timing.DayOfWeek.THU);
215          break;
216        case FRI:
217          tgt.setValue(org.hl7.fhir.r4.model.Timing.DayOfWeek.FRI);
218          break;
219        case SAT:
220          tgt.setValue(org.hl7.fhir.r4.model.Timing.DayOfWeek.SAT);
221          break;
222        case SUN:
223          tgt.setValue(org.hl7.fhir.r4.model.Timing.DayOfWeek.SUN);
224          break;
225        default:
226          tgt.setValue(org.hl7.fhir.r4.model.Timing.DayOfWeek.NULL);
227          break;
228      }
229    }
230    return tgt;
231  }
232
233  static public org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.Timing.EventTiming> convertEventTiming(org.hl7.fhir.r4.model.Enumeration<org.hl7.fhir.r4.model.Timing.EventTiming> src) throws FHIRException {
234    if (src == null || src.isEmpty()) return null;
235    org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.Timing.EventTiming> tgt = new org.hl7.fhir.r5.model.Enumeration<>(new org.hl7.fhir.r5.model.Timing.EventTimingEnumFactory());
236    ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt);
237    if (src.getValue() == null) {
238      tgt.setValue(org.hl7.fhir.r5.model.Timing.EventTiming.NULL);
239    } else {
240      switch (src.getValue()) {
241        case MORN:
242          tgt.setValue(org.hl7.fhir.r5.model.Timing.EventTiming.MORN);
243          break;
244        case MORN_EARLY:
245          tgt.setValue(org.hl7.fhir.r5.model.Timing.EventTiming.MORN_EARLY);
246          break;
247        case MORN_LATE:
248          tgt.setValue(org.hl7.fhir.r5.model.Timing.EventTiming.MORN_LATE);
249          break;
250        case NOON:
251          tgt.setValue(org.hl7.fhir.r5.model.Timing.EventTiming.NOON);
252          break;
253        case AFT:
254          tgt.setValue(org.hl7.fhir.r5.model.Timing.EventTiming.AFT);
255          break;
256        case AFT_EARLY:
257          tgt.setValue(org.hl7.fhir.r5.model.Timing.EventTiming.AFT_EARLY);
258          break;
259        case AFT_LATE:
260          tgt.setValue(org.hl7.fhir.r5.model.Timing.EventTiming.AFT_LATE);
261          break;
262        case EVE:
263          tgt.setValue(org.hl7.fhir.r5.model.Timing.EventTiming.EVE);
264          break;
265        case EVE_EARLY:
266          tgt.setValue(org.hl7.fhir.r5.model.Timing.EventTiming.EVE_EARLY);
267          break;
268        case EVE_LATE:
269          tgt.setValue(org.hl7.fhir.r5.model.Timing.EventTiming.EVE_LATE);
270          break;
271        case NIGHT:
272          tgt.setValue(org.hl7.fhir.r5.model.Timing.EventTiming.NIGHT);
273          break;
274        case PHS:
275          tgt.setValue(org.hl7.fhir.r5.model.Timing.EventTiming.PHS);
276          break;
277        case HS:
278          tgt.setValue(org.hl7.fhir.r5.model.Timing.EventTiming.HS);
279          break;
280        case WAKE:
281          tgt.setValue(org.hl7.fhir.r5.model.Timing.EventTiming.WAKE);
282          break;
283        case C:
284          tgt.setValue(org.hl7.fhir.r5.model.Timing.EventTiming.C);
285          break;
286        case CM:
287          tgt.setValue(org.hl7.fhir.r5.model.Timing.EventTiming.CM);
288          break;
289        case CD:
290          tgt.setValue(org.hl7.fhir.r5.model.Timing.EventTiming.CD);
291          break;
292        case CV:
293          tgt.setValue(org.hl7.fhir.r5.model.Timing.EventTiming.CV);
294          break;
295        case AC:
296          tgt.setValue(org.hl7.fhir.r5.model.Timing.EventTiming.AC);
297          break;
298        case ACM:
299          tgt.setValue(org.hl7.fhir.r5.model.Timing.EventTiming.ACM);
300          break;
301        case ACD:
302          tgt.setValue(org.hl7.fhir.r5.model.Timing.EventTiming.ACD);
303          break;
304        case ACV:
305          tgt.setValue(org.hl7.fhir.r5.model.Timing.EventTiming.ACV);
306          break;
307        case PC:
308          tgt.setValue(org.hl7.fhir.r5.model.Timing.EventTiming.PC);
309          break;
310        case PCM:
311          tgt.setValue(org.hl7.fhir.r5.model.Timing.EventTiming.PCM);
312          break;
313        case PCD:
314          tgt.setValue(org.hl7.fhir.r5.model.Timing.EventTiming.PCD);
315          break;
316        case PCV:
317          tgt.setValue(org.hl7.fhir.r5.model.Timing.EventTiming.PCV);
318          break;
319        default:
320          tgt.setValue(org.hl7.fhir.r5.model.Timing.EventTiming.NULL);
321          break;
322      }
323    }
324    return tgt;
325  }
326
327  static public org.hl7.fhir.r4.model.Enumeration<org.hl7.fhir.r4.model.Timing.EventTiming> convertEventTiming(org.hl7.fhir.r5.model.Enumeration<org.hl7.fhir.r5.model.Timing.EventTiming> src) throws FHIRException {
328    if (src == null || src.isEmpty()) return null;
329    org.hl7.fhir.r4.model.Enumeration<org.hl7.fhir.r4.model.Timing.EventTiming> tgt = new org.hl7.fhir.r4.model.Enumeration<>(new org.hl7.fhir.r4.model.Timing.EventTimingEnumFactory());
330    ConversionContext40_50.INSTANCE.getVersionConvertor_40_50().copyElement(src, tgt);
331    if (src.getValue() == null) {
332      tgt.setValue(org.hl7.fhir.r4.model.Timing.EventTiming.NULL);
333    } else {
334      switch (src.getValue()) {
335        case MORN:
336          tgt.setValue(org.hl7.fhir.r4.model.Timing.EventTiming.MORN);
337          break;
338        case MORN_EARLY:
339          tgt.setValue(org.hl7.fhir.r4.model.Timing.EventTiming.MORN_EARLY);
340          break;
341        case MORN_LATE:
342          tgt.setValue(org.hl7.fhir.r4.model.Timing.EventTiming.MORN_LATE);
343          break;
344        case NOON:
345          tgt.setValue(org.hl7.fhir.r4.model.Timing.EventTiming.NOON);
346          break;
347        case AFT:
348          tgt.setValue(org.hl7.fhir.r4.model.Timing.EventTiming.AFT);
349          break;
350        case AFT_EARLY:
351          tgt.setValue(org.hl7.fhir.r4.model.Timing.EventTiming.AFT_EARLY);
352          break;
353        case AFT_LATE:
354          tgt.setValue(org.hl7.fhir.r4.model.Timing.EventTiming.AFT_LATE);
355          break;
356        case EVE:
357          tgt.setValue(org.hl7.fhir.r4.model.Timing.EventTiming.EVE);
358          break;
359        case EVE_EARLY:
360          tgt.setValue(org.hl7.fhir.r4.model.Timing.EventTiming.EVE_EARLY);
361          break;
362        case EVE_LATE:
363          tgt.setValue(org.hl7.fhir.r4.model.Timing.EventTiming.EVE_LATE);
364          break;
365        case NIGHT:
366          tgt.setValue(org.hl7.fhir.r4.model.Timing.EventTiming.NIGHT);
367          break;
368        case PHS:
369          tgt.setValue(org.hl7.fhir.r4.model.Timing.EventTiming.PHS);
370          break;
371        case HS:
372          tgt.setValue(org.hl7.fhir.r4.model.Timing.EventTiming.HS);
373          break;
374        case WAKE:
375          tgt.setValue(org.hl7.fhir.r4.model.Timing.EventTiming.WAKE);
376          break;
377        case C:
378          tgt.setValue(org.hl7.fhir.r4.model.Timing.EventTiming.C);
379          break;
380        case CM:
381          tgt.setValue(org.hl7.fhir.r4.model.Timing.EventTiming.CM);
382          break;
383        case CD:
384          tgt.setValue(org.hl7.fhir.r4.model.Timing.EventTiming.CD);
385          break;
386        case CV:
387          tgt.setValue(org.hl7.fhir.r4.model.Timing.EventTiming.CV);
388          break;
389        case AC:
390          tgt.setValue(org.hl7.fhir.r4.model.Timing.EventTiming.AC);
391          break;
392        case ACM:
393          tgt.setValue(org.hl7.fhir.r4.model.Timing.EventTiming.ACM);
394          break;
395        case ACD:
396          tgt.setValue(org.hl7.fhir.r4.model.Timing.EventTiming.ACD);
397          break;
398        case ACV:
399          tgt.setValue(org.hl7.fhir.r4.model.Timing.EventTiming.ACV);
400          break;
401        case PC:
402          tgt.setValue(org.hl7.fhir.r4.model.Timing.EventTiming.PC);
403          break;
404        case PCM:
405          tgt.setValue(org.hl7.fhir.r4.model.Timing.EventTiming.PCM);
406          break;
407        case PCD:
408          tgt.setValue(org.hl7.fhir.r4.model.Timing.EventTiming.PCD);
409          break;
410        case PCV:
411          tgt.setValue(org.hl7.fhir.r4.model.Timing.EventTiming.PCV);
412          break;
413        default:
414          tgt.setValue(org.hl7.fhir.r4.model.Timing.EventTiming.NULL);
415          break;
416      }
417    }
418    return tgt;
419  }
420}