Skip to main content

x12_types/v005010/segment/
l.rs

1use serde::{Deserialize, Serialize};
2use validator::Validate;
3use x12_types_macros::{DisplaySegment, ParseSegment};
4
5/// LC - Life Coverage
6#[derive(
7    Serialize,
8    Deserialize,
9    Clone,
10    Default,
11    Debug,
12    Validate,
13    PartialEq,
14    Eq,
15    DisplaySegment,
16    ParseSegment,
17)]
18pub struct LC {
19    #[serde(rename = "01")]
20    pub _01: String,
21    #[serde(rename = "02")]
22    pub _02: Option<String>,
23    #[serde(rename = "03")]
24    pub _03: Option<String>,
25    #[serde(rename = "04")]
26    pub _04: Option<String>,
27    #[serde(rename = "05")]
28    pub _05: Option<String>,
29    #[serde(rename = "06")]
30    pub _06: Option<String>,
31    #[serde(rename = "07")]
32    pub _07: Option<String>,
33}
34
35/// LE - Loop Trailer
36#[derive(
37    Serialize,
38    Deserialize,
39    Clone,
40    Default,
41    Debug,
42    Validate,
43    PartialEq,
44    Eq,
45    DisplaySegment,
46    ParseSegment,
47)]
48pub struct LE {
49    #[serde(rename = "01")]
50    pub _01: String,
51}
52
53/// LFG - Hazardous Material - Finished Goods
54///
55/// To describe hazardous material information for finished goods
56///
57/// REF | ID | NAME | REQ | TYPE | MIN/MAX
58/// ----|----|-------|----|------|-------
59/// 01 | 352 | Description | M | AN | 1/80
60/// 02 | 215 | Hazardous Classification | M | ID | 1/30
61/// 03 | 277 | UN/NA Identification Code | M | ID | 6/6
62/// 04 | 218 | Hazardous Placard Notation | M | ID | 14/40
63/// 05 | 254 | Packing Group Code | O | ID | 1/3
64/// 06 | 1577 | Hazardous Material Regulations Exception Code | O | ID | 1/1
65#[derive(
66    Serialize, Deserialize, Clone, Default, Debug, PartialEq, Eq, DisplaySegment, ParseSegment,
67)]
68pub struct LFG {
69    #[serde(rename = "01")]
70    pub _01: String,
71    #[serde(rename = "02")]
72    pub _02: String,
73    #[serde(rename = "03")]
74    pub _03: String,
75    #[serde(rename = "04")]
76    pub _04: String,
77    #[serde(rename = "05")]
78    pub _05: Option<String>,
79    #[serde(rename = "06")]
80    pub _06: Option<crate::v005010::element::E1577>,
81}
82
83/// LIN - Item Identification
84#[derive(
85    Serialize,
86    Deserialize,
87    Clone,
88    Default,
89    Debug,
90    Validate,
91    PartialEq,
92    Eq,
93    DisplaySegment,
94    ParseSegment,
95)]
96pub struct LIN {
97    #[serde(rename = "01")]
98    pub _01: Option<String>,
99    /// 235 - Product/Service ID Qualifier
100    #[serde(rename = "02")]
101    pub _02: crate::v005010::element::E235,
102    #[serde(rename = "03")]
103    pub _03: String,
104    /// 235 - Product/Service ID Qualifier
105    #[serde(rename = "04")]
106    pub _04: Option<crate::v005010::element::E235>,
107    #[serde(rename = "05")]
108    pub _05: Option<String>,
109    /// 235 - Product/Service ID Qualifier
110    #[serde(rename = "06")]
111    pub _06: Option<crate::v005010::element::E235>,
112    #[serde(rename = "07")]
113    pub _07: Option<String>,
114    /// 235 - Product/Service ID Qualifier
115    #[serde(rename = "08")]
116    pub _08: Option<crate::v005010::element::E235>,
117    #[serde(rename = "09")]
118    pub _09: Option<String>,
119    /// 235 - Product/Service ID Qualifier
120    #[serde(rename = "10")]
121    pub _10: Option<crate::v005010::element::E235>,
122    #[serde(rename = "11")]
123    pub _11: Option<String>,
124    /// 235 - Product/Service ID Qualifier
125    #[serde(rename = "12")]
126    pub _12: Option<crate::v005010::element::E235>,
127    #[serde(rename = "13")]
128    pub _13: Option<String>,
129    /// 235 - Product/Service ID Qualifier
130    #[serde(rename = "14")]
131    pub _14: Option<crate::v005010::element::E235>,
132    #[serde(rename = "15")]
133    pub _15: Option<String>,
134    /// 235 - Product/Service ID Qualifier
135    #[serde(rename = "16")]
136    pub _16: Option<crate::v005010::element::E235>,
137    #[serde(rename = "17")]
138    pub _17: Option<String>,
139    /// 235 - Product/Service ID Qualifier
140    #[serde(rename = "18")]
141    pub _18: Option<crate::v005010::element::E235>,
142    #[serde(rename = "19")]
143    pub _19: Option<String>,
144    /// 235 - Product/Service ID Qualifier
145    #[serde(rename = "20")]
146    pub _20: Option<crate::v005010::element::E235>,
147    #[serde(rename = "21")]
148    pub _21: Option<String>,
149    /// 235 - Product/Service ID Qualifier
150    #[serde(rename = "22")]
151    pub _22: Option<crate::v005010::element::E235>,
152    #[serde(rename = "23")]
153    pub _23: Option<String>,
154    /// 235 - Product/Service ID Qualifier
155    #[serde(rename = "24")]
156    pub _24: Option<crate::v005010::element::E235>,
157    #[serde(rename = "25")]
158    pub _25: Option<String>,
159    /// 235 - Product/Service ID Qualifier
160    #[serde(rename = "26")]
161    pub _26: Option<crate::v005010::element::E235>,
162    #[serde(rename = "27")]
163    pub _27: Option<String>,
164    /// 235 - Product/Service ID Qualifier
165    #[serde(rename = "28")]
166    pub _28: Option<crate::v005010::element::E235>,
167    #[serde(rename = "29")]
168    pub _29: Option<String>,
169    /// 235 - Product/Service ID Qualifier
170    #[serde(rename = "30")]
171    pub _30: Option<crate::v005010::element::E235>,
172    #[serde(rename = "31")]
173    pub _31: Option<String>,
174}
175
176/// LM - Code Source Information
177#[derive(
178    Serialize,
179    Deserialize,
180    Clone,
181    Default,
182    Debug,
183    Validate,
184    PartialEq,
185    Eq,
186    DisplaySegment,
187    ParseSegment,
188)]
189pub struct LM {
190    /// 559 - Agency Qualifier Code
191    #[serde(rename = "01")]
192    pub _01: Option<crate::v005010::element::E559>,
193    // Source Subqualifier
194    #[serde(rename = "02")]
195    pub _02: Option<String>,
196}
197
198/// LN - Loan Information
199///
200/// To convey loan identification, amount, and repayment terms
201///
202/// REF | ID | NAME | REPEAT | REQ | TYPE | MIN/MAX
203/// ----|----|-------|--------|----|------|-------
204/// 01 | 127 | Reference Identification | 1 | M | AN | 1/50
205/// 02 | 782 | Monetary Amount | 1 | M | R | 1/18
206/// 03 | 1250 | Date Time Period Format Qualifier | 1 | X | ID | 2/3
207/// 04 | 1251 | Date Time Period | 1 | X | AN | 1/35
208/// 05 | 594 | Frequency Code | 1 | X | ID | 1/1
209/// 06 | 782 | Monetary Amount | 1 | X | R | 1/18
210/// 07 | 954 | Percentage as Decimal | 1 | O | R | 1/10
211/// 08 | 1073 | Yes/No Condition or Response Code | 1 | O | ID | 1/1
212/// 09 | 1081 | Loan Purpose Code | 1 | O | ID | 2/2
213/// 10 | 1085 | Loan Payment Type Code | 1 | O | ID | 2/2
214/// 11 | 1086 | Loan Rate Type Code | 1 | O | ID | 1/1
215#[derive(
216    Serialize, Deserialize, Clone, Default, Debug, PartialEq, Eq, DisplaySegment, ParseSegment,
217)]
218pub struct LN {
219    #[serde(rename = "01")]
220    pub _01: String,
221    #[serde(rename = "02")]
222    pub _02: crate::v005010::element::E782,
223    #[serde(rename = "03")]
224    pub _03: Option<String>,
225    #[serde(rename = "04")]
226    pub _04: Option<String>,
227    #[serde(rename = "05")]
228    pub _05: Option<crate::v005010::element::E594>,
229    #[serde(rename = "06")]
230    pub _06: Option<crate::v005010::element::E782>,
231    #[serde(rename = "07")]
232    pub _07: Option<crate::v005010::element::E954>,
233    #[serde(rename = "08")]
234    pub _08: Option<crate::v005010::element::E1073>,
235    #[serde(rename = "09")]
236    pub _09: Option<crate::v005010::element::E1081>,
237    #[serde(rename = "10")]
238    pub _10: Option<crate::v005010::element::E1085>,
239    #[serde(rename = "11")]
240    pub _11: Option<crate::v005010::element::E1086>,
241}
242
243/// LQ - Industry Code Identification
244#[derive(
245    Serialize,
246    Deserialize,
247    Clone,
248    Default,
249    Debug,
250    Validate,
251    PartialEq,
252    Eq,
253    DisplaySegment,
254    ParseSegment,
255)]
256pub struct LQ {
257    /// 1270 - Code List Qualifier Code
258    #[serde(rename = "01")]
259    pub _01: Option<crate::v005010::element::E1270>,
260    #[serde(rename = "02")]
261    pub _02: Option<String>,
262}
263
264/// LS - Loop Header
265#[derive(
266    Serialize,
267    Deserialize,
268    Clone,
269    Default,
270    Debug,
271    Validate,
272    PartialEq,
273    Eq,
274    DisplaySegment,
275    ParseSegment,
276)]
277pub struct LS {
278    #[serde(rename = "01")]
279    pub _01: String,
280}
281
282/// LUI - Language Use
283#[derive(
284    Serialize,
285    Deserialize,
286    Clone,
287    Default,
288    Debug,
289    Validate,
290    PartialEq,
291    Eq,
292    DisplaySegment,
293    ParseSegment,
294)]
295pub struct LUI {
296    #[serde(rename = "01")]
297    pub _01: Option<String>,
298    #[serde(rename = "02")]
299    pub _02: Option<String>,
300    #[serde(rename = "03")]
301    pub _03: Option<String>,
302    #[serde(rename = "04")]
303    pub _04: Option<String>,
304    #[serde(rename = "05")]
305    pub _05: Option<String>,
306}
307
308/// LX - Transaction Set Line Number
309#[derive(
310    Serialize,
311    Deserialize,
312    Clone,
313    Default,
314    Debug,
315    Validate,
316    PartialEq,
317    Eq,
318    DisplaySegment,
319    ParseSegment,
320)]
321pub struct LX {
322    #[serde(rename = "01")]
323    pub _01: String,
324}
325
326/// LCD - Place/Location Description
327///
328/// To identify the place/location and associated parties for a lot, line item, or detail
329///
330/// REF | ID | NAME | REPEAT | REQ | TYPE | MIN/MAX
331/// ----|----|-------|--------|----|------|-------
332/// 01 | 350 | Assigned Identification | 1 | O | AN | 1/20
333/// 02 | 98 | Entity Identifier Code | 1 | O | ID | 2/3
334/// 03 | 306 | Action Code | 1 | O | ID | 1/2
335/// 04 | 373 | Date | 1 | O | DT | 8/8
336/// 05 | 66 | Identification Code Qualifier | 1 | X | ID | 1/2
337/// 06 | 67 | Identification Code | 1 | X | AN | 2/80
338#[derive(
339    Serialize, Deserialize, Clone, Default, Debug, PartialEq, Eq, DisplaySegment, ParseSegment,
340)]
341pub struct LCD {
342    #[serde(rename = "01")]
343    pub _01: Option<String>,
344    #[serde(rename = "02")]
345    pub _02: Option<String>,
346    #[serde(rename = "03")]
347    pub _03: Option<String>,
348    #[serde(rename = "04")]
349    pub _04: Option<String>,
350    #[serde(rename = "05")]
351    pub _05: Option<String>,
352    #[serde(rename = "06")]
353    pub _06: Option<String>,
354}
355
356/// LDT - Lead Time
357#[derive(
358    Serialize,
359    Deserialize,
360    Clone,
361    Default,
362    Debug,
363    Validate,
364    PartialEq,
365    Eq,
366    DisplaySegment,
367    ParseSegment,
368)]
369pub struct LDT {
370    #[serde(rename = "01")]
371    pub _01: String,
372    #[serde(rename = "02")]
373    pub _02: String,
374    #[serde(rename = "03")]
375    pub _03: String,
376    #[serde(rename = "04")]
377    pub _04: Option<String>,
378}
379
380/// LOC - Location
381#[derive(
382    Serialize, Deserialize, Clone, Default, Debug, PartialEq, Eq, DisplaySegment, ParseSegment,
383)]
384pub struct LOC {
385    #[serde(rename = "01")]
386    pub _01: Option<String>,
387    #[serde(rename = "02")]
388    pub _02: Option<String>,
389    #[serde(rename = "03")]
390    pub _03: Option<String>,
391    #[serde(rename = "04")]
392    pub _04: Option<String>,
393    #[serde(rename = "05")]
394    pub _05: Option<String>,
395    #[serde(rename = "06")]
396    pub _06: Option<String>,
397    #[serde(rename = "07")]
398    pub _07: Option<String>,
399    #[serde(rename = "08")]
400    pub _08: Option<String>,
401    #[serde(rename = "09")]
402    pub _09: Option<String>,
403    #[serde(rename = "10")]
404    pub _10: Option<String>,
405    #[serde(rename = "11")]
406    pub _11: Option<String>,
407    #[serde(rename = "12")]
408    pub _12: Option<String>,
409    #[serde(rename = "13")]
410    pub _13: Option<String>,
411    #[serde(rename = "14")]
412    pub _14: Option<String>,
413    #[serde(rename = "15")]
414    pub _15: Option<String>,
415    #[serde(rename = "16")]
416    pub _16: Option<String>,
417    #[serde(rename = "17")]
418    pub _17: Option<String>,
419    #[serde(rename = "18")]
420    pub _18: Option<String>,
421    #[serde(rename = "19")]
422    pub _19: Option<String>,
423    #[serde(rename = "20")]
424    pub _20: Option<String>,
425    #[serde(rename = "21")]
426    pub _21: Option<String>,
427    #[serde(rename = "22")]
428    pub _22: Option<String>,
429    #[serde(rename = "23")]
430    pub _23: Option<String>,
431    #[serde(rename = "24")]
432    pub _24: Option<String>,
433    #[serde(rename = "25")]
434    pub _25: Option<String>,
435}
436
437/// L11 - Business Instructions and Reference Number
438///
439/// To specify instructions in this business relationship or a reference number
440///
441/// REF | ID | NAME | REPEAT | REQ | TYPE | MIN/MAX
442/// ----|----|-------|--------|----|------|-------
443/// 01 | 127 | Reference Identification | 1 | X | AN | 1/30
444/// 02 | 128 | Reference Identification Qualifier | 1 | X | ID | 2/3
445/// 03 | 352 | Description | 1 | X | AN | 1/80
446#[derive(
447    Serialize, Deserialize, Clone, Default, Debug, PartialEq, Eq, DisplaySegment, ParseSegment,
448)]
449pub struct L11 {
450    #[serde(rename = "01")]
451    pub _01: Option<String>,
452    #[serde(rename = "02")]
453    pub _02: Option<String>,
454    #[serde(rename = "03")]
455    pub _03: Option<String>,
456}
457
458/// L3 - Total Weight and Charges
459///
460/// To specify the total shipment in terms of weight, volume, rates, charges, advances, and prepaid amounts applicable to one or more line items
461///
462/// REF | ID | NAME | REPEAT | REQ | TYPE | MIN/MAX
463/// ----|----|-------|--------|----|------|-------
464/// 01 | 81 | Weight | 1 | X | R | 1/10
465/// 02 | 187 | Weight Qualifier | 1 | X | ID | 1/2
466/// 03 | 60 | Freight Rate | 1 | X | R | 1/9
467/// 04 | 122 | Rate/Value Qualifier | 1 | X | ID | 2/2
468/// 05 | 58 | Charge | 1 | O/Z | N2 | 1/12
469/// 06 | 191 | Advances | 1 | O | N2 | 1/9
470/// 07 | 117 | Prepaid Amount | 1 | O | N2 | 1/9
471/// 08 | 150 | Special Charge or Allowance Code | 1 | O | ID | 3/3
472/// 09 | 183 | Volume | 1 | X | R | 1/8
473/// 10 | 184 | Volume Unit Qualifier | 1 | X | ID | 1/1
474/// 11 | 80 | Lading Quantity | 1 | O | N0 | 1/7
475/// 12 | 188 | Weight Unit Code | 1 | O | ID | 1/1
476/// 13 | 171 | Tariff Number | 1 | O | AN | 1/7
477/// 14 | 74 | Declared Value | 1 | X | N2 | 2/12
478/// 15 | 122 | Rate/Value Qualifier | 1 | X | ID | 2/2
479#[derive(
480    Serialize, Deserialize, Clone, Default, Debug, PartialEq, Eq, DisplaySegment, ParseSegment,
481)]
482pub struct L3 {
483    #[serde(rename = "01")]
484    pub _01: Option<crate::v005010::element::E81>,
485    #[serde(rename = "02")]
486    pub _02: Option<String>,
487    #[serde(rename = "03")]
488    pub _03: Option<crate::v005010::element::E60>,
489    #[serde(rename = "04")]
490    pub _04: Option<crate::v005010::element::E122>,
491    #[serde(rename = "05")]
492    pub _05: Option<crate::v005010::element::E58>,
493    #[serde(rename = "06")]
494    pub _06: Option<crate::v005010::element::E191>,
495    #[serde(rename = "07")]
496    pub _07: Option<crate::v005010::element::E117>,
497    #[serde(rename = "08")]
498    pub _08: Option<crate::v005010::element::E150>,
499    #[serde(rename = "09")]
500    pub _09: Option<crate::v005010::element::E183>,
501    #[serde(rename = "10")]
502    pub _10: Option<crate::v005010::element::E184>,
503    #[serde(rename = "11")]
504    pub _11: Option<crate::v005010::element::E80>,
505    #[serde(rename = "12")]
506    pub _12: Option<String>,
507    #[serde(rename = "13")]
508    pub _13: Option<String>,
509    #[serde(rename = "14")]
510    pub _14: Option<crate::v005010::element::E74>,
511    #[serde(rename = "15")]
512    pub _15: Option<crate::v005010::element::E122>,
513}
514
515/// L4 - Measurement
516///
517/// To describe physical dimensions and quantities
518///
519/// REF | ID | NAME | REPEAT | REQ | TYPE | MIN/MAX
520/// ----|----|-------|--------|----|------|-------
521/// 01 | 82 | Length | 1 | M | R | 1/8
522/// 02 | 189 | Width | 1 | M | R | 1/8
523/// 03 | 65 | Height | 1 | M | R | 1/8
524/// 04 | 90 | Measurement Unit Qualifier | 1 | M | ID | 1/1
525/// 05 | 380 | Quantity | 1 | O | R | 1/15
526/// 06 | 1271 | Industry Code | 1 | O | AN | 1/30
527#[derive(
528    Serialize, Deserialize, Clone, Default, Debug, PartialEq, Eq, DisplaySegment, ParseSegment,
529)]
530pub struct L4 {
531    #[serde(rename = "01")]
532    pub _01: crate::v005010::element::E82,
533    #[serde(rename = "02")]
534    pub _02: crate::v005010::element::E189,
535    #[serde(rename = "03")]
536    pub _03: crate::v005010::element::E65,
537    #[serde(rename = "04")]
538    pub _04: crate::v005010::element::E90,
539    #[serde(rename = "05")]
540    pub _05: Option<String>,
541    #[serde(rename = "06")]
542    pub _06: Option<String>,
543}
544
545/// L5 - Description, Marks and Numbers
546///
547/// To specify the line item in terms of description, quantity, packaging, and marks and numbers
548///
549/// REF | ID | NAME | REPEAT | REQ | TYPE | MIN/MAX
550/// ----|----|-------|--------|----|------|-------
551/// 01 | 213 | Lading Line Item Number | 1 | O | N0 | 1/3
552/// 02 | 79 | Lading Description | 1 | O | AN | 1/50
553/// 03 | 22 | Commodity Code | 1 | X | AN | 1/30
554/// 04 | 23 | Commodity Code Qualifier | 1 | X | ID | 1/1
555/// 05 | 103 | Packaging Code | 1 | O | AN | 3/5
556/// 06 | 87 | Marks and Numbers | 1 | X | AN | 1/48
557/// 07 | 88 | Marks and Numbers Qualifier | 1 | O | ID | 1/2
558/// 08 | 23 | Commodity Code Qualifier | 1 | X | ID | 1/1
559/// 09 | 22 | Commodity Code | 1 | X | AN | 1/30
560/// 10 | 595 | Compartment ID Code | 1 | O | ID | 1/1
561#[derive(
562    Serialize, Deserialize, Clone, Default, Debug, PartialEq, Eq, DisplaySegment, ParseSegment,
563)]
564pub struct L5 {
565    #[serde(rename = "01")]
566    pub _01: Option<crate::v005010::element::E213>,
567    #[serde(rename = "02")]
568    pub _02: Option<String>,
569    #[serde(rename = "03")]
570    pub _03: Option<String>,
571    #[serde(rename = "04")]
572    pub _04: Option<String>,
573    #[serde(rename = "05")]
574    pub _05: Option<String>,
575    #[serde(rename = "06")]
576    pub _06: Option<String>,
577    #[serde(rename = "07")]
578    pub _07: Option<String>,
579    #[serde(rename = "08")]
580    pub _08: Option<String>,
581    #[serde(rename = "09")]
582    pub _09: Option<String>,
583    #[serde(rename = "10")]
584    pub _10: Option<crate::v005010::element::E595>,
585}
586
587/// L9 - Charge Detail
588///
589/// To enable the carrier to assess special charges or allowances
590///
591/// REF | ID | NAME | REPEAT | REQ | TYPE | MIN/MAX
592/// ----|----|-------|--------|----|------|-------
593/// 01 | 150 | Special Charge or Allowance Code | 1 | M | ID | 3/3
594/// 02 | 782 | Monetary Amount | 1 | M | R | 1/18
595#[derive(
596    Serialize, Deserialize, Clone, Default, Debug, PartialEq, Eq, DisplaySegment, ParseSegment,
597)]
598pub struct L9 {
599    #[serde(rename = "01")]
600    pub _01: crate::v005010::element::E150,
601    #[serde(rename = "02")]
602    pub _02: crate::v005010::element::E782,
603}
604
605/// L12 - Alternate Lading Description
606///
607/// To provide additional or alternate lading description
608///
609/// REF | ID | NAME | REPEAT | REQ | TYPE | MIN/MAX
610/// ----|----|-------|--------|----|------|-------
611/// 01 | 592 | Lading Description Qualifier | 1 | O | ID | 1/1
612/// 02 | 352 | Description | 1 | O | AN | 1/80
613#[derive(
614    Serialize, Deserialize, Clone, Default, Debug, PartialEq, Eq, DisplaySegment, ParseSegment,
615)]
616pub struct L12 {
617    #[serde(rename = "01")]
618    pub _01: Option<crate::v005010::element::E592>,
619    #[serde(rename = "02")]
620    pub _02: Option<String>,
621}
622
623/// L7 - Tariff Reference
624///
625/// To reference details of the tariff used to arrive at applicable rates or charge
626///
627/// REF | ID | NAME | REPEAT | REQ | TYPE | MIN/MAX
628/// ----|----|-------|--------|----|------|-------
629/// 01 | 213 | Lading Line Item Number | O |  | N0 1/3
630/// 02 | 168 | Tariff Agency Code | O |  | ID 1/4
631/// 03 | 171 | Tariff Number | O |  | AN 1/7
632/// 04 | 172 | Tariff Section | O |  | AN 1/2
633/// 05 | 169 | Tariff Item Number | O |  | AN 1/16
634/// 06 | 170 | Tariff Item Part | O |  | N0 1/2
635/// 07 | 59 | Freight Class Code | O |  | AN 2/5
636/// 08 | 173 | Tariff Supplement Identifier | O |  | AN 1/4
637/// 09 | 46 | Ex Parte | O |  | AN 4/4
638/// 10 | 373 | Date | O |  | DT 8/8
639/// 11 | 119 | Rate Basis Number | O |  | AN 1/6
640/// 12 | 227 | Tariff Column | O |  | AN 1/2
641/// 13 | 294 | Tariff Distance | O |  | N0 1/5
642/// 14 | 295 | Distance Qualifier | O |  | ID 1/1
643/// 15 | 19 | City Name | O |  | AN 2/30
644/// 16 | 156 | State or Province Code | O |  | ID 2/2
645#[derive(
646    Serialize, Deserialize, Clone, Default, Debug, PartialEq, Eq, DisplaySegment, ParseSegment,
647)]
648pub struct L7 {
649    #[serde(rename = "01")]
650    pub _01: Option<crate::v005010::element::E213>,
651    #[serde(rename = "02")]
652    pub _02: Option<String>,
653    #[serde(rename = "03")]
654    pub _03: Option<String>,
655    #[serde(rename = "04")]
656    pub _04: Option<String>,
657    #[serde(rename = "05")]
658    pub _05: Option<String>,
659    #[serde(rename = "06")]
660    pub _06: Option<crate::v005010::element::E170>,
661    #[serde(rename = "07")]
662    pub _07: Option<String>,
663    #[serde(rename = "08")]
664    pub _08: Option<String>,
665    #[serde(rename = "09")]
666    pub _09: Option<String>,
667    #[serde(rename = "10")]
668    pub _10: Option<String>,
669    #[serde(rename = "11")]
670    pub _11: Option<String>,
671    #[serde(rename = "12")]
672    pub _12: Option<String>,
673    #[serde(rename = "13")]
674    pub _13: Option<crate::v005010::element::E294>,
675    #[serde(rename = "14")]
676    pub _14: Option<crate::v005010::element::E295>,
677    #[serde(rename = "15")]
678    pub _15: Option<String>,
679    #[serde(rename = "16")]
680    pub _16: Option<String>,
681}
682
683/// LAD - Lading Detail
684///
685/// To transmit detailed lading data pertinent to a pickup or delivery
686///
687/// REF | ID | NAME | REPEAT | REQ | TYPE | MIN/MAX
688/// ----|----|-------|--------|----|------|-------
689/// 01 | 211 | Packaging Form Code | 1 | X | ID | 3/3
690/// 02 | 80 | Lading Quantity | 1 | X | N0 | 1/7
691/// 03 | 188 | Weight Unit Code | 1 | X | ID | 1/1
692/// 04 | 395 | Unit Weight | 1 | X | R | 1/8
693/// 05 | 188 | Weight Unit Code | 1 | X | ID | 1/1
694/// 06 | 81 | Weight | 1 | X | R | 1/10
695/// 07 | 235 | Product/Service ID Qualifier | 1 | X | ID | 2/2
696/// 08 | 234 | Product/Service ID | 1 | X | AN | 1/48
697/// 09 | 235 | Product/Service ID Qualifier | 1 | X | ID | 2/2
698/// 10 | 234 | Product/Service ID | 1 | X | AN | 1/48
699/// 11 | 235 | Product/Service ID Qualifier | 1 | X | ID | 2/2
700/// 12 | 234 | Product/Service ID | 1 | X | AN | 1/48
701/// 13 | 79 | Lading Description | 1 | O | AN | 1/50
702#[derive(
703    Serialize, Deserialize, Clone, Default, Debug, PartialEq, Eq, DisplaySegment, ParseSegment,
704)]
705pub struct LAD {
706    #[serde(rename = "01")]
707    pub _01: Option<crate::v005010::element::E211>,
708    #[serde(rename = "02")]
709    pub _02: Option<crate::v005010::element::E80>,
710    #[serde(rename = "03")]
711    pub _03: Option<String>,
712    #[serde(rename = "04")]
713    pub _04: Option<crate::v005010::element::E395>,
714    #[serde(rename = "05")]
715    pub _05: Option<String>,
716    #[serde(rename = "06")]
717    pub _06: Option<crate::v005010::element::E81>,
718    #[serde(rename = "07")]
719    pub _07: Option<String>,
720    #[serde(rename = "08")]
721    pub _08: Option<String>,
722    #[serde(rename = "09")]
723    pub _09: Option<String>,
724    #[serde(rename = "10")]
725    pub _10: Option<String>,
726    #[serde(rename = "11")]
727    pub _11: Option<String>,
728    #[serde(rename = "12")]
729    pub _12: Option<String>,
730    #[serde(rename = "13")]
731    pub _13: Option<String>,
732}
733
734/// LEP - EPA Required Data
735///
736/// To specify the Environmental Protection Agency (EPA) information relating to shipments of hazardous material
737///
738/// REF | ID | NAME | REPEAT | REQ | TYPE | MIN/MAX
739/// ----|----|-------|--------|----|------|-------
740/// 01 | 806 | EPA Waste Stream Number Code | 1 | O | ID | 4/6
741/// 02 | 807 | Waste Characteristics Code | 1 | O | ID | 12/16
742/// 03 | 156 | State or Province Code NEW | 1 | X/Z | ID | 2/2
743/// 04 | 127 | Reference Identification NEW | 1 | X/Z | AN | 1/30
744#[derive(
745    Serialize, Deserialize, Clone, Default, Debug, PartialEq, Eq, DisplaySegment, ParseSegment,
746)]
747pub struct LEP {
748    #[serde(rename = "01")]
749    pub _01: Option<String>,
750    #[serde(rename = "02")]
751    pub _02: Option<String>,
752    #[serde(rename = "03")]
753    pub _03: Option<String>,
754    #[serde(rename = "04")]
755    pub _04: Option<String>,
756}
757
758/// LFH - Freeform Hazardous Material Information
759///
760/// To uniquely identify the variable information required by government regulation covering the transportation of hazardous material shipments
761///
762/// REF | ID | NAME | REPEAT | REQ | TYPE | MIN/MAX
763/// ----|----|-------|--------|----|------|-------
764/// 01 | 808 | Hazardous Material Shipment Information Qualifier | 1 | M | ID | 3/3
765/// 02 | 809 | Hazardous Material Shipment Information | 1 | M | AN | 1/25
766/// 03 | 809 | Hazardous Material Shipment Information | 1 | O | AN | 1/25
767/// 04 | 1023 | Hazard Zone Code | 1 | O | ID | 1/1
768/// 05 | 355 | Unit or Basis for Measurement Code NEW | 1 | X | ID | 2/2
769/// 06 | 380 | Quantity NEW | 1 | X/Z | R | 1/15
770/// 07 | 380 | Quantity NEW | 1 | O/Z | R | 1/15
771#[derive(
772    Serialize, Deserialize, Clone, Default, Debug, PartialEq, Eq, DisplaySegment, ParseSegment,
773)]
774pub struct LFH {
775    #[serde(rename = "01")]
776    pub _01: crate::v005010::element::E808,
777    #[serde(rename = "02")]
778    pub _02: String,
779    #[serde(rename = "03")]
780    pub _03: Option<String>,
781    #[serde(rename = "04")]
782    pub _04: Option<crate::v005010::element::E1023>,
783    #[serde(rename = "05")]
784    pub _05: Option<String>,
785    #[serde(rename = "06")]
786    pub _06: Option<String>,
787    #[serde(rename = "07")]
788    pub _07: Option<String>,
789}
790
791/// LH1 - Hazardous Identification Information
792///
793/// To specify the hazardous commodity identification reference number and quantity
794///
795/// REF | ID | NAME | REPEAT | REQ | TYPE | MIN/MAX
796/// ----|----|-------|--------|----|------|-------
797/// 01 | 355 | Unit or Basis for Measurement Code | 1 | M | ID | 2/2
798/// 02 | 80 | Lading Quantity | 1 | M | N0 | 1/7
799/// 03 | 277 | UN/NA Identification Code | 1 | O | ID | 6/6
800/// 04 | 200 | Hazardous Materials Page | 1 | O | AN | 1/6
801/// 05 | 22 | Commodity Code | 1 | O | AN | 1/30
802/// 06 | 355 | Unit or Basis for Measurement Code | 1 | O | ID | 2/2
803/// 07 | 380 | Quantity | 1 | O | R | 1/15
804/// 08 | 595 | Compartment ID Code | 1 | O | ID | 1/1
805/// 09 | 665 | Residue Indicator Code | 1 | O | ID | 1/1
806/// 10 | 254 | Packing Group Code | 1 | O | ID | 1/3
807/// 11 | 1375 | Interim Hazardous Material Regulatory Number | 1 | O | AN | 1/5
808#[derive(
809    Serialize, Deserialize, Clone, Default, Debug, PartialEq, Eq, DisplaySegment, ParseSegment,
810)]
811pub struct LH1 {
812    #[serde(rename = "01")]
813    pub _01: String,
814    #[serde(rename = "02")]
815    pub _02: crate::v005010::element::E80,
816    #[serde(rename = "03")]
817    pub _03: Option<String>,
818    #[serde(rename = "04")]
819    pub _04: Option<String>,
820    #[serde(rename = "05")]
821    pub _05: Option<String>,
822    #[serde(rename = "06")]
823    pub _06: Option<String>,
824    #[serde(rename = "07")]
825    pub _07: Option<String>,
826    #[serde(rename = "08")]
827    pub _08: Option<crate::v005010::element::E595>,
828    #[serde(rename = "09")]
829    pub _09: Option<crate::v005010::element::E665>,
830    #[serde(rename = "10")]
831    pub _10: Option<String>,
832    #[serde(rename = "11")]
833    pub _11: Option<String>,
834}
835
836/// LH2 - Hazardous Classification Information
837///
838/// To specify the hazardous notation and endorsement information
839///
840/// REF | ID | NAME | REPEAT | REQ | TYPE | MIN/MAX
841/// ----|----|-------|--------|----|------|-------
842/// 01 | 215 | Hazardous Classification | 1 | O | ID | 1/30
843/// 02 | 983 | Hazardous Class Qualifier | 1 | O | ID | 1/1
844/// 03 | 218 | Hazardous Placard Notation | 1 | O | ID | 14/40
845/// 04 | 222 | Hazardous Endorsement | 1 | O | ID | 4/25
846/// 05 | 759 | Reportable Quantity Code | 1 | O | ID | 2/2
847/// 06 | 355 | Unit or Basis for Measurement Code | 1 | X/Z | ID | 2/2
848/// 07 | 408 | Temperature | 1 | X | R | 1/4
849/// 08 | 355 | Unit or Basis for Measurement Code NEW | 1 | X/Z | ID | 2/2
850/// 09 | 408 | Temperature NEW | 1 | X | R | 1/4
851/// 10 | 355 | Unit or Basis for Measurement Code NEW | 1 | X/Z | ID | 2/2
852/// 11 | 408 | Temperature NEW | 1 | X | R | 1/4
853#[derive(
854    Serialize, Deserialize, Clone, Default, Debug, PartialEq, Eq, DisplaySegment, ParseSegment,
855)]
856pub struct LH2 {
857    #[serde(rename = "01")]
858    pub _01: Option<String>,
859    #[serde(rename = "02")]
860    pub _02: Option<crate::v005010::element::E983>,
861    #[serde(rename = "03")]
862    pub _03: Option<String>,
863    #[serde(rename = "04")]
864    pub _04: Option<String>,
865    #[serde(rename = "05")]
866    pub _05: Option<crate::v005010::element::E759>,
867    #[serde(rename = "06")]
868    pub _06: Option<String>,
869    #[serde(rename = "07")]
870    pub _07: Option<crate::v005010::element::E408>,
871    #[serde(rename = "08")]
872    pub _08: Option<String>,
873    #[serde(rename = "09")]
874    pub _09: Option<crate::v005010::element::E408>,
875    #[serde(rename = "10")]
876    pub _10: Option<String>,
877    #[serde(rename = "11")]
878    pub _11: Option<crate::v005010::element::E408>,
879}
880
881/// LH3 - Hazardous Material Shipping Name
882///
883/// To specify the hazardous material shipping name and additional descriptive requirements
884///
885/// REF | ID | NAME | REPEAT | REQ | TYPE | MIN/MAX
886/// ----|----|-------|--------|----|------|-------
887/// 01 | 224 | Hazardous Material Shipping Name | 1 | X | AN | 1/25
888/// 02 | 984 | Hazardous Material Shipping Name Qualifier | 1 | X | ID | 1/1
889/// 03 | 985 | N.O.S. Indicator Code | 1 | O | ID | 3/3
890/// 04 | 1073 | Yes/No Condition or Response Code | 1 | O/Z | ID | 1/1
891#[derive(
892    Serialize, Deserialize, Clone, Default, Debug, PartialEq, Eq, DisplaySegment, ParseSegment,
893)]
894pub struct LH3 {
895    #[serde(rename = "01")]
896    pub _01: Option<String>,
897    #[serde(rename = "02")]
898    pub _02: Option<crate::v005010::element::E984>,
899    #[serde(rename = "03")]
900    pub _03: Option<crate::v005010::element::E985>,
901    #[serde(rename = "04")]
902    pub _04: Option<crate::v005010::element::E1073>,
903}
904
905/// LH4 - Canadian Dangerous Requirements
906///
907/// To specify additional Transport Canada requirements covering transportation of dangerous goods in Canada
908///
909/// REF | ID | NAME | REPEAT | REQ | TYPE | MIN/MAX
910/// --- | --- | ---- | ------ | --- | ---- | -----
911/// 01 | 238 | Emergency Response Plan Number | 1 | O | AN | 1/12
912/// 02 | 364 | Communication Number | 1 | O | AN | 1/80
913/// 03 | 254 | Packing Group Code | 1 | O | ID | 1/3
914/// 04 | 230 | Subsidiary Classification | 1 | O | ID | 1/3
915/// 05 | 230 | Subsidiary Classification | 1 | O | ID | 1/3
916/// 06 | 230 | Subsidiary Classification | 1 | O | ID | 1/3
917/// 07 | 271 | Subsidiary Risk Indicator | 1 | O | ID | 1/2
918/// 08 | 267 | Net Explosive Quantity | 1 | X | N0 | 1/6
919/// 09 | 805 | Canadian Hazardous Notation | 1 | O | AN | 1/25
920/// 10 | 986 | Special Commodity Indicator Code | 1 | O | ID | 1/1
921/// 11 | 364 | Communication Number | 1 | O/Z | AN | 1/80
922/// 12 | 355 | Unit or Basis for Measurement Code NEW | 1 | X | ID | 2/2
923#[derive(
924    Debug, Default, Clone, Serialize, Deserialize, PartialEq, Eq, DisplaySegment, ParseSegment,
925)]
926pub struct LH4 {
927    #[serde(rename = "01")]
928    pub _01: Option<String>,
929    #[serde(rename = "02")]
930    pub _02: Option<String>,
931    #[serde(rename = "03")]
932    pub _03: Option<String>,
933    #[serde(rename = "04")]
934    pub _04: Option<String>,
935    #[serde(rename = "05")]
936    pub _05: Option<String>,
937    #[serde(rename = "06")]
938    pub _06: Option<String>,
939    #[serde(rename = "07")]
940    pub _07: Option<crate::v005010::element::E271>,
941    #[serde(rename = "08")]
942    pub _08: Option<crate::v005010::element::E267>,
943    #[serde(rename = "09")]
944    pub _09: Option<String>,
945    #[serde(rename = "10")]
946    pub _10: Option<crate::v005010::element::E986>,
947    #[serde(rename = "11")]
948    pub _11: Option<String>,
949    #[serde(rename = "12")]
950    pub _12: Option<String>,
951}
952
953/// LH6 - Hazardous Certification
954///
955/// To specify the name of the person certifying that the shipment complies with the regulations and/or the actual certification
956///
957/// REF | ID | NAME | REPEAT | REQ | TYPE | MIN/MAX
958/// ----|----|-------|--------|----|------|-------
959/// 01 | 93 | Name | 1 | O | AN | 1/60
960/// 02 | 272 | Hazardous Certification Code | 1 | X | ID | 1/1
961/// 03 | 273 | Hazardous Certification Declaration | 1 | X | AN | 1/25
962/// 04 | 273 | Hazardous Certification Declaration | 1 | O | AN | 1/25
963#[derive(
964    Serialize, Deserialize, Clone, Default, Debug, PartialEq, Eq, DisplaySegment, ParseSegment,
965)]
966pub struct LH6 {
967    /// 93 - Name
968    ///
969    /// Free-form name
970    /// - TYPE=AN
971    /// - MIN=1
972    /// - MAX=60
973    #[serde(rename = "01")]
974    pub _01: Option<String>,
975    #[serde(rename = "02")]
976    pub _02: Option<crate::v005010::element::E272>,
977    #[serde(rename = "03")]
978    pub _03: Option<String>,
979    #[serde(rename = "04")]
980    pub _04: Option<String>,
981}
982
983/// LHE - Empty Equipment Hazardous Material Information
984///
985/// To identify hazardous material information for empty equipment
986///
987/// REF | ID | NAME | REPEAT | REQ | TYPE | MIN/MAX
988/// ----|----|-------|--------|----|------|-------
989/// 01 | 224 | Hazardous Material Shipping Name | 1 | M | AN | 1/25
990/// 02 | 218 | Hazardous Placard Notation | 1 | M | ID | 14/40
991/// 03 | 128 | Reference Identification Qualifier | 1 | M | ID | 2/3
992/// 04 | 127 | Reference Identification | 1 | M | AN | 1/50
993/// 05 | 759 | Reportable Quantity Code | 1 | O | ID | 2/2
994#[derive(
995    Serialize, Deserialize, Clone, Default, Debug, PartialEq, Eq, DisplaySegment, ParseSegment,
996)]
997pub struct LHE {
998    #[serde(rename = "01")]
999    pub _01: String,
1000    #[serde(rename = "02")]
1001    pub _02: String,
1002    #[serde(rename = "03")]
1003    pub _03: String,
1004    #[serde(rename = "04")]
1005    pub _04: String,
1006    #[serde(rename = "05")]
1007    pub _05: Option<crate::v005010::element::E759>,
1008}
1009
1010/// LHR - Hazardous Material Identifying Reference Numbers
1011///
1012/// To transmit specific hazardous material reference numbers
1013///
1014/// REF | ID | NAME | REPEAT | REQ | TYPE | MIN/MAX
1015/// ----|----|-------|--------|----|------|-------
1016/// 01 | 128 | Reference Identification Qualifier | 1 | M | ID | 2/3
1017/// 02 | 127 | Reference Identification | 1 | M | AN | 1/30
1018/// 03 | 373 | Date NEW | 1 | O | DT | 8/8
1019#[derive(
1020    Serialize, Deserialize, Clone, Default, Debug, PartialEq, Eq, DisplaySegment, ParseSegment,
1021)]
1022pub struct LHR {
1023    #[serde(rename = "01")]
1024    pub _01: String,
1025    #[serde(rename = "02")]
1026    pub _02: String,
1027    /// 373 - Date
1028    ///
1029    /// Date expressed as CCYYMMDD where CC represents the first two digits of the calendar year
1030    /// - TYPE=DT
1031    /// - MIN=8
1032    /// - MAX=8
1033    #[serde(rename = "03")]
1034    pub _03: Option<String>,
1035}
1036
1037/// LHT - Transborder Hazardous Requirements
1038///
1039/// To specify the placard information required by the second government agency when shipment is to cross into another country
1040///
1041/// REF | ID | NAME | REPEAT | REQ | TYPE | MIN/MAX
1042/// ----|----|-------|--------|----|------|-------
1043/// 01 | 215 | Hazardous Classification | 1 | O | ID | 1/30
1044/// 02 | 218 | Hazardous Placard Notation | 1 | O | ID | 14/40
1045/// 03 | 222 | Hazardous Endorsement | 1 | O | ID | 4/25
1046#[derive(
1047    Serialize, Deserialize, Clone, Default, Debug, PartialEq, Eq, DisplaySegment, ParseSegment,
1048)]
1049pub struct LHT {
1050    #[serde(rename = "01")]
1051    pub _01: Option<String>,
1052    #[serde(rename = "02")]
1053    pub _02: Option<String>,
1054    #[serde(rename = "03")]
1055    pub _03: Option<String>,
1056}
1057
1058/// L0 - Line Item - Quantity and Weight
1059///
1060/// To specify quantity, weight, volume, and type of service for a line item including applicable "quantity/rate-as" data
1061///
1062/// REF | ID | NAME | REPEAT | REQ | TYPE | MIN/MAX
1063/// ----|----|-------|--------|----|------|-------
1064/// 01 | 213 | Lading Line Item Number | 1 | O | N0 | 1/3
1065/// 02 | 220 | Billed/Rated-as Quantity | 1 | X | R | 1/11
1066/// 03 | 221 | Billed/Rated-as Qualifier | 1 | X | ID | 2/2
1067/// 04 | 81 | Weight | 1 | X | R | 1/10
1068/// 05 | 187 | Weight Qualifier | 1 | X | ID | 1/2
1069/// 06 | 183 | Volume | 1 | X | R | 1/8
1070/// 07 | 184 | Volume Unit Qualifier | 1 | X | ID | 1/1
1071/// 08 | 80 | Lading Quantity | 1 | X/Z | N0 | 1/7
1072/// 09 | 211 | Packaging Form Code | 1 | X | ID | 3/3
1073/// 10 | 458 | Dunnage Description | 1 | O | AN | 2/25
1074/// 11 | 188 | Weight Unit Code | 1 | O | ID | 1/1
1075/// 12 | 56 | Type of Service Code | 1 | O | ID | 2/2
1076/// 13 | 380 | Quantity | 1 | X/Z | R | 1/15
1077/// 14 | 211 | Packaging Form Code | 1 | O | ID | 3/3
1078/// 15 | 1073 | Yes/No Condition or Response Code | 1 | X/Z | ID | 1/1
1079#[derive(
1080    Serialize, Deserialize, Clone, Default, Debug, PartialEq, Eq, DisplaySegment, ParseSegment,
1081)]
1082pub struct L0 {
1083    #[serde(rename = "01")]
1084    pub _01: Option<crate::v005010::element::E213>,
1085    #[serde(rename = "02")]
1086    pub _02: Option<crate::v005010::element::E220>,
1087    #[serde(rename = "03")]
1088    pub _03: Option<crate::v005010::element::E221>,
1089    #[serde(rename = "04")]
1090    pub _04: Option<crate::v005010::element::E81>,
1091    #[serde(rename = "05")]
1092    pub _05: Option<String>,
1093    #[serde(rename = "06")]
1094    pub _06: Option<crate::v005010::element::E183>,
1095    #[serde(rename = "07")]
1096    pub _07: Option<crate::v005010::element::E184>,
1097    #[serde(rename = "08")]
1098    pub _08: Option<crate::v005010::element::E80>,
1099    #[serde(rename = "09")]
1100    pub _09: Option<crate::v005010::element::E211>,
1101    #[serde(rename = "10")]
1102    pub _10: Option<String>,
1103    #[serde(rename = "11")]
1104    pub _11: Option<String>,
1105    #[serde(rename = "12")]
1106    pub _12: Option<String>,
1107    #[serde(rename = "13")]
1108    pub _13: Option<String>,
1109    #[serde(rename = "14")]
1110    pub _14: Option<crate::v005010::element::E211>,
1111    #[serde(rename = "15")]
1112    pub _15: Option<crate::v005010::element::E1073>,
1113}
1114
1115/// L1 - Rate and Charges
1116///
1117/// To specify rate and charges detail relative to a line item including freight charges, advances, special charges, and entitlements
1118///
1119/// REF | ID | NAME | REPEAT | REQ | TYPE | MIN/MAX
1120/// ----|----|-------|--------|----|------|-------
1121/// 01 | 213 | Lading Line Item Number | 1 | O | N0 | 1/3
1122/// 02 | 60 | Freight Rate | 1 | X | R | 1/9
1123/// 03 | 122 | Rate/Value Qualifier | 1 | X | ID | 2/2
1124/// 04 | 58 | Charge | 1 | X | N2 | 1/12
1125/// 05 | 191 | Advances | 1 | X | N2 | 1/9
1126/// 06 | 117 | Prepaid Amount | 1 | X | N2 | 1/9
1127/// 07 | 120 | Rate Combination Point Code | 1 | O | AN | 3/9
1128/// 08 | 150 | Special Charge or Allowance Code | 1 | O | ID | 3/3
1129/// 09 | 121 | Rate Class Code | 1 | O | ID | 1/3
1130/// 10 | 39 | Entitlement Code | 1 | O | ID | 1/1
1131/// 11 | 16 | Charge Method of Payment | 1 | O | ID | 1/1
1132/// 12 | 276 | Special Charge Description | 1 | O | AN | 2/25
1133/// 13 | 257 | Tariff Application Code | 1 | O | ID | 1/1
1134/// 14 | 74 | Declared Value | 1 | X | N2 | 2/12
1135/// 15 | 122 | Rate/Value Qualifier | 1 | X | ID | 2/2
1136/// 16 | 372 | Lading Liability Code | 1 | O | ID | 1/1
1137/// 17 | 220 | Billed/Rated-as Quantity | 1 | X | R | 1/11
1138/// 18 | 221 | Billed/Rated-as Qualifier | 1 | X | ID | 2/2
1139/// 19 | 954 | Percent | 1 | O/Z | R | 1/10
1140/// 20 | 100 | Currency Code | 1 | O/Z | ID | 3/3
1141/// 21 | 610 | Amount | 1 | O/Z | N2 | 1/15
1142#[derive(
1143    Serialize, Deserialize, Clone, Default, Debug, PartialEq, Eq, DisplaySegment, ParseSegment,
1144)]
1145pub struct L1 {
1146    #[serde(rename = "01")]
1147    pub _01: Option<crate::v005010::element::E213>,
1148    #[serde(rename = "02")]
1149    pub _02: Option<crate::v005010::element::E60>,
1150    #[serde(rename = "03")]
1151    pub _03: Option<crate::v005010::element::E122>,
1152    #[serde(rename = "04")]
1153    pub _04: Option<crate::v005010::element::E58>,
1154    #[serde(rename = "05")]
1155    pub _05: Option<crate::v005010::element::E191>,
1156    #[serde(rename = "06")]
1157    pub _06: Option<crate::v005010::element::E117>,
1158    #[serde(rename = "07")]
1159    pub _07: Option<String>,
1160    #[serde(rename = "08")]
1161    pub _08: Option<crate::v005010::element::E150>,
1162    #[serde(rename = "09")]
1163    pub _09: Option<crate::v005010::element::E121>,
1164    #[serde(rename = "10")]
1165    pub _10: Option<crate::v005010::element::E39>,
1166    #[serde(rename = "11")]
1167    pub _11: Option<String>,
1168    #[serde(rename = "12")]
1169    pub _12: Option<String>,
1170    #[serde(rename = "13")]
1171    pub _13: Option<crate::v005010::element::E257>,
1172    #[serde(rename = "14")]
1173    pub _14: Option<crate::v005010::element::E74>,
1174    #[serde(rename = "15")]
1175    pub _15: Option<crate::v005010::element::E122>,
1176    #[serde(rename = "16")]
1177    pub _16: Option<crate::v005010::element::E372>,
1178    #[serde(rename = "17")]
1179    pub _17: Option<crate::v005010::element::E220>,
1180    #[serde(rename = "18")]
1181    pub _18: Option<crate::v005010::element::E221>,
1182    #[serde(rename = "19")]
1183    pub _19: Option<crate::v005010::element::E954>,
1184    #[serde(rename = "20")]
1185    pub _20: Option<String>,
1186    #[serde(rename = "21")]
1187    pub _21: Option<crate::v005010::element::E610>,
1188}