1#![allow(non_camel_case_types)]
2
3#[cfg_attr(feature = "specta", derive(specta::Type))]
4#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
5#[derive(Debug, PartialEq, Eq, PartialOrd, Ord, Clone, Copy, Hash)]
6pub enum Charge {
7 Advertising,
9 Telecommunication,
11 TechnicalModification,
13 JobOrderProduction,
15 Outlays,
17 OffPremises,
19 AdditionalProcessing,
21 Attesting,
23 Acceptance,
25 RushDelivery,
27 SpecialConstruction,
29 AirportFacilities,
31 Concession,
33 CompulsoryStorage,
35 FuelRemoval,
37 IntoPlane,
39 Overtime,
41 Tooling,
43 Miscellaneous,
45 AdditionalPackaging,
47 Dunnage,
49 Containerisation,
51 CartonPacking,
53 HessianWrapped,
55 PolyethyleneWrapPacking,
57 MiscellaneousTreatment,
59 EnamellingTreatment,
61 HeatTreatment,
63 PlatingTreatment,
65 Painting,
67 Polishing,
69 Priming,
71 PreservationTreatment,
73 Fitting,
75 Consolidation,
77 BillLading,
79 Airbag,
81 Transfer,
83 Slipsheet,
85 Binding,
87 RepairOrReplacementBrokenReturnablePackage,
89 EfficientLogistics,
91 Merchandising,
93 ProductMix,
95 OtherServices,
97 PickUp,
99 ChronicIllness,
101 NewProductIntroduction,
103 DirectDelivery,
105 Diversion,
107 Disconnect,
109 Distribution,
111 HandlingHazardousCargo,
113 RentsAndLeases,
115 LocationDifferential,
117 AircraftRefueling,
119 FuelShippedIntoStorage,
121 CashOnDelivery,
123 SmallOrderProcessingService,
125 ClericalOrAdministrativeServices,
127 Guarantee,
129 CollectionAndRecycling,
131 CopyrightFeeCollection,
133 VeterinaryInspectionService,
135 PensionerService,
137 MedicineFreePassHolder,
139 EnvironmentalProtectionService,
141 EnvironmentalCleanUpService,
143 NationalChequeProcessingServiceOutsideAccountArea,
145 NationalPaymentServiceOutsideAccountArea,
147 NationalPaymentServiceWithinAccountArea,
149 Adjustments,
151 Authentication,
153 Cataloguing,
155 Cartage,
157 Certification,
159 CertificateConformance,
161 CertificateOrigin,
163 Cutting,
165 ConsularService,
167 CustomerCollection,
169 PayrollPaymentService,
171 CashTransportation,
173 HomeBankingService,
175 BilateralAgreementService,
177 InsuranceBrokerageService,
179 ChequeGeneration,
181 PreferentialMerchandisingLocation,
183 Crane,
185 SpecialColourService,
187 Sorting,
189 BatteryCollectionAndRecycling,
191 ProductTakeBackFee,
193 QualityControlReleased,
195 QualityControlHeld,
197 QualityControlEmbargo,
199 CarLoading,
201 Cleaning,
203 CigaretteStamping,
205 CountAndRecount,
207 LayoutDesign,
209 AssortmentAllowance,
211 DriverAssignedUnloading,
213 DebtorBound,
215 DealerAllowance,
217 AllowanceTransferableToConsumer,
219 GrowthBusiness,
221 IntroductionAllowance,
223 MultiBuyPromotion,
225 Partnership,
227 ReturnHandling,
229 MinimumOrderNotFulfilledCharge,
231 PointSalesThresholdAllowance,
233 WholesalingDiscount,
235 DocumentaryCreditsTransferCommission,
237 Delivery,
239 Engraving,
241 Expediting,
243 ExchangeRateGuarantee,
245 Fabrication,
247 FreightEqualization,
249 FreightExtraordinaryHandling,
251 FreightService,
253 FillingHandling,
255 Financing,
257 Grinding,
259 Hose,
261 Handling,
263 HoistingAndHauling,
265 Installation,
267 InstallationAndWarranty,
269 InsideDelivery,
271 Inspection,
273 InstallationAndTraining,
275 Invoicing,
277 Koshering,
279 CarrierCount,
281 Labelling,
283 Labour,
285 RepairAndReturn,
287 Legalisation,
289 Mounting,
291 MailInvoice,
293 MailInvoiceToEachLocation,
295 NonReturnableContainers,
297 OutsideCableConnectors,
299 InvoiceWithShipment,
301 PhosphatizingSteelTreatment,
303 Packing,
305 Palletizing,
307 PriceVariation,
309 Repacking,
311 Repair,
313 ReturnableContainer,
315 Restocking,
317 ReDelivery,
319 Refurbishing,
321 RailWagonHire,
323 Loading,
325 Salvaging,
327 ShippingAndHandling,
329 SpecialPackaging,
331 Stamping,
333 ConsigneeUnload,
335 ShrinkWrap,
337 SpecialHandling,
339 SpecialFinish,
341 SetUp,
343 TankRenting,
345 Testing,
347 TransportationThirdPartyBilling,
349 TransportationByVendor,
351 DropYard,
353 DropDock,
355 Warehousing,
357 CombineAllSameDayShipment,
359 SplitPickUp,
361 MutuallyDefined,
363}
364
365impl crate::Code for Charge {
366 fn code(self) -> &'static str {
367 match self {
368 Charge::Advertising => "AA",
369 Charge::Telecommunication => "AAA",
370 Charge::TechnicalModification => "AAC",
371 Charge::JobOrderProduction => "AAD",
372 Charge::Outlays => "AAE",
373 Charge::OffPremises => "AAF",
374 Charge::AdditionalProcessing => "AAH",
375 Charge::Attesting => "AAI",
376 Charge::Acceptance => "AAS",
377 Charge::RushDelivery => "AAT",
378 Charge::SpecialConstruction => "AAV",
379 Charge::AirportFacilities => "AAY",
380 Charge::Concession => "AAZ",
381 Charge::CompulsoryStorage => "ABA",
382 Charge::FuelRemoval => "ABB",
383 Charge::IntoPlane => "ABC",
384 Charge::Overtime => "ABD",
385 Charge::Tooling => "ABF",
386 Charge::Miscellaneous => "ABK",
387 Charge::AdditionalPackaging => "ABL",
388 Charge::Dunnage => "ABN",
389 Charge::Containerisation => "ABR",
390 Charge::CartonPacking => "ABS",
391 Charge::HessianWrapped => "ABT",
392 Charge::PolyethyleneWrapPacking => "ABU",
393 Charge::MiscellaneousTreatment => "ACF",
394 Charge::EnamellingTreatment => "ACG",
395 Charge::HeatTreatment => "ACH",
396 Charge::PlatingTreatment => "ACI",
397 Charge::Painting => "ACJ",
398 Charge::Polishing => "ACK",
399 Charge::Priming => "ACL",
400 Charge::PreservationTreatment => "ACM",
401 Charge::Fitting => "ACS",
402 Charge::Consolidation => "ADC",
403 Charge::BillLading => "ADE",
404 Charge::Airbag => "ADJ",
405 Charge::Transfer => "ADK",
406 Charge::Slipsheet => "ADL",
407 Charge::Binding => "ADM",
408 Charge::RepairOrReplacementBrokenReturnablePackage => "ADN",
409 Charge::EfficientLogistics => "ADO",
410 Charge::Merchandising => "ADP",
411 Charge::ProductMix => "ADQ",
412 Charge::OtherServices => "ADR",
413 Charge::PickUp => "ADT",
414 Charge::ChronicIllness => "ADW",
415 Charge::NewProductIntroduction => "ADY",
416 Charge::DirectDelivery => "ADZ",
417 Charge::Diversion => "AEA",
418 Charge::Disconnect => "AEB",
419 Charge::Distribution => "AEC",
420 Charge::HandlingHazardousCargo => "AED",
421 Charge::RentsAndLeases => "AEF",
422 Charge::LocationDifferential => "AEH",
423 Charge::AircraftRefueling => "AEI",
424 Charge::FuelShippedIntoStorage => "AEJ",
425 Charge::CashOnDelivery => "AEK",
426 Charge::SmallOrderProcessingService => "AEL",
427 Charge::ClericalOrAdministrativeServices => "AEM",
428 Charge::Guarantee => "AEN",
429 Charge::CollectionAndRecycling => "AEO",
430 Charge::CopyrightFeeCollection => "AEP",
431 Charge::VeterinaryInspectionService => "AES",
432 Charge::PensionerService => "AET",
433 Charge::MedicineFreePassHolder => "AEU",
434 Charge::EnvironmentalProtectionService => "AEV",
435 Charge::EnvironmentalCleanUpService => "AEW",
436 Charge::NationalChequeProcessingServiceOutsideAccountArea => "AEX",
437 Charge::NationalPaymentServiceOutsideAccountArea => "AEY",
438 Charge::NationalPaymentServiceWithinAccountArea => "AEZ",
439 Charge::Adjustments => "AJ",
440 Charge::Authentication => "AU",
441 Charge::Cataloguing => "CA",
442 Charge::Cartage => "CAB",
443 Charge::Certification => "CAD",
444 Charge::CertificateConformance => "CAE",
445 Charge::CertificateOrigin => "CAF",
446 Charge::Cutting => "CAI",
447 Charge::ConsularService => "CAJ",
448 Charge::CustomerCollection => "CAK",
449 Charge::PayrollPaymentService => "CAL",
450 Charge::CashTransportation => "CAM",
451 Charge::HomeBankingService => "CAN",
452 Charge::BilateralAgreementService => "CAO",
453 Charge::InsuranceBrokerageService => "CAP",
454 Charge::ChequeGeneration => "CAQ",
455 Charge::PreferentialMerchandisingLocation => "CAR",
456 Charge::Crane => "CAS",
457 Charge::SpecialColourService => "CAT",
458 Charge::Sorting => "CAU",
459 Charge::BatteryCollectionAndRecycling => "CAV",
460 Charge::ProductTakeBackFee => "CAW",
461 Charge::QualityControlReleased => "CAX",
462 Charge::QualityControlHeld => "CAY",
463 Charge::QualityControlEmbargo => "CAZ",
464 Charge::CarLoading => "CD",
465 Charge::Cleaning => "CG",
466 Charge::CigaretteStamping => "CS",
467 Charge::CountAndRecount => "CT",
468 Charge::LayoutDesign => "DAB",
469 Charge::AssortmentAllowance => "DAC",
470 Charge::DriverAssignedUnloading => "DAD",
471 Charge::DebtorBound => "DAF",
472 Charge::DealerAllowance => "DAG",
473 Charge::AllowanceTransferableToConsumer => "DAH",
474 Charge::GrowthBusiness => "DAI",
475 Charge::IntroductionAllowance => "DAJ",
476 Charge::MultiBuyPromotion => "DAK",
477 Charge::Partnership => "DAL",
478 Charge::ReturnHandling => "DAM",
479 Charge::MinimumOrderNotFulfilledCharge => "DAN",
480 Charge::PointSalesThresholdAllowance => "DAO",
481 Charge::WholesalingDiscount => "DAP",
482 Charge::DocumentaryCreditsTransferCommission => "DAQ",
483 Charge::Delivery => "DL",
484 Charge::Engraving => "EG",
485 Charge::Expediting => "EP",
486 Charge::ExchangeRateGuarantee => "ER",
487 Charge::Fabrication => "FAA",
488 Charge::FreightEqualization => "FAB",
489 Charge::FreightExtraordinaryHandling => "FAC",
490 Charge::FreightService => "FC",
491 Charge::FillingHandling => "FH",
492 Charge::Financing => "FI",
493 Charge::Grinding => "GAA",
494 Charge::Hose => "HAA",
495 Charge::Handling => "HD",
496 Charge::HoistingAndHauling => "HH",
497 Charge::Installation => "IAA",
498 Charge::InstallationAndWarranty => "IAB",
499 Charge::InsideDelivery => "ID",
500 Charge::Inspection => "IF",
501 Charge::InstallationAndTraining => "IR",
502 Charge::Invoicing => "IS",
503 Charge::Koshering => "KO",
504 Charge::CarrierCount => "L1",
505 Charge::Labelling => "LA",
506 Charge::Labour => "LAA",
507 Charge::RepairAndReturn => "LAB",
508 Charge::Legalisation => "LF",
509 Charge::Mounting => "MAE",
510 Charge::MailInvoice => "MI",
511 Charge::MailInvoiceToEachLocation => "ML",
512 Charge::NonReturnableContainers => "NAA",
513 Charge::OutsideCableConnectors => "OA",
514 Charge::InvoiceWithShipment => "PA",
515 Charge::PhosphatizingSteelTreatment => "PAA",
516 Charge::Packing => "PC",
517 Charge::Palletizing => "PL",
518 Charge::PriceVariation => "PRV",
519 Charge::Repacking => "RAB",
520 Charge::Repair => "RAC",
521 Charge::ReturnableContainer => "RAD",
522 Charge::Restocking => "RAF",
523 Charge::ReDelivery => "RE",
524 Charge::Refurbishing => "RF",
525 Charge::RailWagonHire => "RH",
526 Charge::Loading => "RV",
527 Charge::Salvaging => "SA",
528 Charge::ShippingAndHandling => "SAA",
529 Charge::SpecialPackaging => "SAD",
530 Charge::Stamping => "SAE",
531 Charge::ConsigneeUnload => "SAI",
532 Charge::ShrinkWrap => "SG",
533 Charge::SpecialHandling => "SH",
534 Charge::SpecialFinish => "SM",
535 Charge::SetUp => "SU",
536 Charge::TankRenting => "TAB",
537 Charge::Testing => "TAC",
538 Charge::TransportationThirdPartyBilling => "TT",
539 Charge::TransportationByVendor => "TV",
540 Charge::DropYard => "V1",
541 Charge::DropDock => "V2",
542 Charge::Warehousing => "WH",
543 Charge::CombineAllSameDayShipment => "XAA",
544 Charge::SplitPickUp => "YY",
545 Charge::MutuallyDefined => "ZZZ",
546 }
547 }
548}
549
550impl crate::Description for Charge {
551 fn description(self) -> &'static str {
552 match self {
553 Charge::Advertising => "Advertising",
554 Charge::Telecommunication => "Telecommunication",
555 Charge::TechnicalModification => "Technical modification",
556 Charge::JobOrderProduction => "Job-order production",
557 Charge::Outlays => "Outlays",
558 Charge::OffPremises => "Off-premises",
559 Charge::AdditionalProcessing => "Additional processing",
560 Charge::Attesting => "Attesting",
561 Charge::Acceptance => "Acceptance",
562 Charge::RushDelivery => "Rush delivery",
563 Charge::SpecialConstruction => "Special construction",
564 Charge::AirportFacilities => "Airport facilities",
565 Charge::Concession => "Concession",
566 Charge::CompulsoryStorage => "Compulsory storage",
567 Charge::FuelRemoval => "Fuel removal",
568 Charge::IntoPlane => "Into plane",
569 Charge::Overtime => "Overtime",
570 Charge::Tooling => "Tooling",
571 Charge::Miscellaneous => "Miscellaneous",
572 Charge::AdditionalPackaging => "Additional packaging",
573 Charge::Dunnage => "Dunnage",
574 Charge::Containerisation => "Containerisation",
575 Charge::CartonPacking => "Carton packing",
576 Charge::HessianWrapped => "Hessian wrapped",
577 Charge::PolyethyleneWrapPacking => "Polyethylene wrap packing",
578 Charge::MiscellaneousTreatment => "Miscellaneous treatment",
579 Charge::EnamellingTreatment => "Enamelling treatment",
580 Charge::HeatTreatment => "Heat treatment",
581 Charge::PlatingTreatment => "Plating treatment",
582 Charge::Painting => "Painting",
583 Charge::Polishing => "Polishing",
584 Charge::Priming => "Priming",
585 Charge::PreservationTreatment => "Preservation treatment",
586 Charge::Fitting => "Fitting",
587 Charge::Consolidation => "Consolidation",
588 Charge::BillLading => "Bill of lading",
589 Charge::Airbag => "Airbag",
590 Charge::Transfer => "Transfer",
591 Charge::Slipsheet => "Slipsheet",
592 Charge::Binding => "Binding",
593 Charge::RepairOrReplacementBrokenReturnablePackage => {
594 "Repair or replacement of broken returnable package"
595 }
596 Charge::EfficientLogistics => "Efficient logistics",
597 Charge::Merchandising => "Merchandising",
598 Charge::ProductMix => "Product mix",
599 Charge::OtherServices => "Other services",
600 Charge::PickUp => "Pick-up",
601 Charge::ChronicIllness => "Chronic illness",
602 Charge::NewProductIntroduction => "New product introduction",
603 Charge::DirectDelivery => "Direct delivery",
604 Charge::Diversion => "Diversion",
605 Charge::Disconnect => "Disconnect",
606 Charge::Distribution => "Distribution",
607 Charge::HandlingHazardousCargo => "Handling of hazardous cargo",
608 Charge::RentsAndLeases => "Rents and leases",
609 Charge::LocationDifferential => "Location differential",
610 Charge::AircraftRefueling => "Aircraft refueling",
611 Charge::FuelShippedIntoStorage => "Fuel shipped into storage",
612 Charge::CashOnDelivery => "Cash on delivery",
613 Charge::SmallOrderProcessingService => "Small order processing service",
614 Charge::ClericalOrAdministrativeServices => "Clerical or administrative services",
615 Charge::Guarantee => "Guarantee",
616 Charge::CollectionAndRecycling => "Collection and recycling",
617 Charge::CopyrightFeeCollection => "Copyright fee collection",
618 Charge::VeterinaryInspectionService => "Veterinary inspection service",
619 Charge::PensionerService => "Pensioner service",
620 Charge::MedicineFreePassHolder => "Medicine free pass holder",
621 Charge::EnvironmentalProtectionService => "Environmental protection service",
622 Charge::EnvironmentalCleanUpService => "Environmental clean-up service",
623 Charge::NationalChequeProcessingServiceOutsideAccountArea => {
624 "National cheque processing service outside account area"
625 }
626 Charge::NationalPaymentServiceOutsideAccountArea => {
627 "National payment service outside account area"
628 }
629 Charge::NationalPaymentServiceWithinAccountArea => {
630 "National payment service within account area"
631 }
632 Charge::Adjustments => "Adjustments",
633 Charge::Authentication => "Authentication",
634 Charge::Cataloguing => "Cataloguing",
635 Charge::Cartage => "Cartage",
636 Charge::Certification => "Certification",
637 Charge::CertificateConformance => "Certificate of conformance",
638 Charge::CertificateOrigin => "Certificate of origin",
639 Charge::Cutting => "Cutting",
640 Charge::ConsularService => "Consular service",
641 Charge::CustomerCollection => "Customer collection",
642 Charge::PayrollPaymentService => "Payroll payment service",
643 Charge::CashTransportation => "Cash transportation",
644 Charge::HomeBankingService => "Home banking service",
645 Charge::BilateralAgreementService => "Bilateral agreement service",
646 Charge::InsuranceBrokerageService => "Insurance brokerage service",
647 Charge::ChequeGeneration => "Cheque generation",
648 Charge::PreferentialMerchandisingLocation => "Preferential merchandising location",
649 Charge::Crane => "Crane",
650 Charge::SpecialColourService => "Special colour service",
651 Charge::Sorting => "Sorting",
652 Charge::BatteryCollectionAndRecycling => "Battery collection and recycling",
653 Charge::ProductTakeBackFee => "Product take back fee",
654 Charge::QualityControlReleased => "Quality control released",
655 Charge::QualityControlHeld => "Quality control held",
656 Charge::QualityControlEmbargo => "Quality control embargo",
657 Charge::CarLoading => "Car loading",
658 Charge::Cleaning => "Cleaning",
659 Charge::CigaretteStamping => "Cigarette stamping",
660 Charge::CountAndRecount => "Count and recount",
661 Charge::LayoutDesign => "Layout/design",
662 Charge::AssortmentAllowance => "Assortment allowance",
663 Charge::DriverAssignedUnloading => "Driver assigned unloading",
664 Charge::DebtorBound => "Debtor bound",
665 Charge::DealerAllowance => "Dealer allowance",
666 Charge::AllowanceTransferableToConsumer => "Allowance transferable to the consumer",
667 Charge::GrowthBusiness => "Growth of business",
668 Charge::IntroductionAllowance => "Introduction allowance",
669 Charge::MultiBuyPromotion => "Multi-buy promotion",
670 Charge::Partnership => "Partnership",
671 Charge::ReturnHandling => "Return handling",
672 Charge::MinimumOrderNotFulfilledCharge => "Minimum order not fulfilled charge",
673 Charge::PointSalesThresholdAllowance => "Point of sales threshold allowance",
674 Charge::WholesalingDiscount => "Wholesaling discount",
675 Charge::DocumentaryCreditsTransferCommission => {
676 "Documentary credits transfer commission"
677 }
678 Charge::Delivery => "Delivery",
679 Charge::Engraving => "Engraving",
680 Charge::Expediting => "Expediting",
681 Charge::ExchangeRateGuarantee => "Exchange rate guarantee",
682 Charge::Fabrication => "Fabrication",
683 Charge::FreightEqualization => "Freight equalization",
684 Charge::FreightExtraordinaryHandling => "Freight extraordinary handling",
685 Charge::FreightService => "Freight service",
686 Charge::FillingHandling => "Filling/handling",
687 Charge::Financing => "Financing",
688 Charge::Grinding => "Grinding",
689 Charge::Hose => "Hose",
690 Charge::Handling => "Handling",
691 Charge::HoistingAndHauling => "Hoisting and hauling",
692 Charge::Installation => "Installation",
693 Charge::InstallationAndWarranty => "Installation and warranty",
694 Charge::InsideDelivery => "Inside delivery",
695 Charge::Inspection => "Inspection",
696 Charge::InstallationAndTraining => "Installation and training",
697 Charge::Invoicing => "Invoicing",
698 Charge::Koshering => "Koshering",
699 Charge::CarrierCount => "Carrier count",
700 Charge::Labelling => "Labelling",
701 Charge::Labour => "Labour",
702 Charge::RepairAndReturn => "Repair and return",
703 Charge::Legalisation => "Legalisation",
704 Charge::Mounting => "Mounting",
705 Charge::MailInvoice => "Mail invoice",
706 Charge::MailInvoiceToEachLocation => "Mail invoice to each location",
707 Charge::NonReturnableContainers => "Non-returnable containers",
708 Charge::OutsideCableConnectors => "Outside cable connectors",
709 Charge::InvoiceWithShipment => "Invoice with shipment",
710 Charge::PhosphatizingSteelTreatment => "Phosphatizing (steel treatment)",
711 Charge::Packing => "Packing",
712 Charge::Palletizing => "Palletizing",
713 Charge::PriceVariation => "Price variation",
714 Charge::Repacking => "Repacking",
715 Charge::Repair => "Repair",
716 Charge::ReturnableContainer => "Returnable container",
717 Charge::Restocking => "Restocking",
718 Charge::ReDelivery => "Re-delivery",
719 Charge::Refurbishing => "Refurbishing",
720 Charge::RailWagonHire => "Rail wagon hire",
721 Charge::Loading => "Loading",
722 Charge::Salvaging => "Salvaging",
723 Charge::ShippingAndHandling => "Shipping and handling",
724 Charge::SpecialPackaging => "Special packaging",
725 Charge::Stamping => "Stamping",
726 Charge::ConsigneeUnload => "Consignee unload",
727 Charge::ShrinkWrap => "Shrink-wrap",
728 Charge::SpecialHandling => "Special handling",
729 Charge::SpecialFinish => "Special finish",
730 Charge::SetUp => "Set-up",
731 Charge::TankRenting => "Tank renting",
732 Charge::Testing => "Testing",
733 Charge::TransportationThirdPartyBilling => "Transportation - third party billing",
734 Charge::TransportationByVendor => "Transportation by vendor",
735 Charge::DropYard => "Drop yard",
736 Charge::DropDock => "Drop dock",
737 Charge::Warehousing => "Warehousing",
738 Charge::CombineAllSameDayShipment => "Combine all same day shipment",
739 Charge::SplitPickUp => "Split pick-up",
740 Charge::MutuallyDefined => "Mutually defined",
741 }
742 }
743}
744
745impl crate::FromCode for Charge {
746 fn from_code(code: &str) -> Option<Self>
747 where
748 Self: Sized,
749 {
750 match code {
751 "AA" => Some(Charge::Advertising),
752 "AAA" => Some(Charge::Telecommunication),
753 "AAC" => Some(Charge::TechnicalModification),
754 "AAD" => Some(Charge::JobOrderProduction),
755 "AAE" => Some(Charge::Outlays),
756 "AAF" => Some(Charge::OffPremises),
757 "AAH" => Some(Charge::AdditionalProcessing),
758 "AAI" => Some(Charge::Attesting),
759 "AAS" => Some(Charge::Acceptance),
760 "AAT" => Some(Charge::RushDelivery),
761 "AAV" => Some(Charge::SpecialConstruction),
762 "AAY" => Some(Charge::AirportFacilities),
763 "AAZ" => Some(Charge::Concession),
764 "ABA" => Some(Charge::CompulsoryStorage),
765 "ABB" => Some(Charge::FuelRemoval),
766 "ABC" => Some(Charge::IntoPlane),
767 "ABD" => Some(Charge::Overtime),
768 "ABF" => Some(Charge::Tooling),
769 "ABK" => Some(Charge::Miscellaneous),
770 "ABL" => Some(Charge::AdditionalPackaging),
771 "ABN" => Some(Charge::Dunnage),
772 "ABR" => Some(Charge::Containerisation),
773 "ABS" => Some(Charge::CartonPacking),
774 "ABT" => Some(Charge::HessianWrapped),
775 "ABU" => Some(Charge::PolyethyleneWrapPacking),
776 "ACF" => Some(Charge::MiscellaneousTreatment),
777 "ACG" => Some(Charge::EnamellingTreatment),
778 "ACH" => Some(Charge::HeatTreatment),
779 "ACI" => Some(Charge::PlatingTreatment),
780 "ACJ" => Some(Charge::Painting),
781 "ACK" => Some(Charge::Polishing),
782 "ACL" => Some(Charge::Priming),
783 "ACM" => Some(Charge::PreservationTreatment),
784 "ACS" => Some(Charge::Fitting),
785 "ADC" => Some(Charge::Consolidation),
786 "ADE" => Some(Charge::BillLading),
787 "ADJ" => Some(Charge::Airbag),
788 "ADK" => Some(Charge::Transfer),
789 "ADL" => Some(Charge::Slipsheet),
790 "ADM" => Some(Charge::Binding),
791 "ADN" => Some(Charge::RepairOrReplacementBrokenReturnablePackage),
792 "ADO" => Some(Charge::EfficientLogistics),
793 "ADP" => Some(Charge::Merchandising),
794 "ADQ" => Some(Charge::ProductMix),
795 "ADR" => Some(Charge::OtherServices),
796 "ADT" => Some(Charge::PickUp),
797 "ADW" => Some(Charge::ChronicIllness),
798 "ADY" => Some(Charge::NewProductIntroduction),
799 "ADZ" => Some(Charge::DirectDelivery),
800 "AEA" => Some(Charge::Diversion),
801 "AEB" => Some(Charge::Disconnect),
802 "AEC" => Some(Charge::Distribution),
803 "AED" => Some(Charge::HandlingHazardousCargo),
804 "AEF" => Some(Charge::RentsAndLeases),
805 "AEH" => Some(Charge::LocationDifferential),
806 "AEI" => Some(Charge::AircraftRefueling),
807 "AEJ" => Some(Charge::FuelShippedIntoStorage),
808 "AEK" => Some(Charge::CashOnDelivery),
809 "AEL" => Some(Charge::SmallOrderProcessingService),
810 "AEM" => Some(Charge::ClericalOrAdministrativeServices),
811 "AEN" => Some(Charge::Guarantee),
812 "AEO" => Some(Charge::CollectionAndRecycling),
813 "AEP" => Some(Charge::CopyrightFeeCollection),
814 "AES" => Some(Charge::VeterinaryInspectionService),
815 "AET" => Some(Charge::PensionerService),
816 "AEU" => Some(Charge::MedicineFreePassHolder),
817 "AEV" => Some(Charge::EnvironmentalProtectionService),
818 "AEW" => Some(Charge::EnvironmentalCleanUpService),
819 "AEX" => Some(Charge::NationalChequeProcessingServiceOutsideAccountArea),
820 "AEY" => Some(Charge::NationalPaymentServiceOutsideAccountArea),
821 "AEZ" => Some(Charge::NationalPaymentServiceWithinAccountArea),
822 "AJ" => Some(Charge::Adjustments),
823 "AU" => Some(Charge::Authentication),
824 "CA" => Some(Charge::Cataloguing),
825 "CAB" => Some(Charge::Cartage),
826 "CAD" => Some(Charge::Certification),
827 "CAE" => Some(Charge::CertificateConformance),
828 "CAF" => Some(Charge::CertificateOrigin),
829 "CAI" => Some(Charge::Cutting),
830 "CAJ" => Some(Charge::ConsularService),
831 "CAK" => Some(Charge::CustomerCollection),
832 "CAL" => Some(Charge::PayrollPaymentService),
833 "CAM" => Some(Charge::CashTransportation),
834 "CAN" => Some(Charge::HomeBankingService),
835 "CAO" => Some(Charge::BilateralAgreementService),
836 "CAP" => Some(Charge::InsuranceBrokerageService),
837 "CAQ" => Some(Charge::ChequeGeneration),
838 "CAR" => Some(Charge::PreferentialMerchandisingLocation),
839 "CAS" => Some(Charge::Crane),
840 "CAT" => Some(Charge::SpecialColourService),
841 "CAU" => Some(Charge::Sorting),
842 "CAV" => Some(Charge::BatteryCollectionAndRecycling),
843 "CAW" => Some(Charge::ProductTakeBackFee),
844 "CAX" => Some(Charge::QualityControlReleased),
845 "CAY" => Some(Charge::QualityControlHeld),
846 "CAZ" => Some(Charge::QualityControlEmbargo),
847 "CD" => Some(Charge::CarLoading),
848 "CG" => Some(Charge::Cleaning),
849 "CS" => Some(Charge::CigaretteStamping),
850 "CT" => Some(Charge::CountAndRecount),
851 "DAB" => Some(Charge::LayoutDesign),
852 "DAC" => Some(Charge::AssortmentAllowance),
853 "DAD" => Some(Charge::DriverAssignedUnloading),
854 "DAF" => Some(Charge::DebtorBound),
855 "DAG" => Some(Charge::DealerAllowance),
856 "DAH" => Some(Charge::AllowanceTransferableToConsumer),
857 "DAI" => Some(Charge::GrowthBusiness),
858 "DAJ" => Some(Charge::IntroductionAllowance),
859 "DAK" => Some(Charge::MultiBuyPromotion),
860 "DAL" => Some(Charge::Partnership),
861 "DAM" => Some(Charge::ReturnHandling),
862 "DAN" => Some(Charge::MinimumOrderNotFulfilledCharge),
863 "DAO" => Some(Charge::PointSalesThresholdAllowance),
864 "DAP" => Some(Charge::WholesalingDiscount),
865 "DAQ" => Some(Charge::DocumentaryCreditsTransferCommission),
866 "DL" => Some(Charge::Delivery),
867 "EG" => Some(Charge::Engraving),
868 "EP" => Some(Charge::Expediting),
869 "ER" => Some(Charge::ExchangeRateGuarantee),
870 "FAA" => Some(Charge::Fabrication),
871 "FAB" => Some(Charge::FreightEqualization),
872 "FAC" => Some(Charge::FreightExtraordinaryHandling),
873 "FC" => Some(Charge::FreightService),
874 "FH" => Some(Charge::FillingHandling),
875 "FI" => Some(Charge::Financing),
876 "GAA" => Some(Charge::Grinding),
877 "HAA" => Some(Charge::Hose),
878 "HD" => Some(Charge::Handling),
879 "HH" => Some(Charge::HoistingAndHauling),
880 "IAA" => Some(Charge::Installation),
881 "IAB" => Some(Charge::InstallationAndWarranty),
882 "ID" => Some(Charge::InsideDelivery),
883 "IF" => Some(Charge::Inspection),
884 "IR" => Some(Charge::InstallationAndTraining),
885 "IS" => Some(Charge::Invoicing),
886 "KO" => Some(Charge::Koshering),
887 "L1" => Some(Charge::CarrierCount),
888 "LA" => Some(Charge::Labelling),
889 "LAA" => Some(Charge::Labour),
890 "LAB" => Some(Charge::RepairAndReturn),
891 "LF" => Some(Charge::Legalisation),
892 "MAE" => Some(Charge::Mounting),
893 "MI" => Some(Charge::MailInvoice),
894 "ML" => Some(Charge::MailInvoiceToEachLocation),
895 "NAA" => Some(Charge::NonReturnableContainers),
896 "OA" => Some(Charge::OutsideCableConnectors),
897 "PA" => Some(Charge::InvoiceWithShipment),
898 "PAA" => Some(Charge::PhosphatizingSteelTreatment),
899 "PC" => Some(Charge::Packing),
900 "PL" => Some(Charge::Palletizing),
901 "PRV" => Some(Charge::PriceVariation),
902 "RAB" => Some(Charge::Repacking),
903 "RAC" => Some(Charge::Repair),
904 "RAD" => Some(Charge::ReturnableContainer),
905 "RAF" => Some(Charge::Restocking),
906 "RE" => Some(Charge::ReDelivery),
907 "RF" => Some(Charge::Refurbishing),
908 "RH" => Some(Charge::RailWagonHire),
909 "RV" => Some(Charge::Loading),
910 "SA" => Some(Charge::Salvaging),
911 "SAA" => Some(Charge::ShippingAndHandling),
912 "SAD" => Some(Charge::SpecialPackaging),
913 "SAE" => Some(Charge::Stamping),
914 "SAI" => Some(Charge::ConsigneeUnload),
915 "SG" => Some(Charge::ShrinkWrap),
916 "SH" => Some(Charge::SpecialHandling),
917 "SM" => Some(Charge::SpecialFinish),
918 "SU" => Some(Charge::SetUp),
919 "TAB" => Some(Charge::TankRenting),
920 "TAC" => Some(Charge::Testing),
921 "TT" => Some(Charge::TransportationThirdPartyBilling),
922 "TV" => Some(Charge::TransportationByVendor),
923 "V1" => Some(Charge::DropYard),
924 "V2" => Some(Charge::DropDock),
925 "WH" => Some(Charge::Warehousing),
926 "XAA" => Some(Charge::CombineAllSameDayShipment),
927 "YY" => Some(Charge::SplitPickUp),
928 "ZZZ" => Some(Charge::MutuallyDefined),
929 _ => None,
930 }
931 }
932}