Skip to main content

x12_types/v004010/segment/
c.rs

1use serde::{Deserialize, Serialize};
2use x12_types_macros::{DisplaySegment, ParseSegment};
3
4/// C2 - Currency
5///
6/// To specify the currency used in the transaction
7///
8/// REF | ID | NAME | REPEAT | REQ | TYPE | MIN/MAX
9/// ----|----|-------|--------|----|------|-------
10/// 01 | 100 | Currency Code | 1 | M | ID | 3/3
11/// 02 | 100 | Exchange Rate | 1 | O | R | 1/15
12/// 03 | 100 | Currency Code | 1 | O | ID | 3/3
13/// 04 | 100 | Exchange Rate | 1 | O | R | 1/15
14/// 05 | 100 | Currency Code | 1 | O | ID | 3/3
15/// 06 | 100 | Exchange Rate | 1 | O | R | 1/15
16/// 07 | 100 | Currency Code | 1 | O | ID | 3/3
17#[derive(
18    Serialize, Deserialize, Clone, Default, Debug, PartialEq, Eq, DisplaySegment, ParseSegment,
19)]
20pub struct C2 {
21    #[serde(rename = "01")]
22    pub _01: crate::v004010::element::E100,
23    #[serde(rename = "02")]
24    pub _02: crate::v004010::element::E100,
25    #[serde(rename = "03")]
26    pub _03: crate::v004010::element::E100,
27    #[serde(rename = "04")]
28    pub _04: Option<crate::v004010::element::E100>,
29    #[serde(rename = "05")]
30    pub _05: Option<crate::v004010::element::E100>,
31    #[serde(rename = "06")]
32    pub _06: Option<crate::v004010::element::E100>,
33    #[serde(rename = "07")]
34    pub _07: Option<crate::v004010::element::E100>,
35}
36
37/// C3 - Currency
38///
39/// To specify the currency used in the transaction
40///
41/// REF | ID | NAME | REPEAT | REQ | TYPE | MIN/MAX
42/// ----|----|-------|--------|----|------|-------
43/// 01 | 100 | Currency Code | 1 | M | ID | 3/3
44/// 02 | 100 | Exchange Rate | 1 | O | R | 1/15
45/// 03 | 100 | Currency Code | 1 | O | ID | 3/3
46/// 04 | 100 | Exchange Rate | 1 | O | R | 1/15
47#[derive(
48    Serialize, Deserialize, Clone, Default, Debug, PartialEq, Eq, DisplaySegment, ParseSegment,
49)]
50pub struct C3 {
51    #[serde(rename = "01")]
52    pub _01: crate::v004010::element::E100,
53    #[serde(rename = "02")]
54    pub _02: Option<crate::v004010::element::E100>,
55    #[serde(rename = "03")]
56    pub _03: Option<crate::v004010::element::E100>,
57    #[serde(rename = "04")]
58    pub _04: Option<crate::v004010::element::E100>,
59}
60
61/// C8 - Certificate of Compliance
62///
63/// To specify certificate of compliance information
64///
65/// REF | ID | NAME | REPEAT | REQ | TYPE | MIN/MAX
66/// ----|----|-------|--------|----|------|-------
67/// 01 | 100 | Certificate Type Code | 1 | O | ID | 2/2
68/// 02 | 100 | Certificate Number | 1 | O | AN | 1/30
69/// 03 | 100 | Certificate Number | 1 | O | AN | 1/30
70/// 04 | 100 | Certificate Number | 1 | O | AN | 1/30
71#[derive(
72    Serialize, Deserialize, Clone, Default, Debug, PartialEq, Eq, DisplaySegment, ParseSegment,
73)]
74pub struct C8 {
75    #[serde(rename = "01")]
76    pub _01: Option<crate::v004010::element::E100>,
77    #[serde(rename = "02")]
78    pub _02: Option<crate::v004010::element::E100>,
79    #[serde(rename = "03")]
80    pub _03: Option<crate::v004010::element::E100>,
81    #[serde(rename = "04")]
82    pub _04: Option<crate::v004010::element::E100>,
83}
84
85/// C8C - Certificate of Compliance
86///
87/// To specify certificate of compliance information
88///
89/// REF | ID | NAME | REPEAT | REQ | TYPE | MIN/MAX
90/// ----|----|-------|--------|----|------|-------
91/// 01 | 100 | Certificate Type Code | 1 | M | ID | 2/2
92/// 02 | 100 | Certificate Number | 1 | O | AN | 1/30
93/// 03 | 100 | Certificate Number | 1 | O | AN | 1/30
94#[derive(
95    Serialize, Deserialize, Clone, Default, Debug, PartialEq, Eq, DisplaySegment, ParseSegment,
96)]
97pub struct C8C {
98    #[serde(rename = "01")]
99    pub _01: crate::v004010::element::E100,
100    #[serde(rename = "02")]
101    pub _02: Option<crate::v004010::element::E100>,
102    #[serde(rename = "03")]
103    pub _03: Option<crate::v004010::element::E100>,
104}
105
106/// CAD - Carrier Detail
107///
108/// To specify the carrier details
109///
110/// REF | ID | NAME | REPEAT | REQ | TYPE | MIN/MAX
111/// ----|----|-------|--------|----|------|-------
112/// 01 | 100 | Transportation Method/Type Code | 1 | M | ID | 1/2
113/// 02 | 100 | Equipment Initial | 1 | O | AN | 1/4
114/// 03 | 100 | Equipment Number | 1 | O | AN | 1/10
115/// 04 | 100 | Standard Carrier Alpha Code | 1 | O | ID | 2/4
116/// 05 | 100 | Routing | 1 | O | AN | 1/35
117/// 06 | 100 | Shipment/Order Status Code | 1 | O | ID | 2/2
118/// 07 | 100 | Reference Identification Qualifier | 1 | O | ID | 2/3
119/// 08 | 100 | Reference Identification | 1 | O | AN | 1/30
120/// 09 | 100 | Service Level Code | 1 | O | ID | 2/2
121#[derive(
122    Serialize, Deserialize, Clone, Default, Debug, PartialEq, Eq, DisplaySegment, ParseSegment,
123)]
124pub struct CAD {
125    #[serde(rename = "01")]
126    pub _01: crate::v004010::element::E100,
127    #[serde(rename = "02")]
128    pub _02: Option<crate::v004010::element::E100>,
129    #[serde(rename = "03")]
130    pub _03: Option<crate::v004010::element::E100>,
131    #[serde(rename = "04")]
132    pub _04: Option<crate::v004010::element::E100>,
133    #[serde(rename = "05")]
134    pub _05: Option<crate::v004010::element::E100>,
135    #[serde(rename = "06")]
136    pub _06: Option<crate::v004010::element::E100>,
137    #[serde(rename = "07")]
138    pub _07: Option<crate::v004010::element::E100>,
139    #[serde(rename = "08")]
140    pub _08: Option<crate::v004010::element::E100>,
141    #[serde(rename = "09")]
142    pub _09: Option<crate::v004010::element::E100>,
143}
144
145/// CD3 - Car Detail
146///
147/// To specify the car details
148///
149/// REF | ID | NAME | REPEAT | REQ | TYPE | MIN/MAX
150/// ----|----|-------|--------|----|------|-------
151/// 01 | 100 | Equipment Initial | 1 | O | AN | 1/4
152/// 02 | 100 | Equipment Number | 1 | O | AN | 1/10
153/// 03 | 100 | Equipment Type | 1 | O | ID | 4/4
154/// 04 | 100 | Equipment Number | 1 | O | AN | 1/10
155/// 05 | 100 | Equipment Number | 1 | O | AN | 1/10
156/// 06 | 100 | Equipment Number | 1 | O | AN | 1/10
157/// 07 | 100 | Equipment Number | 1 | O | AN | 1/10
158/// 08 | 100 | Equipment Number | 1 | O | AN | 1/10
159/// 09 | 100 | Equipment Number | 1 | O | AN | 1/10
160/// 10 | 100 | Equipment Number | 1 | O | AN | 1/10
161/// 11 | 100 | Equipment Number | 1 | O | AN | 1/10
162/// 12 | 100 | Equipment Number | 1 | O | AN | 1/10
163/// 13 | 100 | Equipment Number | 1 | O | AN | 1/10
164/// 14 | 100 | Country Code | 1 | O | ID | 2/3
165#[derive(
166    Serialize, Deserialize, Clone, Default, Debug, PartialEq, Eq, DisplaySegment, ParseSegment,
167)]
168pub struct CD3 {
169    #[serde(rename = "01")]
170    pub _01: Option<crate::v004010::element::E100>,
171    #[serde(rename = "02")]
172    pub _02: Option<crate::v004010::element::E100>,
173    #[serde(rename = "03")]
174    pub _03: Option<crate::v004010::element::E100>,
175    #[serde(rename = "04")]
176    pub _04: Option<crate::v004010::element::E100>,
177    #[serde(rename = "05")]
178    pub _05: Option<crate::v004010::element::E100>,
179    #[serde(rename = "06")]
180    pub _06: Option<crate::v004010::element::E100>,
181    #[serde(rename = "07")]
182    pub _07: Option<crate::v004010::element::E100>,
183    #[serde(rename = "08")]
184    pub _08: Option<crate::v004010::element::E100>,
185    #[serde(rename = "09")]
186    pub _09: Option<crate::v004010::element::E100>,
187    #[serde(rename = "10")]
188    pub _10: Option<crate::v004010::element::E100>,
189    #[serde(rename = "11")]
190    pub _11: Option<crate::v004010::element::E100>,
191    #[serde(rename = "12")]
192    pub _12: Option<crate::v004010::element::E100>,
193    #[serde(rename = "13")]
194    pub _13: Option<crate::v004010::element::E100>,
195    /// 26 - Country Code
196    ///
197    /// Code identifying the country
198    /// - TYPE=ID
199    /// - MIN=2
200    /// - MAX=3
201    #[serde(rename = "14")]
202    pub _14: Option<crate::v004010::element::E100>,
203}
204
205/// CM - Car Shipment Information
206///
207/// To specify car shipment information
208///
209/// REF | ID | NAME | REPEAT | REQ | TYPE | MIN/MAX
210/// ----|----|-------|--------|----|------|-------
211/// 01 | 100 | Equipment Initial | 1 | O | AN | 1/4
212/// 02 | 100 | Equipment Number | 1 | O | AN | 1/10
213/// 03 | 100 | Equipment Type | 1 | O | ID | 4/4
214/// 04 | 373 | Date | 1 | O | DT | 8/8
215/// 05 | 100 | Equipment Number | 1 | O | AN | 1/10
216/// 06 | 100 | Equipment Number | 1 | O | AN | 1/10
217/// 07 | 100 | Equipment Number | 1 | O | AN | 1/10
218/// 08 | 373 | Date | 1 | O | DT | 8/8
219/// 09 | 100 | Equipment Number | 1 | O | AN | 1/10
220/// 10 | 100 | Equipment Number | 1 | O | AN | 1/10
221/// 11 | 100 | Equipment Number | 1 | O | AN | 1/10
222/// 12 | 100 | Equipment Number | 1 | O | AN | 1/10
223/// 13 | 100 | Equipment Number | 1 | O | AN | 1/10
224/// 14 | 26 | Country Code | 1 | O | ID | 2/3
225/// 15 | 100 | Equipment Number | 1 | O | AN | 1/10
226/// 16 | 100 | Equipment Number | 1 | O | AN | 1/10
227/// 17 | 100 | Equipment Number | 1 | O | AN | 1/10
228#[derive(
229    Serialize, Deserialize, Clone, Default, Debug, PartialEq, Eq, DisplaySegment, ParseSegment,
230)]
231pub struct CM {
232    #[serde(rename = "01")]
233    pub _01: Option<crate::v004010::element::E100>,
234    #[serde(rename = "02")]
235    pub _02: Option<crate::v004010::element::E100>,
236    #[serde(rename = "03")]
237    pub _03: Option<crate::v004010::element::E100>,
238    /// 373 - Date
239    ///
240    /// Date expressed as CCYYMMDD where CC represents the first two digits of the calendar year
241    /// - TYPE=DT
242    /// - MIN=8
243    /// - MAX=8
244    #[serde(rename = "04")]
245    pub _04: Option<crate::v004010::element::E373>,
246    #[serde(rename = "05")]
247    pub _05: Option<crate::v004010::element::E100>,
248    #[serde(rename = "06")]
249    pub _06: Option<crate::v004010::element::E100>,
250    #[serde(rename = "07")]
251    pub _07: Option<crate::v004010::element::E100>,
252    /// 373 - Date
253    ///
254    /// Date expressed as CCYYMMDD where CC represents the first two digits of the calendar year
255    /// - TYPE=DT
256    /// - MIN=8
257    /// - MAX=8
258    #[serde(rename = "08")]
259    pub _08: Option<crate::v004010::element::E373>,
260    #[serde(rename = "09")]
261    pub _09: Option<crate::v004010::element::E100>,
262    #[serde(rename = "10")]
263    pub _10: Option<crate::v004010::element::E100>,
264    #[serde(rename = "11")]
265    pub _11: Option<crate::v004010::element::E100>,
266    #[serde(rename = "12")]
267    pub _12: Option<crate::v004010::element::E100>,
268    #[serde(rename = "13")]
269    pub _13: Option<crate::v004010::element::E100>,
270    /// 26 - Country Code
271    ///
272    /// Code identifying the country
273    /// - TYPE=ID
274    /// - MIN=2
275    /// - MAX=3
276    #[serde(rename = "14")]
277    pub _14: Option<String>,
278    #[serde(rename = "15")]
279    pub _15: Option<crate::v004010::element::E100>,
280    #[serde(rename = "16")]
281    pub _16: Option<crate::v004010::element::E100>,
282    #[serde(rename = "17")]
283    pub _17: Option<crate::v004010::element::E100>,
284}
285
286/// CRC - Conditions Indicator
287///
288/// To specify conditions indicator
289///
290/// REF | ID | NAME | REPEAT | REQ | TYPE | MIN/MAX
291/// ----|----|-------|--------|----|------|-------
292/// 01 | 100 | Code Category | 1 | M | ID | 2/2
293/// 02 | 100 | Yes/No Condition or Response Code | 1 | M | ID | 1/1
294/// 03 | 100 | Condition Indicator | 1 | M | ID | 2/3
295/// 04 | 100 | Condition Indicator | 1 | O | ID | 2/3
296/// 05 | 100 | Condition Indicator | 1 | O | ID | 2/3
297/// 06 | 100 | Condition Indicator | 1 | O | ID | 2/3
298/// 07 | 100 | Condition Indicator | 1 | O | ID | 2/3
299#[derive(
300    Serialize, Deserialize, Clone, Default, Debug, PartialEq, Eq, DisplaySegment, ParseSegment,
301)]
302pub struct CRC {
303    #[serde(rename = "01")]
304    pub _01: crate::v004010::element::E100,
305    #[serde(rename = "02")]
306    pub _02: crate::v004010::element::E100,
307    #[serde(rename = "03")]
308    pub _03: crate::v004010::element::E100,
309    #[serde(rename = "04")]
310    pub _04: Option<crate::v004010::element::E100>,
311    #[serde(rename = "05")]
312    pub _05: Option<crate::v004010::element::E100>,
313    #[serde(rename = "06")]
314    pub _06: Option<crate::v004010::element::E100>,
315    #[serde(rename = "07")]
316    pub _07: Option<crate::v004010::element::E100>,
317}
318
319/// CTP - Pricing Information
320///
321/// To specify pricing information
322///
323/// REF | ID | NAME | REPEAT | REQ | TYPE | MIN/MAX
324/// ----|----|-------|--------|----|------|-------
325/// 01 | 100 | Class of Trade Code | 1 | O | ID | 2/2
326/// 02 | 100 | Price Identifier Code | 1 | O | ID | 3/3
327/// 03 | 100 | Unit Price | 1 | O | R | 1/17
328/// 04 | 100 | Quantity | 1 | O | R | 1/15
329/// 05 | 100 | Unit or Basis for Measurement Code | 1 | O | ID | 2/2
330/// 06 | 100 | Price Multiplier Qualifier | 1 | O | ID | 3/3
331/// 07 | 100 | Multiplier | 1 | O | R | 1/10
332/// 08 | 100 | Monetary Amount | 1 | O | R | 1/18
333/// 09 | 100 | Basis of Unit Price Code | 1 | O | ID | 2/2
334/// 10 | 100 | Condition Value | 1 | O | R | 1/10
335/// 11 | 100 | Multiple Price Quantity | 1 | O | N0 | 1/2
336#[derive(
337    Serialize, Deserialize, Clone, Default, Debug, PartialEq, Eq, DisplaySegment, ParseSegment,
338)]
339pub struct CTP {
340    #[serde(rename = "01")]
341    pub _01: Option<crate::v004010::element::E100>,
342    #[serde(rename = "02")]
343    pub _02: Option<crate::v004010::element::E100>,
344    #[serde(rename = "03")]
345    pub _03: Option<crate::v004010::element::E100>,
346    #[serde(rename = "04")]
347    pub _04: Option<crate::v004010::element::E100>,
348    #[serde(rename = "05")]
349    pub _05: Option<crate::v004010::element::E100>,
350    #[serde(rename = "06")]
351    pub _06: Option<crate::v004010::element::E100>,
352    #[serde(rename = "07")]
353    pub _07: Option<crate::v004010::element::E100>,
354    #[serde(rename = "08")]
355    pub _08: Option<crate::v004010::element::E100>,
356    #[serde(rename = "09")]
357    pub _09: Option<crate::v004010::element::E100>,
358    #[serde(rename = "10")]
359    pub _10: Option<crate::v004010::element::E100>,
360    #[serde(rename = "11")]
361    pub _11: Option<crate::v004010::element::E100>,
362}
363
364/// CTT - Transaction Totals
365///
366/// To transmit a hash total for a specific element in the transaction set
367///
368/// REF | ID | NAME | REPEAT | REQ | TYPE | MIN/MAX
369/// ----|----|-------|--------|----|------|-------
370/// 01 | 354 | Number of Line Items | 1 | M | N0 | 1/6
371/// 02 | 347 | Hash Total | 1 | O | R | 1/10
372/// 03 | 81 | Weight | 1 | O | R | 1/10
373/// 04 | 355 | Unit or Basis for Measurement Code | 1 | O | ID | 2/2
374/// 05 | 183 | Volume | 1 | O | R | 1/8
375/// 06 | 355 | Unit or Basis for Measurement Code | 1 | O | ID | 2/2
376/// 07 | 352 | Description | 1 | O | AN | 1/80
377#[derive(
378    Serialize, Deserialize, Clone, Default, Debug, PartialEq, Eq, DisplaySegment, ParseSegment,
379)]
380pub struct CTT {
381    #[serde(rename = "01")]
382    pub _01: crate::v004010::element::E354,
383    #[serde(rename = "02")]
384    pub _02: Option<crate::v004010::element::E347>,
385    #[serde(rename = "03")]
386    pub _03: Option<crate::v004010::element::E81>,
387    #[serde(rename = "04")]
388    pub _04: Option<String>,
389    #[serde(rename = "05")]
390    pub _05: Option<crate::v004010::element::E183>,
391    #[serde(rename = "06")]
392    pub _06: Option<String>,
393    #[serde(rename = "07")]
394    pub _07: Option<String>,
395}
396
397/// CUR - Currency
398///
399/// To specify the currency used in the transaction
400///
401/// REF | ID | NAME | REPEAT | REQ | TYPE | MIN/MAX
402/// ----|----|-------|--------|----|------|-------
403/// 01 | 98 | Entity Identifier Code | 1 | M | ID | 2/3
404/// 02 | 100 | Currency Code | 1 | M | ID | 3/3
405/// 03 | 280 | Exchange Rate | 1 | O | R | 1/15
406/// 04 | 98 | Entity Identifier Code | 1 | O | ID | 2/3
407/// 05 | 100 | Currency Code | 1 | O | ID | 3/3
408/// 06 | 280 | Exchange Rate | 1 | O | R | 1/15
409/// 07 | 98 | Entity Identifier Code | 1 | O | ID | 2/3
410/// 08 | 100 | Currency Code | 1 | O | ID | 3/3
411/// 09 | 280 | Exchange Rate | 1 | O | R | 1/15
412/// 10 | 98 | Entity Identifier Code | 1 | O | ID | 2/3
413/// 11 | 100 | Currency Code | 1 | O | ID | 3/3
414/// 12 | 280 | Exchange Rate | 1 | O | R | 1/15
415/// 13 | 98 | Entity Identifier Code | 1 | O | ID | 2/3
416/// 14 | 100 | Currency Code | 1 | O | ID | 3/3
417/// 15 | 280 | Exchange Rate | 1 | O | R | 1/15
418/// 16 | 98 | Entity Identifier Code | 1 | O | ID | 2/3
419/// 17 | 100 | Currency Code | 1 | O | ID | 3/3
420/// 18 | 280 | Exchange Rate | 1 | O | R | 1/15
421/// 19 | 98 | Entity Identifier Code | 1 | O | ID | 2/3
422/// 20 | 100 | Currency Code | 1 | O | ID | 3/3
423/// 21 | 280 | Exchange Rate | 1 | O | R | 1/15
424#[derive(
425    Serialize, Deserialize, Clone, Default, Debug, PartialEq, Eq, DisplaySegment, ParseSegment,
426)]
427pub struct CUR {
428    #[serde(rename = "01")]
429    pub _01: String,
430    #[serde(rename = "02")]
431    pub _02: crate::v004010::element::E100,
432    #[serde(rename = "03")]
433    pub _03: Option<crate::v004010::element::E280>,
434    #[serde(rename = "04")]
435    pub _04: Option<String>,
436    #[serde(rename = "05")]
437    pub _05: Option<crate::v004010::element::E100>,
438    #[serde(rename = "06")]
439    pub _06: Option<crate::v004010::element::E280>,
440    #[serde(rename = "07")]
441    pub _07: Option<String>,
442    #[serde(rename = "08")]
443    pub _08: Option<crate::v004010::element::E100>,
444    #[serde(rename = "09")]
445    pub _09: Option<crate::v004010::element::E280>,
446    #[serde(rename = "10")]
447    pub _10: Option<String>,
448    #[serde(rename = "11")]
449    pub _11: Option<crate::v004010::element::E100>,
450    #[serde(rename = "12")]
451    pub _12: Option<crate::v004010::element::E280>,
452    #[serde(rename = "13")]
453    pub _13: Option<String>,
454    #[serde(rename = "14")]
455    pub _14: Option<crate::v004010::element::E100>,
456    #[serde(rename = "15")]
457    pub _15: Option<crate::v004010::element::E280>,
458    #[serde(rename = "16")]
459    pub _16: Option<String>,
460    #[serde(rename = "17")]
461    pub _17: Option<crate::v004010::element::E100>,
462    #[serde(rename = "18")]
463    pub _18: Option<crate::v004010::element::E280>,
464    #[serde(rename = "19")]
465    pub _19: Option<String>,
466    #[serde(rename = "20")]
467    pub _20: Option<crate::v004010::element::E100>,
468    #[serde(rename = "21")]
469    pub _21: Option<crate::v004010::element::E280>,
470}
471
472/// CLD - Carrier Load Details
473///
474/// To specify the number of units and the type of packaging for the shipment
475///
476/// REF | ID | NAME | REPEAT | REQ | TYPE | MIN/MAX
477/// ----|----|-------|--------|----|------|-------
478/// 01 | 100 | Number of Units Shipped | 1 | M | N0 | 1/10
479/// 02 | 100 | Packaging Form Code | 1 | M | ID | 3/3
480/// 03 | 100 | Lading Quantity | 1 | O | N0 | 1/7
481/// 04 | 100 | Weight | 1 | O | R | 1/10
482/// 05 | 100 | Weight Unit Code | 1 | O | ID | 1/1
483/// 06 | 100 | Volume | 1 | O | R | 1/8
484/// 07 | 100 | Volume Unit Qualifier | 1 | O | ID | 1/1
485/// 08 | 100 | Description | 1 | O | AN | 1/80
486/// 09 | 100 | Lading Line Item Number | 1 | O | N0 | 1/6
487/// 10 | 100 | Commodity Code | 1 | O | AN | 1/30
488/// 11 | 100 | Commodity Code | 1 | O | AN | 1/30
489/// 12 | 100 | Commodity Code | 1 | O | AN | 1/30
490/// 13 | 100 | Commodity Code | 1 | O | AN | 1/30
491/// 14 | 100 | Commodity Code | 1 | O | AN | 1/30
492/// 15 | 100 | Commodity Code | 1 | O | AN | 1/30
493/// 16 | 100 | Commodity Code | 1 | O | AN | 1/30
494/// 17 | 100 | Commodity Code | 1 | O | AN | 1/30
495/// 18 | 100 | Commodity Code | 1 | O | AN | 1/30
496/// 19 | 100 | Commodity Code | 1 | O | AN | 1/30
497/// 20 | 100 | Commodity Code | 1 | O | AN | 1/30
498#[derive(
499    Serialize, Deserialize, Clone, Default, Debug, PartialEq, Eq, DisplaySegment, ParseSegment,
500)]
501pub struct CLD {
502    #[serde(rename = "01")]
503    pub _01: crate::v004010::element::E100,
504    #[serde(rename = "02")]
505    pub _02: crate::v004010::element::E100,
506    #[serde(rename = "03")]
507    pub _03: Option<crate::v004010::element::E100>,
508    #[serde(rename = "04")]
509    pub _04: Option<crate::v004010::element::E100>,
510    #[serde(rename = "05")]
511    pub _05: Option<crate::v004010::element::E100>,
512    #[serde(rename = "06")]
513    pub _06: Option<crate::v004010::element::E100>,
514    #[serde(rename = "07")]
515    pub _07: Option<crate::v004010::element::E100>,
516    #[serde(rename = "08")]
517    pub _08: Option<crate::v004010::element::E100>,
518    #[serde(rename = "09")]
519    pub _09: Option<crate::v004010::element::E100>,
520    #[serde(rename = "10")]
521    pub _10: Option<crate::v004010::element::E100>,
522    #[serde(rename = "11")]
523    pub _11: Option<crate::v004010::element::E100>,
524    #[serde(rename = "12")]
525    pub _12: Option<crate::v004010::element::E100>,
526    #[serde(rename = "13")]
527    pub _13: Option<crate::v004010::element::E100>,
528    #[serde(rename = "14")]
529    pub _14: Option<crate::v004010::element::E100>,
530    #[serde(rename = "15")]
531    pub _15: Option<crate::v004010::element::E100>,
532    #[serde(rename = "16")]
533    pub _16: Option<crate::v004010::element::E100>,
534    #[serde(rename = "17")]
535    pub _17: Option<crate::v004010::element::E100>,
536    #[serde(rename = "18")]
537    pub _18: Option<crate::v004010::element::E100>,
538    #[serde(rename = "19")]
539    pub _19: Option<crate::v004010::element::E100>,
540    #[serde(rename = "20")]
541    pub _20: Option<crate::v004010::element::E100>,
542}