001/*
002 * This class is an auto-generated source file for a HAPI
003 * HL7 v2.x standard structure class.
004 *
005 * For more information, visit: http://hl7api.sourceforge.net/
006 * 
007 * The contents of this file are subject to the Mozilla Public License Version 1.1 
008 * (the "License"); you may not use this file except in compliance with the License. 
009 * You may obtain a copy of the License at http://www.mozilla.org/MPL/ 
010 * Software distributed under the License is distributed on an "AS IS" basis, 
011 * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the 
012 * specific language governing rights and limitations under the License. 
013 * 
014 * The Original Code is "[file_name]".  Description: 
015 * "[one_line_description]" 
016 * 
017 * The Initial Developer of the Original Code is University Health Network. Copyright (C) 
018 * 2012.  All Rights Reserved. 
019 * 
020 * Contributor(s): ______________________________________. 
021 * 
022 * Alternatively, the contents of this file may be used under the terms of the 
023 * GNU General Public License (the  "GPL"), in which case the provisions of the GPL are 
024 * applicable instead of those above.  If you wish to allow use of your version of this 
025 * file only under the terms of the GPL and not to allow others to use your version 
026 * of this file under the MPL, indicate your decision by deleting  the provisions above 
027 * and replace  them with the notice and other provisions required by the GPL License.  
028 * If you do not delete the provisions above, a recipient may use your version of 
029 * this file under either the MPL or the GPL. 
030 * 
031 */
032
033
034package ca.uhn.hl7v2.model.v27.segment;
035
036// import ca.uhn.hl7v2.model.v27.group.*;
037import ca.uhn.hl7v2.model.v27.datatype.*;
038import ca.uhn.hl7v2.HL7Exception;
039import ca.uhn.hl7v2.parser.ModelClassFactory;
040import ca.uhn.hl7v2.parser.DefaultModelClassFactory;
041import ca.uhn.hl7v2.model.AbstractMessage;
042import ca.uhn.hl7v2.model.Group;
043import ca.uhn.hl7v2.model.Type;
044import ca.uhn.hl7v2.model.AbstractSegment;
045import ca.uhn.hl7v2.model.Varies;
046
047
048/**
049 *<p>Represents an HL7 PV1 message segment (Patient Visit). 
050 * This segment has the following fields:</p>
051 * <ul>
052     * <li>PV1-1: Set ID - PV1 (SI) <b>optional </b>
053     * <li>PV1-2: Patient Class (CWE) <b> </b>
054     * <li>PV1-3: Assigned Patient Location (PL) <b>optional </b>
055     * <li>PV1-4: Admission Type (CWE) <b>optional </b>
056     * <li>PV1-5: Preadmit Number (CX) <b>optional </b>
057     * <li>PV1-6: Prior Patient Location (PL) <b>optional </b>
058     * <li>PV1-7: Attending Doctor (XCN) <b>optional repeating</b>
059     * <li>PV1-8: Referring Doctor (XCN) <b>optional repeating</b>
060     * <li>PV1-9: Consulting Doctor (XCN) <b>optional repeating</b>
061     * <li>PV1-10: Hospital Service (CWE) <b>optional </b>
062     * <li>PV1-11: Temporary Location (PL) <b>optional </b>
063     * <li>PV1-12: Preadmit Test Indicator (CWE) <b>optional </b>
064     * <li>PV1-13: Re-admission Indicator (CWE) <b>optional </b>
065     * <li>PV1-14: Admit Source (CWE) <b>optional </b>
066     * <li>PV1-15: Ambulatory Status (CWE) <b>optional repeating</b>
067     * <li>PV1-16: VIP Indicator (CWE) <b>optional </b>
068     * <li>PV1-17: Admitting Doctor (XCN) <b>optional repeating</b>
069     * <li>PV1-18: Patient Type (CWE) <b>optional </b>
070     * <li>PV1-19: Visit Number (CX) <b>optional </b>
071     * <li>PV1-20: Financial Class (FC) <b>optional repeating</b>
072     * <li>PV1-21: Charge Price Indicator (CWE) <b>optional </b>
073     * <li>PV1-22: Courtesy Code (CWE) <b>optional </b>
074     * <li>PV1-23: Credit Rating (CWE) <b>optional </b>
075     * <li>PV1-24: Contract Code (CWE) <b>optional repeating</b>
076     * <li>PV1-25: Contract Effective Date (DT) <b>optional repeating</b>
077     * <li>PV1-26: Contract Amount (NM) <b>optional repeating</b>
078     * <li>PV1-27: Contract Period (NM) <b>optional repeating</b>
079     * <li>PV1-28: Interest Code (CWE) <b>optional </b>
080     * <li>PV1-29: Transfer to Bad Debt Code (CWE) <b>optional </b>
081     * <li>PV1-30: Transfer to Bad Debt Date (DT) <b>optional </b>
082     * <li>PV1-31: Bad Debt Agency Code (CWE) <b>optional </b>
083     * <li>PV1-32: Bad Debt Transfer Amount (NM) <b>optional </b>
084     * <li>PV1-33: Bad Debt Recovery Amount (NM) <b>optional </b>
085     * <li>PV1-34: Delete Account Indicator (CWE) <b>optional </b>
086     * <li>PV1-35: Delete Account Date (DT) <b>optional </b>
087     * <li>PV1-36: Discharge Disposition (CWE) <b>optional </b>
088     * <li>PV1-37: Discharged to Location (DLD) <b>optional </b>
089     * <li>PV1-38: Diet Type (CWE) <b>optional </b>
090     * <li>PV1-39: Servicing Facility (CWE) <b>optional </b>
091     * <li>PV1-40: Bed Status (CWE) <b>optional </b>
092     * <li>PV1-41: Account Status (CWE) <b>optional </b>
093     * <li>PV1-42: Pending Location (PL) <b>optional </b>
094     * <li>PV1-43: Prior Temporary Location (PL) <b>optional </b>
095     * <li>PV1-44: Admit Date/Time (DTM) <b>optional </b>
096     * <li>PV1-45: Discharge Date/Time (DTM) <b>optional </b>
097     * <li>PV1-46: Current Patient Balance (NM) <b>optional </b>
098     * <li>PV1-47: Total Charges (NM) <b>optional </b>
099     * <li>PV1-48: Total Adjustments (NM) <b>optional </b>
100     * <li>PV1-49: Total Payments (NM) <b>optional </b>
101     * <li>PV1-50: Alternate Visit ID (CX) <b>optional </b>
102     * <li>PV1-51: Visit Indicator (CWE) <b>optional </b>
103     * <li>PV1-52: Other Healthcare Provider (NULLDT) <b>optional </b>
104     * <li>PV1-53: Service Episode Description (ST) <b>optional </b>
105     * <li>PV1-54: Service Episode Identifier (CX) <b>optional </b>
106 * </ul>
107 */
108@SuppressWarnings("unused")
109public class PV1 extends AbstractSegment {
110
111    /** 
112     * Creates a new PV1 segment
113     */
114    public PV1(Group parent, ModelClassFactory factory) {
115       super(parent, factory);
116       init(factory);
117    }
118
119    private void init(ModelClassFactory factory) {
120       try {
121                                  this.add(SI.class, false, 1, 4, new Object[]{ getMessage() }, "Set ID - PV1");
122                                  this.add(CWE.class, true, 1, 0, new Object[]{ getMessage() }, "Patient Class");
123                                  this.add(PL.class, false, 1, 0, new Object[]{ getMessage() }, "Assigned Patient Location");
124                                  this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Admission Type");
125                                  this.add(CX.class, false, 1, 0, new Object[]{ getMessage() }, "Preadmit Number");
126                                  this.add(PL.class, false, 1, 0, new Object[]{ getMessage() }, "Prior Patient Location");
127                                  this.add(XCN.class, false, 0, 0, new Object[]{ getMessage() }, "Attending Doctor");
128                                  this.add(XCN.class, false, 0, 0, new Object[]{ getMessage() }, "Referring Doctor");
129                                  this.add(XCN.class, false, 0, 0, new Object[]{ getMessage() }, "Consulting Doctor");
130                                  this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Hospital Service");
131                                  this.add(PL.class, false, 1, 0, new Object[]{ getMessage() }, "Temporary Location");
132                                  this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Preadmit Test Indicator");
133                                  this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Re-admission Indicator");
134                                  this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Admit Source");
135                                  this.add(CWE.class, false, 0, 0, new Object[]{ getMessage() }, "Ambulatory Status");
136                                  this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "VIP Indicator");
137                                  this.add(XCN.class, false, 0, 0, new Object[]{ getMessage() }, "Admitting Doctor");
138                                  this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Patient Type");
139                                  this.add(CX.class, false, 1, 0, new Object[]{ getMessage() }, "Visit Number");
140                                  this.add(FC.class, false, 0, 0, new Object[]{ getMessage() }, "Financial Class");
141                                  this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Charge Price Indicator");
142                                  this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Courtesy Code");
143                                  this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Credit Rating");
144                                  this.add(CWE.class, false, 0, 0, new Object[]{ getMessage() }, "Contract Code");
145                                  this.add(DT.class, false, 0, 0, new Object[]{ getMessage() }, "Contract Effective Date");
146                                  this.add(NM.class, false, 0, 0, new Object[]{ getMessage() }, "Contract Amount");
147                                  this.add(NM.class, false, 0, 0, new Object[]{ getMessage() }, "Contract Period");
148                                  this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Interest Code");
149                                  this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Transfer to Bad Debt Code");
150                                  this.add(DT.class, false, 1, 0, new Object[]{ getMessage() }, "Transfer to Bad Debt Date");
151                                  this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Bad Debt Agency Code");
152                                  this.add(NM.class, false, 1, 0, new Object[]{ getMessage() }, "Bad Debt Transfer Amount");
153                                  this.add(NM.class, false, 1, 0, new Object[]{ getMessage() }, "Bad Debt Recovery Amount");
154                                  this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Delete Account Indicator");
155                                  this.add(DT.class, false, 1, 0, new Object[]{ getMessage() }, "Delete Account Date");
156                                  this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Discharge Disposition");
157                                  this.add(DLD.class, false, 1, 0, new Object[]{ getMessage() }, "Discharged to Location");
158                                  this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Diet Type");
159                                  this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Servicing Facility");
160                                  this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Bed Status");
161                                  this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Account Status");
162                                  this.add(PL.class, false, 1, 0, new Object[]{ getMessage() }, "Pending Location");
163                                  this.add(PL.class, false, 1, 0, new Object[]{ getMessage() }, "Prior Temporary Location");
164                                  this.add(DTM.class, false, 1, 0, new Object[]{ getMessage() }, "Admit Date/Time");
165                                  this.add(DTM.class, false, 1, 0, new Object[]{ getMessage() }, "Discharge Date/Time");
166                                  this.add(NM.class, false, 1, 0, new Object[]{ getMessage() }, "Current Patient Balance");
167                                  this.add(NM.class, false, 1, 0, new Object[]{ getMessage() }, "Total Charges");
168                                  this.add(NM.class, false, 1, 0, new Object[]{ getMessage() }, "Total Adjustments");
169                                  this.add(NM.class, false, 1, 0, new Object[]{ getMessage() }, "Total Payments");
170                                  this.add(CX.class, false, 1, 0, new Object[]{ getMessage() }, "Alternate Visit ID");
171                                  this.add(CWE.class, false, 1, 0, new Object[]{ getMessage() }, "Visit Indicator");
172                                  this.add(NULLDT.class, false, 1, 0, new Object[]{ getMessage() }, "Other Healthcare Provider");
173                                  this.add(ST.class, false, 1, 0, new Object[]{ getMessage() }, "Service Episode Description");
174                                  this.add(CX.class, false, 1, 0, new Object[]{ getMessage() }, "Service Episode Identifier");
175       } catch(HL7Exception e) {
176          log.error("Unexpected error creating PV1 - this is probably a bug in the source code generator.", e);
177       }
178    }
179
180
181
182    /**
183     * Returns
184     * PV1-1: "Set ID - PV1" - creates it if necessary
185     */
186    public SI getSetIDPV1() { 
187                SI retVal = this.getTypedField(1, 0);
188                return retVal;
189    }
190    
191    /**
192     * Returns
193     * PV1-1: "Set ID - PV1" - creates it if necessary
194     */
195    public SI getPv11_SetIDPV1() { 
196                SI retVal = this.getTypedField(1, 0);
197                return retVal;
198    }
199
200
201
202    /**
203     * Returns
204     * PV1-2: "Patient Class" - creates it if necessary
205     */
206    public CWE getPatientClass() { 
207                CWE retVal = this.getTypedField(2, 0);
208                return retVal;
209    }
210    
211    /**
212     * Returns
213     * PV1-2: "Patient Class" - creates it if necessary
214     */
215    public CWE getPv12_PatientClass() { 
216                CWE retVal = this.getTypedField(2, 0);
217                return retVal;
218    }
219
220
221
222    /**
223     * Returns
224     * PV1-3: "Assigned Patient Location" - creates it if necessary
225     */
226    public PL getAssignedPatientLocation() { 
227                PL retVal = this.getTypedField(3, 0);
228                return retVal;
229    }
230    
231    /**
232     * Returns
233     * PV1-3: "Assigned Patient Location" - creates it if necessary
234     */
235    public PL getPv13_AssignedPatientLocation() { 
236                PL retVal = this.getTypedField(3, 0);
237                return retVal;
238    }
239
240
241
242    /**
243     * Returns
244     * PV1-4: "Admission Type" - creates it if necessary
245     */
246    public CWE getAdmissionType() { 
247                CWE retVal = this.getTypedField(4, 0);
248                return retVal;
249    }
250    
251    /**
252     * Returns
253     * PV1-4: "Admission Type" - creates it if necessary
254     */
255    public CWE getPv14_AdmissionType() { 
256                CWE retVal = this.getTypedField(4, 0);
257                return retVal;
258    }
259
260
261
262    /**
263     * Returns
264     * PV1-5: "Preadmit Number" - creates it if necessary
265     */
266    public CX getPreadmitNumber() { 
267                CX retVal = this.getTypedField(5, 0);
268                return retVal;
269    }
270    
271    /**
272     * Returns
273     * PV1-5: "Preadmit Number" - creates it if necessary
274     */
275    public CX getPv15_PreadmitNumber() { 
276                CX retVal = this.getTypedField(5, 0);
277                return retVal;
278    }
279
280
281
282    /**
283     * Returns
284     * PV1-6: "Prior Patient Location" - creates it if necessary
285     */
286    public PL getPriorPatientLocation() { 
287                PL retVal = this.getTypedField(6, 0);
288                return retVal;
289    }
290    
291    /**
292     * Returns
293     * PV1-6: "Prior Patient Location" - creates it if necessary
294     */
295    public PL getPv16_PriorPatientLocation() { 
296                PL retVal = this.getTypedField(6, 0);
297                return retVal;
298    }
299
300
301    /**
302     * Returns all repetitions of Attending Doctor (PV1-7).
303     */
304    public XCN[] getAttendingDoctor() {
305        XCN[] retVal = this.getTypedField(7, new XCN[0]);
306        return retVal;
307    }
308
309
310    /**
311     * Returns all repetitions of Attending Doctor (PV1-7).
312     */
313    public XCN[] getPv17_AttendingDoctor() {
314        XCN[] retVal = this.getTypedField(7, new XCN[0]);
315        return retVal;
316    }
317
318
319    /**
320     * Returns a count of the current number of repetitions of Attending Doctor (PV1-7).
321     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
322     * it will return zero.
323     */
324    public int getAttendingDoctorReps() {
325        return this.getReps(7);
326    }
327
328
329    /**
330     * Returns a specific repetition of
331     * PV1-7: "Attending Doctor" - creates it if necessary
332     *
333     * @param rep The repetition index (0-indexed)
334     */
335    public XCN getAttendingDoctor(int rep) { 
336                XCN retVal = this.getTypedField(7, rep);
337                return retVal;
338    }
339
340    /**
341     * Returns a specific repetition of
342     * PV1-7: "Attending Doctor" - creates it if necessary
343     *
344     * @param rep The repetition index (0-indexed)
345     */
346    public XCN getPv17_AttendingDoctor(int rep) { 
347                XCN retVal = this.getTypedField(7, rep);
348                return retVal;
349    }
350
351    /**
352     * Returns a count of the current number of repetitions of Attending Doctor (PV1-7).
353     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
354     * it will return zero.
355     */
356    public int getPv17_AttendingDoctorReps() {
357        return this.getReps(7);
358    }
359
360
361    /**
362     * Inserts a repetition of
363     * PV1-7: "Attending Doctor" at a specific index
364     *
365     * @param rep The repetition index (0-indexed)
366     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
367     */
368    public XCN insertAttendingDoctor(int rep) throws HL7Exception { 
369        return (XCN) super.insertRepetition(7, rep);
370    }
371
372
373    /**
374     * Inserts a repetition of
375     * PV1-7: "Attending Doctor" at a specific index
376     *
377     * @param rep The repetition index (0-indexed)
378     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
379     */
380    public XCN insertPv17_AttendingDoctor(int rep) throws HL7Exception { 
381        return (XCN) super.insertRepetition(7, rep);
382    }
383
384
385    /**
386     * Removes a repetition of
387     * PV1-7: "Attending Doctor" at a specific index
388     *
389     * @param rep The repetition index (0-indexed)
390     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
391     */
392    public XCN removeAttendingDoctor(int rep) throws HL7Exception { 
393        return (XCN) super.removeRepetition(7, rep);
394    }
395
396
397    /**
398     * Removes a repetition of
399     * PV1-7: "Attending Doctor" at a specific index
400     *
401     * @param rep The repetition index (0-indexed)
402     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
403     */
404    public XCN removePv17_AttendingDoctor(int rep) throws HL7Exception { 
405        return (XCN) super.removeRepetition(7, rep);
406    }
407
408
409
410    /**
411     * Returns all repetitions of Referring Doctor (PV1-8).
412     */
413    public XCN[] getReferringDoctor() {
414        XCN[] retVal = this.getTypedField(8, new XCN[0]);
415        return retVal;
416    }
417
418
419    /**
420     * Returns all repetitions of Referring Doctor (PV1-8).
421     */
422    public XCN[] getPv18_ReferringDoctor() {
423        XCN[] retVal = this.getTypedField(8, new XCN[0]);
424        return retVal;
425    }
426
427
428    /**
429     * Returns a count of the current number of repetitions of Referring Doctor (PV1-8).
430     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
431     * it will return zero.
432     */
433    public int getReferringDoctorReps() {
434        return this.getReps(8);
435    }
436
437
438    /**
439     * Returns a specific repetition of
440     * PV1-8: "Referring Doctor" - creates it if necessary
441     *
442     * @param rep The repetition index (0-indexed)
443     */
444    public XCN getReferringDoctor(int rep) { 
445                XCN retVal = this.getTypedField(8, rep);
446                return retVal;
447    }
448
449    /**
450     * Returns a specific repetition of
451     * PV1-8: "Referring Doctor" - creates it if necessary
452     *
453     * @param rep The repetition index (0-indexed)
454     */
455    public XCN getPv18_ReferringDoctor(int rep) { 
456                XCN retVal = this.getTypedField(8, rep);
457                return retVal;
458    }
459
460    /**
461     * Returns a count of the current number of repetitions of Referring Doctor (PV1-8).
462     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
463     * it will return zero.
464     */
465    public int getPv18_ReferringDoctorReps() {
466        return this.getReps(8);
467    }
468
469
470    /**
471     * Inserts a repetition of
472     * PV1-8: "Referring Doctor" at a specific index
473     *
474     * @param rep The repetition index (0-indexed)
475     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
476     */
477    public XCN insertReferringDoctor(int rep) throws HL7Exception { 
478        return (XCN) super.insertRepetition(8, rep);
479    }
480
481
482    /**
483     * Inserts a repetition of
484     * PV1-8: "Referring Doctor" at a specific index
485     *
486     * @param rep The repetition index (0-indexed)
487     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
488     */
489    public XCN insertPv18_ReferringDoctor(int rep) throws HL7Exception { 
490        return (XCN) super.insertRepetition(8, rep);
491    }
492
493
494    /**
495     * Removes a repetition of
496     * PV1-8: "Referring Doctor" at a specific index
497     *
498     * @param rep The repetition index (0-indexed)
499     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
500     */
501    public XCN removeReferringDoctor(int rep) throws HL7Exception { 
502        return (XCN) super.removeRepetition(8, rep);
503    }
504
505
506    /**
507     * Removes a repetition of
508     * PV1-8: "Referring Doctor" at a specific index
509     *
510     * @param rep The repetition index (0-indexed)
511     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
512     */
513    public XCN removePv18_ReferringDoctor(int rep) throws HL7Exception { 
514        return (XCN) super.removeRepetition(8, rep);
515    }
516
517
518
519    /**
520     * Returns all repetitions of Consulting Doctor (PV1-9).
521     */
522    public XCN[] getConsultingDoctor() {
523        XCN[] retVal = this.getTypedField(9, new XCN[0]);
524        return retVal;
525    }
526
527
528    /**
529     * Returns all repetitions of Consulting Doctor (PV1-9).
530     */
531    public XCN[] getPv19_ConsultingDoctor() {
532        XCN[] retVal = this.getTypedField(9, new XCN[0]);
533        return retVal;
534    }
535
536
537    /**
538     * Returns a count of the current number of repetitions of Consulting Doctor (PV1-9).
539     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
540     * it will return zero.
541     */
542    public int getConsultingDoctorReps() {
543        return this.getReps(9);
544    }
545
546
547    /**
548     * Returns a specific repetition of
549     * PV1-9: "Consulting Doctor" - creates it if necessary
550     *
551     * @param rep The repetition index (0-indexed)
552     */
553    public XCN getConsultingDoctor(int rep) { 
554                XCN retVal = this.getTypedField(9, rep);
555                return retVal;
556    }
557
558    /**
559     * Returns a specific repetition of
560     * PV1-9: "Consulting Doctor" - creates it if necessary
561     *
562     * @param rep The repetition index (0-indexed)
563     */
564    public XCN getPv19_ConsultingDoctor(int rep) { 
565                XCN retVal = this.getTypedField(9, rep);
566                return retVal;
567    }
568
569    /**
570     * Returns a count of the current number of repetitions of Consulting Doctor (PV1-9).
571     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
572     * it will return zero.
573     */
574    public int getPv19_ConsultingDoctorReps() {
575        return this.getReps(9);
576    }
577
578
579    /**
580     * Inserts a repetition of
581     * PV1-9: "Consulting Doctor" at a specific index
582     *
583     * @param rep The repetition index (0-indexed)
584     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
585     */
586    public XCN insertConsultingDoctor(int rep) throws HL7Exception { 
587        return (XCN) super.insertRepetition(9, rep);
588    }
589
590
591    /**
592     * Inserts a repetition of
593     * PV1-9: "Consulting Doctor" at a specific index
594     *
595     * @param rep The repetition index (0-indexed)
596     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
597     */
598    public XCN insertPv19_ConsultingDoctor(int rep) throws HL7Exception { 
599        return (XCN) super.insertRepetition(9, rep);
600    }
601
602
603    /**
604     * Removes a repetition of
605     * PV1-9: "Consulting Doctor" at a specific index
606     *
607     * @param rep The repetition index (0-indexed)
608     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
609     */
610    public XCN removeConsultingDoctor(int rep) throws HL7Exception { 
611        return (XCN) super.removeRepetition(9, rep);
612    }
613
614
615    /**
616     * Removes a repetition of
617     * PV1-9: "Consulting Doctor" at a specific index
618     *
619     * @param rep The repetition index (0-indexed)
620     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
621     */
622    public XCN removePv19_ConsultingDoctor(int rep) throws HL7Exception { 
623        return (XCN) super.removeRepetition(9, rep);
624    }
625
626
627
628
629    /**
630     * Returns
631     * PV1-10: "Hospital Service" - creates it if necessary
632     */
633    public CWE getHospitalService() { 
634                CWE retVal = this.getTypedField(10, 0);
635                return retVal;
636    }
637    
638    /**
639     * Returns
640     * PV1-10: "Hospital Service" - creates it if necessary
641     */
642    public CWE getPv110_HospitalService() { 
643                CWE retVal = this.getTypedField(10, 0);
644                return retVal;
645    }
646
647
648
649    /**
650     * Returns
651     * PV1-11: "Temporary Location" - creates it if necessary
652     */
653    public PL getTemporaryLocation() { 
654                PL retVal = this.getTypedField(11, 0);
655                return retVal;
656    }
657    
658    /**
659     * Returns
660     * PV1-11: "Temporary Location" - creates it if necessary
661     */
662    public PL getPv111_TemporaryLocation() { 
663                PL retVal = this.getTypedField(11, 0);
664                return retVal;
665    }
666
667
668
669    /**
670     * Returns
671     * PV1-12: "Preadmit Test Indicator" - creates it if necessary
672     */
673    public CWE getPreadmitTestIndicator() { 
674                CWE retVal = this.getTypedField(12, 0);
675                return retVal;
676    }
677    
678    /**
679     * Returns
680     * PV1-12: "Preadmit Test Indicator" - creates it if necessary
681     */
682    public CWE getPv112_PreadmitTestIndicator() { 
683                CWE retVal = this.getTypedField(12, 0);
684                return retVal;
685    }
686
687
688
689    /**
690     * Returns
691     * PV1-13: "Re-admission Indicator" - creates it if necessary
692     */
693    public CWE getReAdmissionIndicator() { 
694                CWE retVal = this.getTypedField(13, 0);
695                return retVal;
696    }
697    
698    /**
699     * Returns
700     * PV1-13: "Re-admission Indicator" - creates it if necessary
701     */
702    public CWE getPv113_ReAdmissionIndicator() { 
703                CWE retVal = this.getTypedField(13, 0);
704                return retVal;
705    }
706
707
708
709    /**
710     * Returns
711     * PV1-14: "Admit Source" - creates it if necessary
712     */
713    public CWE getAdmitSource() { 
714                CWE retVal = this.getTypedField(14, 0);
715                return retVal;
716    }
717    
718    /**
719     * Returns
720     * PV1-14: "Admit Source" - creates it if necessary
721     */
722    public CWE getPv114_AdmitSource() { 
723                CWE retVal = this.getTypedField(14, 0);
724                return retVal;
725    }
726
727
728    /**
729     * Returns all repetitions of Ambulatory Status (PV1-15).
730     */
731    public CWE[] getAmbulatoryStatus() {
732        CWE[] retVal = this.getTypedField(15, new CWE[0]);
733        return retVal;
734    }
735
736
737    /**
738     * Returns all repetitions of Ambulatory Status (PV1-15).
739     */
740    public CWE[] getPv115_AmbulatoryStatus() {
741        CWE[] retVal = this.getTypedField(15, new CWE[0]);
742        return retVal;
743    }
744
745
746    /**
747     * Returns a count of the current number of repetitions of Ambulatory Status (PV1-15).
748     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
749     * it will return zero.
750     */
751    public int getAmbulatoryStatusReps() {
752        return this.getReps(15);
753    }
754
755
756    /**
757     * Returns a specific repetition of
758     * PV1-15: "Ambulatory Status" - creates it if necessary
759     *
760     * @param rep The repetition index (0-indexed)
761     */
762    public CWE getAmbulatoryStatus(int rep) { 
763                CWE retVal = this.getTypedField(15, rep);
764                return retVal;
765    }
766
767    /**
768     * Returns a specific repetition of
769     * PV1-15: "Ambulatory Status" - creates it if necessary
770     *
771     * @param rep The repetition index (0-indexed)
772     */
773    public CWE getPv115_AmbulatoryStatus(int rep) { 
774                CWE retVal = this.getTypedField(15, rep);
775                return retVal;
776    }
777
778    /**
779     * Returns a count of the current number of repetitions of Ambulatory Status (PV1-15).
780     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
781     * it will return zero.
782     */
783    public int getPv115_AmbulatoryStatusReps() {
784        return this.getReps(15);
785    }
786
787
788    /**
789     * Inserts a repetition of
790     * PV1-15: "Ambulatory Status" at a specific index
791     *
792     * @param rep The repetition index (0-indexed)
793     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
794     */
795    public CWE insertAmbulatoryStatus(int rep) throws HL7Exception { 
796        return (CWE) super.insertRepetition(15, rep);
797    }
798
799
800    /**
801     * Inserts a repetition of
802     * PV1-15: "Ambulatory Status" at a specific index
803     *
804     * @param rep The repetition index (0-indexed)
805     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
806     */
807    public CWE insertPv115_AmbulatoryStatus(int rep) throws HL7Exception { 
808        return (CWE) super.insertRepetition(15, rep);
809    }
810
811
812    /**
813     * Removes a repetition of
814     * PV1-15: "Ambulatory Status" at a specific index
815     *
816     * @param rep The repetition index (0-indexed)
817     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
818     */
819    public CWE removeAmbulatoryStatus(int rep) throws HL7Exception { 
820        return (CWE) super.removeRepetition(15, rep);
821    }
822
823
824    /**
825     * Removes a repetition of
826     * PV1-15: "Ambulatory Status" at a specific index
827     *
828     * @param rep The repetition index (0-indexed)
829     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
830     */
831    public CWE removePv115_AmbulatoryStatus(int rep) throws HL7Exception { 
832        return (CWE) super.removeRepetition(15, rep);
833    }
834
835
836
837
838    /**
839     * Returns
840     * PV1-16: "VIP Indicator" - creates it if necessary
841     */
842    public CWE getVIPIndicator() { 
843                CWE retVal = this.getTypedField(16, 0);
844                return retVal;
845    }
846    
847    /**
848     * Returns
849     * PV1-16: "VIP Indicator" - creates it if necessary
850     */
851    public CWE getPv116_VIPIndicator() { 
852                CWE retVal = this.getTypedField(16, 0);
853                return retVal;
854    }
855
856
857    /**
858     * Returns all repetitions of Admitting Doctor (PV1-17).
859     */
860    public XCN[] getAdmittingDoctor() {
861        XCN[] retVal = this.getTypedField(17, new XCN[0]);
862        return retVal;
863    }
864
865
866    /**
867     * Returns all repetitions of Admitting Doctor (PV1-17).
868     */
869    public XCN[] getPv117_AdmittingDoctor() {
870        XCN[] retVal = this.getTypedField(17, new XCN[0]);
871        return retVal;
872    }
873
874
875    /**
876     * Returns a count of the current number of repetitions of Admitting Doctor (PV1-17).
877     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
878     * it will return zero.
879     */
880    public int getAdmittingDoctorReps() {
881        return this.getReps(17);
882    }
883
884
885    /**
886     * Returns a specific repetition of
887     * PV1-17: "Admitting Doctor" - creates it if necessary
888     *
889     * @param rep The repetition index (0-indexed)
890     */
891    public XCN getAdmittingDoctor(int rep) { 
892                XCN retVal = this.getTypedField(17, rep);
893                return retVal;
894    }
895
896    /**
897     * Returns a specific repetition of
898     * PV1-17: "Admitting Doctor" - creates it if necessary
899     *
900     * @param rep The repetition index (0-indexed)
901     */
902    public XCN getPv117_AdmittingDoctor(int rep) { 
903                XCN retVal = this.getTypedField(17, rep);
904                return retVal;
905    }
906
907    /**
908     * Returns a count of the current number of repetitions of Admitting Doctor (PV1-17).
909     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
910     * it will return zero.
911     */
912    public int getPv117_AdmittingDoctorReps() {
913        return this.getReps(17);
914    }
915
916
917    /**
918     * Inserts a repetition of
919     * PV1-17: "Admitting Doctor" at a specific index
920     *
921     * @param rep The repetition index (0-indexed)
922     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
923     */
924    public XCN insertAdmittingDoctor(int rep) throws HL7Exception { 
925        return (XCN) super.insertRepetition(17, rep);
926    }
927
928
929    /**
930     * Inserts a repetition of
931     * PV1-17: "Admitting Doctor" at a specific index
932     *
933     * @param rep The repetition index (0-indexed)
934     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
935     */
936    public XCN insertPv117_AdmittingDoctor(int rep) throws HL7Exception { 
937        return (XCN) super.insertRepetition(17, rep);
938    }
939
940
941    /**
942     * Removes a repetition of
943     * PV1-17: "Admitting Doctor" at a specific index
944     *
945     * @param rep The repetition index (0-indexed)
946     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
947     */
948    public XCN removeAdmittingDoctor(int rep) throws HL7Exception { 
949        return (XCN) super.removeRepetition(17, rep);
950    }
951
952
953    /**
954     * Removes a repetition of
955     * PV1-17: "Admitting Doctor" at a specific index
956     *
957     * @param rep The repetition index (0-indexed)
958     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
959     */
960    public XCN removePv117_AdmittingDoctor(int rep) throws HL7Exception { 
961        return (XCN) super.removeRepetition(17, rep);
962    }
963
964
965
966
967    /**
968     * Returns
969     * PV1-18: "Patient Type" - creates it if necessary
970     */
971    public CWE getPatientType() { 
972                CWE retVal = this.getTypedField(18, 0);
973                return retVal;
974    }
975    
976    /**
977     * Returns
978     * PV1-18: "Patient Type" - creates it if necessary
979     */
980    public CWE getPv118_PatientType() { 
981                CWE retVal = this.getTypedField(18, 0);
982                return retVal;
983    }
984
985
986
987    /**
988     * Returns
989     * PV1-19: "Visit Number" - creates it if necessary
990     */
991    public CX getVisitNumber() { 
992                CX retVal = this.getTypedField(19, 0);
993                return retVal;
994    }
995    
996    /**
997     * Returns
998     * PV1-19: "Visit Number" - creates it if necessary
999     */
1000    public CX getPv119_VisitNumber() { 
1001                CX retVal = this.getTypedField(19, 0);
1002                return retVal;
1003    }
1004
1005
1006    /**
1007     * Returns all repetitions of Financial Class (PV1-20).
1008     */
1009    public FC[] getFinancialClass() {
1010        FC[] retVal = this.getTypedField(20, new FC[0]);
1011        return retVal;
1012    }
1013
1014
1015    /**
1016     * Returns all repetitions of Financial Class (PV1-20).
1017     */
1018    public FC[] getPv120_FinancialClass() {
1019        FC[] retVal = this.getTypedField(20, new FC[0]);
1020        return retVal;
1021    }
1022
1023
1024    /**
1025     * Returns a count of the current number of repetitions of Financial Class (PV1-20).
1026     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1027     * it will return zero.
1028     */
1029    public int getFinancialClassReps() {
1030        return this.getReps(20);
1031    }
1032
1033
1034    /**
1035     * Returns a specific repetition of
1036     * PV1-20: "Financial Class" - creates it if necessary
1037     *
1038     * @param rep The repetition index (0-indexed)
1039     */
1040    public FC getFinancialClass(int rep) { 
1041                FC retVal = this.getTypedField(20, rep);
1042                return retVal;
1043    }
1044
1045    /**
1046     * Returns a specific repetition of
1047     * PV1-20: "Financial Class" - creates it if necessary
1048     *
1049     * @param rep The repetition index (0-indexed)
1050     */
1051    public FC getPv120_FinancialClass(int rep) { 
1052                FC retVal = this.getTypedField(20, rep);
1053                return retVal;
1054    }
1055
1056    /**
1057     * Returns a count of the current number of repetitions of Financial Class (PV1-20).
1058     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1059     * it will return zero.
1060     */
1061    public int getPv120_FinancialClassReps() {
1062        return this.getReps(20);
1063    }
1064
1065
1066    /**
1067     * Inserts a repetition of
1068     * PV1-20: "Financial Class" at a specific index
1069     *
1070     * @param rep The repetition index (0-indexed)
1071     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1072     */
1073    public FC insertFinancialClass(int rep) throws HL7Exception { 
1074        return (FC) super.insertRepetition(20, rep);
1075    }
1076
1077
1078    /**
1079     * Inserts a repetition of
1080     * PV1-20: "Financial Class" at a specific index
1081     *
1082     * @param rep The repetition index (0-indexed)
1083     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1084     */
1085    public FC insertPv120_FinancialClass(int rep) throws HL7Exception { 
1086        return (FC) super.insertRepetition(20, rep);
1087    }
1088
1089
1090    /**
1091     * Removes a repetition of
1092     * PV1-20: "Financial Class" at a specific index
1093     *
1094     * @param rep The repetition index (0-indexed)
1095     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1096     */
1097    public FC removeFinancialClass(int rep) throws HL7Exception { 
1098        return (FC) super.removeRepetition(20, rep);
1099    }
1100
1101
1102    /**
1103     * Removes a repetition of
1104     * PV1-20: "Financial Class" at a specific index
1105     *
1106     * @param rep The repetition index (0-indexed)
1107     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1108     */
1109    public FC removePv120_FinancialClass(int rep) throws HL7Exception { 
1110        return (FC) super.removeRepetition(20, rep);
1111    }
1112
1113
1114
1115
1116    /**
1117     * Returns
1118     * PV1-21: "Charge Price Indicator" - creates it if necessary
1119     */
1120    public CWE getChargePriceIndicator() { 
1121                CWE retVal = this.getTypedField(21, 0);
1122                return retVal;
1123    }
1124    
1125    /**
1126     * Returns
1127     * PV1-21: "Charge Price Indicator" - creates it if necessary
1128     */
1129    public CWE getPv121_ChargePriceIndicator() { 
1130                CWE retVal = this.getTypedField(21, 0);
1131                return retVal;
1132    }
1133
1134
1135
1136    /**
1137     * Returns
1138     * PV1-22: "Courtesy Code" - creates it if necessary
1139     */
1140    public CWE getCourtesyCode() { 
1141                CWE retVal = this.getTypedField(22, 0);
1142                return retVal;
1143    }
1144    
1145    /**
1146     * Returns
1147     * PV1-22: "Courtesy Code" - creates it if necessary
1148     */
1149    public CWE getPv122_CourtesyCode() { 
1150                CWE retVal = this.getTypedField(22, 0);
1151                return retVal;
1152    }
1153
1154
1155
1156    /**
1157     * Returns
1158     * PV1-23: "Credit Rating" - creates it if necessary
1159     */
1160    public CWE getCreditRating() { 
1161                CWE retVal = this.getTypedField(23, 0);
1162                return retVal;
1163    }
1164    
1165    /**
1166     * Returns
1167     * PV1-23: "Credit Rating" - creates it if necessary
1168     */
1169    public CWE getPv123_CreditRating() { 
1170                CWE retVal = this.getTypedField(23, 0);
1171                return retVal;
1172    }
1173
1174
1175    /**
1176     * Returns all repetitions of Contract Code (PV1-24).
1177     */
1178    public CWE[] getContractCode() {
1179        CWE[] retVal = this.getTypedField(24, new CWE[0]);
1180        return retVal;
1181    }
1182
1183
1184    /**
1185     * Returns all repetitions of Contract Code (PV1-24).
1186     */
1187    public CWE[] getPv124_ContractCode() {
1188        CWE[] retVal = this.getTypedField(24, new CWE[0]);
1189        return retVal;
1190    }
1191
1192
1193    /**
1194     * Returns a count of the current number of repetitions of Contract Code (PV1-24).
1195     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1196     * it will return zero.
1197     */
1198    public int getContractCodeReps() {
1199        return this.getReps(24);
1200    }
1201
1202
1203    /**
1204     * Returns a specific repetition of
1205     * PV1-24: "Contract Code" - creates it if necessary
1206     *
1207     * @param rep The repetition index (0-indexed)
1208     */
1209    public CWE getContractCode(int rep) { 
1210                CWE retVal = this.getTypedField(24, rep);
1211                return retVal;
1212    }
1213
1214    /**
1215     * Returns a specific repetition of
1216     * PV1-24: "Contract Code" - creates it if necessary
1217     *
1218     * @param rep The repetition index (0-indexed)
1219     */
1220    public CWE getPv124_ContractCode(int rep) { 
1221                CWE retVal = this.getTypedField(24, rep);
1222                return retVal;
1223    }
1224
1225    /**
1226     * Returns a count of the current number of repetitions of Contract Code (PV1-24).
1227     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1228     * it will return zero.
1229     */
1230    public int getPv124_ContractCodeReps() {
1231        return this.getReps(24);
1232    }
1233
1234
1235    /**
1236     * Inserts a repetition of
1237     * PV1-24: "Contract Code" at a specific index
1238     *
1239     * @param rep The repetition index (0-indexed)
1240     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1241     */
1242    public CWE insertContractCode(int rep) throws HL7Exception { 
1243        return (CWE) super.insertRepetition(24, rep);
1244    }
1245
1246
1247    /**
1248     * Inserts a repetition of
1249     * PV1-24: "Contract Code" at a specific index
1250     *
1251     * @param rep The repetition index (0-indexed)
1252     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1253     */
1254    public CWE insertPv124_ContractCode(int rep) throws HL7Exception { 
1255        return (CWE) super.insertRepetition(24, rep);
1256    }
1257
1258
1259    /**
1260     * Removes a repetition of
1261     * PV1-24: "Contract Code" at a specific index
1262     *
1263     * @param rep The repetition index (0-indexed)
1264     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1265     */
1266    public CWE removeContractCode(int rep) throws HL7Exception { 
1267        return (CWE) super.removeRepetition(24, rep);
1268    }
1269
1270
1271    /**
1272     * Removes a repetition of
1273     * PV1-24: "Contract Code" at a specific index
1274     *
1275     * @param rep The repetition index (0-indexed)
1276     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1277     */
1278    public CWE removePv124_ContractCode(int rep) throws HL7Exception { 
1279        return (CWE) super.removeRepetition(24, rep);
1280    }
1281
1282
1283
1284    /**
1285     * Returns all repetitions of Contract Effective Date (PV1-25).
1286     */
1287    public DT[] getContractEffectiveDate() {
1288        DT[] retVal = this.getTypedField(25, new DT[0]);
1289        return retVal;
1290    }
1291
1292
1293    /**
1294     * Returns all repetitions of Contract Effective Date (PV1-25).
1295     */
1296    public DT[] getPv125_ContractEffectiveDate() {
1297        DT[] retVal = this.getTypedField(25, new DT[0]);
1298        return retVal;
1299    }
1300
1301
1302    /**
1303     * Returns a count of the current number of repetitions of Contract Effective Date (PV1-25).
1304     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1305     * it will return zero.
1306     */
1307    public int getContractEffectiveDateReps() {
1308        return this.getReps(25);
1309    }
1310
1311
1312    /**
1313     * Returns a specific repetition of
1314     * PV1-25: "Contract Effective Date" - creates it if necessary
1315     *
1316     * @param rep The repetition index (0-indexed)
1317     */
1318    public DT getContractEffectiveDate(int rep) { 
1319                DT retVal = this.getTypedField(25, rep);
1320                return retVal;
1321    }
1322
1323    /**
1324     * Returns a specific repetition of
1325     * PV1-25: "Contract Effective Date" - creates it if necessary
1326     *
1327     * @param rep The repetition index (0-indexed)
1328     */
1329    public DT getPv125_ContractEffectiveDate(int rep) { 
1330                DT retVal = this.getTypedField(25, rep);
1331                return retVal;
1332    }
1333
1334    /**
1335     * Returns a count of the current number of repetitions of Contract Effective Date (PV1-25).
1336     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1337     * it will return zero.
1338     */
1339    public int getPv125_ContractEffectiveDateReps() {
1340        return this.getReps(25);
1341    }
1342
1343
1344    /**
1345     * Inserts a repetition of
1346     * PV1-25: "Contract Effective Date" at a specific index
1347     *
1348     * @param rep The repetition index (0-indexed)
1349     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1350     */
1351    public DT insertContractEffectiveDate(int rep) throws HL7Exception { 
1352        return (DT) super.insertRepetition(25, rep);
1353    }
1354
1355
1356    /**
1357     * Inserts a repetition of
1358     * PV1-25: "Contract Effective Date" at a specific index
1359     *
1360     * @param rep The repetition index (0-indexed)
1361     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1362     */
1363    public DT insertPv125_ContractEffectiveDate(int rep) throws HL7Exception { 
1364        return (DT) super.insertRepetition(25, rep);
1365    }
1366
1367
1368    /**
1369     * Removes a repetition of
1370     * PV1-25: "Contract Effective Date" at a specific index
1371     *
1372     * @param rep The repetition index (0-indexed)
1373     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1374     */
1375    public DT removeContractEffectiveDate(int rep) throws HL7Exception { 
1376        return (DT) super.removeRepetition(25, rep);
1377    }
1378
1379
1380    /**
1381     * Removes a repetition of
1382     * PV1-25: "Contract Effective Date" at a specific index
1383     *
1384     * @param rep The repetition index (0-indexed)
1385     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1386     */
1387    public DT removePv125_ContractEffectiveDate(int rep) throws HL7Exception { 
1388        return (DT) super.removeRepetition(25, rep);
1389    }
1390
1391
1392
1393    /**
1394     * Returns all repetitions of Contract Amount (PV1-26).
1395     */
1396    public NM[] getContractAmount() {
1397        NM[] retVal = this.getTypedField(26, new NM[0]);
1398        return retVal;
1399    }
1400
1401
1402    /**
1403     * Returns all repetitions of Contract Amount (PV1-26).
1404     */
1405    public NM[] getPv126_ContractAmount() {
1406        NM[] retVal = this.getTypedField(26, new NM[0]);
1407        return retVal;
1408    }
1409
1410
1411    /**
1412     * Returns a count of the current number of repetitions of Contract Amount (PV1-26).
1413     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1414     * it will return zero.
1415     */
1416    public int getContractAmountReps() {
1417        return this.getReps(26);
1418    }
1419
1420
1421    /**
1422     * Returns a specific repetition of
1423     * PV1-26: "Contract Amount" - creates it if necessary
1424     *
1425     * @param rep The repetition index (0-indexed)
1426     */
1427    public NM getContractAmount(int rep) { 
1428                NM retVal = this.getTypedField(26, rep);
1429                return retVal;
1430    }
1431
1432    /**
1433     * Returns a specific repetition of
1434     * PV1-26: "Contract Amount" - creates it if necessary
1435     *
1436     * @param rep The repetition index (0-indexed)
1437     */
1438    public NM getPv126_ContractAmount(int rep) { 
1439                NM retVal = this.getTypedField(26, rep);
1440                return retVal;
1441    }
1442
1443    /**
1444     * Returns a count of the current number of repetitions of Contract Amount (PV1-26).
1445     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1446     * it will return zero.
1447     */
1448    public int getPv126_ContractAmountReps() {
1449        return this.getReps(26);
1450    }
1451
1452
1453    /**
1454     * Inserts a repetition of
1455     * PV1-26: "Contract Amount" at a specific index
1456     *
1457     * @param rep The repetition index (0-indexed)
1458     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1459     */
1460    public NM insertContractAmount(int rep) throws HL7Exception { 
1461        return (NM) super.insertRepetition(26, rep);
1462    }
1463
1464
1465    /**
1466     * Inserts a repetition of
1467     * PV1-26: "Contract Amount" at a specific index
1468     *
1469     * @param rep The repetition index (0-indexed)
1470     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1471     */
1472    public NM insertPv126_ContractAmount(int rep) throws HL7Exception { 
1473        return (NM) super.insertRepetition(26, rep);
1474    }
1475
1476
1477    /**
1478     * Removes a repetition of
1479     * PV1-26: "Contract Amount" at a specific index
1480     *
1481     * @param rep The repetition index (0-indexed)
1482     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1483     */
1484    public NM removeContractAmount(int rep) throws HL7Exception { 
1485        return (NM) super.removeRepetition(26, rep);
1486    }
1487
1488
1489    /**
1490     * Removes a repetition of
1491     * PV1-26: "Contract Amount" at a specific index
1492     *
1493     * @param rep The repetition index (0-indexed)
1494     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1495     */
1496    public NM removePv126_ContractAmount(int rep) throws HL7Exception { 
1497        return (NM) super.removeRepetition(26, rep);
1498    }
1499
1500
1501
1502    /**
1503     * Returns all repetitions of Contract Period (PV1-27).
1504     */
1505    public NM[] getContractPeriod() {
1506        NM[] retVal = this.getTypedField(27, new NM[0]);
1507        return retVal;
1508    }
1509
1510
1511    /**
1512     * Returns all repetitions of Contract Period (PV1-27).
1513     */
1514    public NM[] getPv127_ContractPeriod() {
1515        NM[] retVal = this.getTypedField(27, new NM[0]);
1516        return retVal;
1517    }
1518
1519
1520    /**
1521     * Returns a count of the current number of repetitions of Contract Period (PV1-27).
1522     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1523     * it will return zero.
1524     */
1525    public int getContractPeriodReps() {
1526        return this.getReps(27);
1527    }
1528
1529
1530    /**
1531     * Returns a specific repetition of
1532     * PV1-27: "Contract Period" - creates it if necessary
1533     *
1534     * @param rep The repetition index (0-indexed)
1535     */
1536    public NM getContractPeriod(int rep) { 
1537                NM retVal = this.getTypedField(27, rep);
1538                return retVal;
1539    }
1540
1541    /**
1542     * Returns a specific repetition of
1543     * PV1-27: "Contract Period" - creates it if necessary
1544     *
1545     * @param rep The repetition index (0-indexed)
1546     */
1547    public NM getPv127_ContractPeriod(int rep) { 
1548                NM retVal = this.getTypedField(27, rep);
1549                return retVal;
1550    }
1551
1552    /**
1553     * Returns a count of the current number of repetitions of Contract Period (PV1-27).
1554     * This method does not create a repetition, so if no repetitions have currently been defined or accessed,
1555     * it will return zero.
1556     */
1557    public int getPv127_ContractPeriodReps() {
1558        return this.getReps(27);
1559    }
1560
1561
1562    /**
1563     * Inserts a repetition of
1564     * PV1-27: "Contract Period" at a specific index
1565     *
1566     * @param rep The repetition index (0-indexed)
1567     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1568     */
1569    public NM insertContractPeriod(int rep) throws HL7Exception { 
1570        return (NM) super.insertRepetition(27, rep);
1571    }
1572
1573
1574    /**
1575     * Inserts a repetition of
1576     * PV1-27: "Contract Period" at a specific index
1577     *
1578     * @param rep The repetition index (0-indexed)
1579     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1580     */
1581    public NM insertPv127_ContractPeriod(int rep) throws HL7Exception { 
1582        return (NM) super.insertRepetition(27, rep);
1583    }
1584
1585
1586    /**
1587     * Removes a repetition of
1588     * PV1-27: "Contract Period" at a specific index
1589     *
1590     * @param rep The repetition index (0-indexed)
1591     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1592     */
1593    public NM removeContractPeriod(int rep) throws HL7Exception { 
1594        return (NM) super.removeRepetition(27, rep);
1595    }
1596
1597
1598    /**
1599     * Removes a repetition of
1600     * PV1-27: "Contract Period" at a specific index
1601     *
1602     * @param rep The repetition index (0-indexed)
1603     * @throws HL7Exception If the rep is invalid (below 0, or too high for the allowable repetitions)
1604     */
1605    public NM removePv127_ContractPeriod(int rep) throws HL7Exception { 
1606        return (NM) super.removeRepetition(27, rep);
1607    }
1608
1609
1610
1611
1612    /**
1613     * Returns
1614     * PV1-28: "Interest Code" - creates it if necessary
1615     */
1616    public CWE getInterestCode() { 
1617                CWE retVal = this.getTypedField(28, 0);
1618                return retVal;
1619    }
1620    
1621    /**
1622     * Returns
1623     * PV1-28: "Interest Code" - creates it if necessary
1624     */
1625    public CWE getPv128_InterestCode() { 
1626                CWE retVal = this.getTypedField(28, 0);
1627                return retVal;
1628    }
1629
1630
1631
1632    /**
1633     * Returns
1634     * PV1-29: "Transfer to Bad Debt Code" - creates it if necessary
1635     */
1636    public CWE getTransferToBadDebtCode() { 
1637                CWE retVal = this.getTypedField(29, 0);
1638                return retVal;
1639    }
1640    
1641    /**
1642     * Returns
1643     * PV1-29: "Transfer to Bad Debt Code" - creates it if necessary
1644     */
1645    public CWE getPv129_TransferToBadDebtCode() { 
1646                CWE retVal = this.getTypedField(29, 0);
1647                return retVal;
1648    }
1649
1650
1651
1652    /**
1653     * Returns
1654     * PV1-30: "Transfer to Bad Debt Date" - creates it if necessary
1655     */
1656    public DT getTransferToBadDebtDate() { 
1657                DT retVal = this.getTypedField(30, 0);
1658                return retVal;
1659    }
1660    
1661    /**
1662     * Returns
1663     * PV1-30: "Transfer to Bad Debt Date" - creates it if necessary
1664     */
1665    public DT getPv130_TransferToBadDebtDate() { 
1666                DT retVal = this.getTypedField(30, 0);
1667                return retVal;
1668    }
1669
1670
1671
1672    /**
1673     * Returns
1674     * PV1-31: "Bad Debt Agency Code" - creates it if necessary
1675     */
1676    public CWE getBadDebtAgencyCode() { 
1677                CWE retVal = this.getTypedField(31, 0);
1678                return retVal;
1679    }
1680    
1681    /**
1682     * Returns
1683     * PV1-31: "Bad Debt Agency Code" - creates it if necessary
1684     */
1685    public CWE getPv131_BadDebtAgencyCode() { 
1686                CWE retVal = this.getTypedField(31, 0);
1687                return retVal;
1688    }
1689
1690
1691
1692    /**
1693     * Returns
1694     * PV1-32: "Bad Debt Transfer Amount" - creates it if necessary
1695     */
1696    public NM getBadDebtTransferAmount() { 
1697                NM retVal = this.getTypedField(32, 0);
1698                return retVal;
1699    }
1700    
1701    /**
1702     * Returns
1703     * PV1-32: "Bad Debt Transfer Amount" - creates it if necessary
1704     */
1705    public NM getPv132_BadDebtTransferAmount() { 
1706                NM retVal = this.getTypedField(32, 0);
1707                return retVal;
1708    }
1709
1710
1711
1712    /**
1713     * Returns
1714     * PV1-33: "Bad Debt Recovery Amount" - creates it if necessary
1715     */
1716    public NM getBadDebtRecoveryAmount() { 
1717                NM retVal = this.getTypedField(33, 0);
1718                return retVal;
1719    }
1720    
1721    /**
1722     * Returns
1723     * PV1-33: "Bad Debt Recovery Amount" - creates it if necessary
1724     */
1725    public NM getPv133_BadDebtRecoveryAmount() { 
1726                NM retVal = this.getTypedField(33, 0);
1727                return retVal;
1728    }
1729
1730
1731
1732    /**
1733     * Returns
1734     * PV1-34: "Delete Account Indicator" - creates it if necessary
1735     */
1736    public CWE getDeleteAccountIndicator() { 
1737                CWE retVal = this.getTypedField(34, 0);
1738                return retVal;
1739    }
1740    
1741    /**
1742     * Returns
1743     * PV1-34: "Delete Account Indicator" - creates it if necessary
1744     */
1745    public CWE getPv134_DeleteAccountIndicator() { 
1746                CWE retVal = this.getTypedField(34, 0);
1747                return retVal;
1748    }
1749
1750
1751
1752    /**
1753     * Returns
1754     * PV1-35: "Delete Account Date" - creates it if necessary
1755     */
1756    public DT getDeleteAccountDate() { 
1757                DT retVal = this.getTypedField(35, 0);
1758                return retVal;
1759    }
1760    
1761    /**
1762     * Returns
1763     * PV1-35: "Delete Account Date" - creates it if necessary
1764     */
1765    public DT getPv135_DeleteAccountDate() { 
1766                DT retVal = this.getTypedField(35, 0);
1767                return retVal;
1768    }
1769
1770
1771
1772    /**
1773     * Returns
1774     * PV1-36: "Discharge Disposition" - creates it if necessary
1775     */
1776    public CWE getDischargeDisposition() { 
1777                CWE retVal = this.getTypedField(36, 0);
1778                return retVal;
1779    }
1780    
1781    /**
1782     * Returns
1783     * PV1-36: "Discharge Disposition" - creates it if necessary
1784     */
1785    public CWE getPv136_DischargeDisposition() { 
1786                CWE retVal = this.getTypedField(36, 0);
1787                return retVal;
1788    }
1789
1790
1791
1792    /**
1793     * Returns
1794     * PV1-37: "Discharged to Location" - creates it if necessary
1795     */
1796    public DLD getDischargedToLocation() { 
1797                DLD retVal = this.getTypedField(37, 0);
1798                return retVal;
1799    }
1800    
1801    /**
1802     * Returns
1803     * PV1-37: "Discharged to Location" - creates it if necessary
1804     */
1805    public DLD getPv137_DischargedToLocation() { 
1806                DLD retVal = this.getTypedField(37, 0);
1807                return retVal;
1808    }
1809
1810
1811
1812    /**
1813     * Returns
1814     * PV1-38: "Diet Type" - creates it if necessary
1815     */
1816    public CWE getDietType() { 
1817                CWE retVal = this.getTypedField(38, 0);
1818                return retVal;
1819    }
1820    
1821    /**
1822     * Returns
1823     * PV1-38: "Diet Type" - creates it if necessary
1824     */
1825    public CWE getPv138_DietType() { 
1826                CWE retVal = this.getTypedField(38, 0);
1827                return retVal;
1828    }
1829
1830
1831
1832    /**
1833     * Returns
1834     * PV1-39: "Servicing Facility" - creates it if necessary
1835     */
1836    public CWE getServicingFacility() { 
1837                CWE retVal = this.getTypedField(39, 0);
1838                return retVal;
1839    }
1840    
1841    /**
1842     * Returns
1843     * PV1-39: "Servicing Facility" - creates it if necessary
1844     */
1845    public CWE getPv139_ServicingFacility() { 
1846                CWE retVal = this.getTypedField(39, 0);
1847                return retVal;
1848    }
1849
1850
1851
1852    /**
1853     * Returns
1854     * PV1-40: "Bed Status" - creates it if necessary
1855     */
1856    public CWE getBedStatus() { 
1857                CWE retVal = this.getTypedField(40, 0);
1858                return retVal;
1859    }
1860    
1861    /**
1862     * Returns
1863     * PV1-40: "Bed Status" - creates it if necessary
1864     */
1865    public CWE getPv140_BedStatus() { 
1866                CWE retVal = this.getTypedField(40, 0);
1867                return retVal;
1868    }
1869
1870
1871
1872    /**
1873     * Returns
1874     * PV1-41: "Account Status" - creates it if necessary
1875     */
1876    public CWE getAccountStatus() { 
1877                CWE retVal = this.getTypedField(41, 0);
1878                return retVal;
1879    }
1880    
1881    /**
1882     * Returns
1883     * PV1-41: "Account Status" - creates it if necessary
1884     */
1885    public CWE getPv141_AccountStatus() { 
1886                CWE retVal = this.getTypedField(41, 0);
1887                return retVal;
1888    }
1889
1890
1891
1892    /**
1893     * Returns
1894     * PV1-42: "Pending Location" - creates it if necessary
1895     */
1896    public PL getPendingLocation() { 
1897                PL retVal = this.getTypedField(42, 0);
1898                return retVal;
1899    }
1900    
1901    /**
1902     * Returns
1903     * PV1-42: "Pending Location" - creates it if necessary
1904     */
1905    public PL getPv142_PendingLocation() { 
1906                PL retVal = this.getTypedField(42, 0);
1907                return retVal;
1908    }
1909
1910
1911
1912    /**
1913     * Returns
1914     * PV1-43: "Prior Temporary Location" - creates it if necessary
1915     */
1916    public PL getPriorTemporaryLocation() { 
1917                PL retVal = this.getTypedField(43, 0);
1918                return retVal;
1919    }
1920    
1921    /**
1922     * Returns
1923     * PV1-43: "Prior Temporary Location" - creates it if necessary
1924     */
1925    public PL getPv143_PriorTemporaryLocation() { 
1926                PL retVal = this.getTypedField(43, 0);
1927                return retVal;
1928    }
1929
1930
1931
1932    /**
1933     * Returns
1934     * PV1-44: "Admit Date/Time" - creates it if necessary
1935     */
1936    public DTM getAdmitDateTime() { 
1937                DTM retVal = this.getTypedField(44, 0);
1938                return retVal;
1939    }
1940    
1941    /**
1942     * Returns
1943     * PV1-44: "Admit Date/Time" - creates it if necessary
1944     */
1945    public DTM getPv144_AdmitDateTime() { 
1946                DTM retVal = this.getTypedField(44, 0);
1947                return retVal;
1948    }
1949
1950
1951
1952    /**
1953     * Returns
1954     * PV1-45: "Discharge Date/Time" - creates it if necessary
1955     */
1956    public DTM getDischargeDateTime() { 
1957                DTM retVal = this.getTypedField(45, 0);
1958                return retVal;
1959    }
1960    
1961    /**
1962     * Returns
1963     * PV1-45: "Discharge Date/Time" - creates it if necessary
1964     */
1965    public DTM getPv145_DischargeDateTime() { 
1966                DTM retVal = this.getTypedField(45, 0);
1967                return retVal;
1968    }
1969
1970
1971
1972    /**
1973     * Returns
1974     * PV1-46: "Current Patient Balance" - creates it if necessary
1975     */
1976    public NM getCurrentPatientBalance() { 
1977                NM retVal = this.getTypedField(46, 0);
1978                return retVal;
1979    }
1980    
1981    /**
1982     * Returns
1983     * PV1-46: "Current Patient Balance" - creates it if necessary
1984     */
1985    public NM getPv146_CurrentPatientBalance() { 
1986                NM retVal = this.getTypedField(46, 0);
1987                return retVal;
1988    }
1989
1990
1991
1992    /**
1993     * Returns
1994     * PV1-47: "Total Charges" - creates it if necessary
1995     */
1996    public NM getTotalCharges() { 
1997                NM retVal = this.getTypedField(47, 0);
1998                return retVal;
1999    }
2000    
2001    /**
2002     * Returns
2003     * PV1-47: "Total Charges" - creates it if necessary
2004     */
2005    public NM getPv147_TotalCharges() { 
2006                NM retVal = this.getTypedField(47, 0);
2007                return retVal;
2008    }
2009
2010
2011
2012    /**
2013     * Returns
2014     * PV1-48: "Total Adjustments" - creates it if necessary
2015     */
2016    public NM getTotalAdjustments() { 
2017                NM retVal = this.getTypedField(48, 0);
2018                return retVal;
2019    }
2020    
2021    /**
2022     * Returns
2023     * PV1-48: "Total Adjustments" - creates it if necessary
2024     */
2025    public NM getPv148_TotalAdjustments() { 
2026                NM retVal = this.getTypedField(48, 0);
2027                return retVal;
2028    }
2029
2030
2031
2032    /**
2033     * Returns
2034     * PV1-49: "Total Payments" - creates it if necessary
2035     */
2036    public NM getTotalPayments() { 
2037                NM retVal = this.getTypedField(49, 0);
2038                return retVal;
2039    }
2040    
2041    /**
2042     * Returns
2043     * PV1-49: "Total Payments" - creates it if necessary
2044     */
2045    public NM getPv149_TotalPayments() { 
2046                NM retVal = this.getTypedField(49, 0);
2047                return retVal;
2048    }
2049
2050
2051
2052    /**
2053     * Returns
2054     * PV1-50: "Alternate Visit ID" - creates it if necessary
2055     */
2056    public CX getAlternateVisitID() { 
2057                CX retVal = this.getTypedField(50, 0);
2058                return retVal;
2059    }
2060    
2061    /**
2062     * Returns
2063     * PV1-50: "Alternate Visit ID" - creates it if necessary
2064     */
2065    public CX getPv150_AlternateVisitID() { 
2066                CX retVal = this.getTypedField(50, 0);
2067                return retVal;
2068    }
2069
2070
2071
2072    /**
2073     * Returns
2074     * PV1-51: "Visit Indicator" - creates it if necessary
2075     */
2076    public CWE getVisitIndicator() { 
2077                CWE retVal = this.getTypedField(51, 0);
2078                return retVal;
2079    }
2080    
2081    /**
2082     * Returns
2083     * PV1-51: "Visit Indicator" - creates it if necessary
2084     */
2085    public CWE getPv151_VisitIndicator() { 
2086                CWE retVal = this.getTypedField(51, 0);
2087                return retVal;
2088    }
2089
2090
2091
2092    /**
2093     * Returns
2094     * PV1-52: "Other Healthcare Provider" - creates it if necessary
2095     */
2096    public NULLDT getOtherHealthcareProvider() { 
2097                NULLDT retVal = this.getTypedField(52, 0);
2098                return retVal;
2099    }
2100    
2101    /**
2102     * Returns
2103     * PV1-52: "Other Healthcare Provider" - creates it if necessary
2104     */
2105    public NULLDT getPv152_OtherHealthcareProvider() { 
2106                NULLDT retVal = this.getTypedField(52, 0);
2107                return retVal;
2108    }
2109
2110
2111
2112    /**
2113     * Returns
2114     * PV1-53: "Service Episode Description" - creates it if necessary
2115     */
2116    public ST getServiceEpisodeDescription() { 
2117                ST retVal = this.getTypedField(53, 0);
2118                return retVal;
2119    }
2120    
2121    /**
2122     * Returns
2123     * PV1-53: "Service Episode Description" - creates it if necessary
2124     */
2125    public ST getPv153_ServiceEpisodeDescription() { 
2126                ST retVal = this.getTypedField(53, 0);
2127                return retVal;
2128    }
2129
2130
2131
2132    /**
2133     * Returns
2134     * PV1-54: "Service Episode Identifier" - creates it if necessary
2135     */
2136    public CX getServiceEpisodeIdentifier() { 
2137                CX retVal = this.getTypedField(54, 0);
2138                return retVal;
2139    }
2140    
2141    /**
2142     * Returns
2143     * PV1-54: "Service Episode Identifier" - creates it if necessary
2144     */
2145    public CX getPv154_ServiceEpisodeIdentifier() { 
2146                CX retVal = this.getTypedField(54, 0);
2147                return retVal;
2148    }
2149
2150
2151
2152
2153
2154    /** {@inheritDoc} */   
2155    protected Type createNewTypeWithoutReflection(int field) {
2156       switch (field) {
2157          case 0: return new SI(getMessage());
2158          case 1: return new CWE(getMessage());
2159          case 2: return new PL(getMessage());
2160          case 3: return new CWE(getMessage());
2161          case 4: return new CX(getMessage());
2162          case 5: return new PL(getMessage());
2163          case 6: return new XCN(getMessage());
2164          case 7: return new XCN(getMessage());
2165          case 8: return new XCN(getMessage());
2166          case 9: return new CWE(getMessage());
2167          case 10: return new PL(getMessage());
2168          case 11: return new CWE(getMessage());
2169          case 12: return new CWE(getMessage());
2170          case 13: return new CWE(getMessage());
2171          case 14: return new CWE(getMessage());
2172          case 15: return new CWE(getMessage());
2173          case 16: return new XCN(getMessage());
2174          case 17: return new CWE(getMessage());
2175          case 18: return new CX(getMessage());
2176          case 19: return new FC(getMessage());
2177          case 20: return new CWE(getMessage());
2178          case 21: return new CWE(getMessage());
2179          case 22: return new CWE(getMessage());
2180          case 23: return new CWE(getMessage());
2181          case 24: return new DT(getMessage());
2182          case 25: return new NM(getMessage());
2183          case 26: return new NM(getMessage());
2184          case 27: return new CWE(getMessage());
2185          case 28: return new CWE(getMessage());
2186          case 29: return new DT(getMessage());
2187          case 30: return new CWE(getMessage());
2188          case 31: return new NM(getMessage());
2189          case 32: return new NM(getMessage());
2190          case 33: return new CWE(getMessage());
2191          case 34: return new DT(getMessage());
2192          case 35: return new CWE(getMessage());
2193          case 36: return new DLD(getMessage());
2194          case 37: return new CWE(getMessage());
2195          case 38: return new CWE(getMessage());
2196          case 39: return new CWE(getMessage());
2197          case 40: return new CWE(getMessage());
2198          case 41: return new PL(getMessage());
2199          case 42: return new PL(getMessage());
2200          case 43: return new DTM(getMessage());
2201          case 44: return new DTM(getMessage());
2202          case 45: return new NM(getMessage());
2203          case 46: return new NM(getMessage());
2204          case 47: return new NM(getMessage());
2205          case 48: return new NM(getMessage());
2206          case 49: return new CX(getMessage());
2207          case 50: return new CWE(getMessage());
2208          case 51: return new NULLDT(getMessage());
2209          case 52: return new ST(getMessage());
2210          case 53: return new CX(getMessage());
2211          default: return null;
2212       }
2213   }
2214
2215
2216}
2217