tax_cloud 0.3.0 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +5 -5
- data/.rubocop.yml +8 -25
- data/.rubocop_todo.yml +47 -0
- data/.travis.yml +5 -5
- data/CHANGELOG.rdoc +11 -0
- data/CONTRIBUTORS.txt +3 -0
- data/Gemfile +16 -5
- data/LICENSE.rdoc +1 -1
- data/README.rdoc +12 -8
- data/Rakefile +7 -11
- data/lib/config/locales/en.yml +2 -2
- data/lib/hash.rb +3 -4
- data/lib/tasks/tax_cloud.rake +4 -4
- data/lib/tasks/tax_code_groups.rake +11 -11
- data/lib/tasks/tax_codes.rake +12 -12
- data/lib/tax_cloud.rb +8 -3
- data/lib/tax_cloud/address.rb +10 -5
- data/lib/tax_cloud/cart_item.rb +2 -0
- data/lib/tax_cloud/client.rb +13 -3
- data/lib/tax_cloud/configuration.rb +13 -2
- data/lib/tax_cloud/errors.rb +2 -0
- data/lib/tax_cloud/errors/api_error.rb +3 -3
- data/lib/tax_cloud/errors/missing_config_error.rb +2 -1
- data/lib/tax_cloud/errors/missing_config_option_error.rb +2 -1
- data/lib/tax_cloud/errors/soap_error.rb +6 -6
- data/lib/tax_cloud/errors/tax_cloud_error.rb +4 -3
- data/lib/tax_cloud/errors/unexpected_soap_response_error.rb +3 -3
- data/lib/tax_cloud/record.rb +2 -0
- data/lib/tax_cloud/responses.rb +2 -0
- data/lib/tax_cloud/responses/authorized.rb +3 -1
- data/lib/tax_cloud/responses/authorized_with_capture.rb +3 -1
- data/lib/tax_cloud/responses/base.rb +5 -4
- data/lib/tax_cloud/responses/captured.rb +3 -1
- data/lib/tax_cloud/responses/cart_item.rb +6 -2
- data/lib/tax_cloud/responses/generic.rb +2 -0
- data/lib/tax_cloud/responses/lookup.rb +10 -8
- data/lib/tax_cloud/responses/ping.rb +3 -1
- data/lib/tax_cloud/responses/returned.rb +3 -1
- data/lib/tax_cloud/responses/tax_code_groups.rb +3 -1
- data/lib/tax_cloud/responses/tax_codes.rb +3 -1
- data/lib/tax_cloud/responses/tax_codes_by_group.rb +3 -1
- data/lib/tax_cloud/responses/verify_address.rb +3 -1
- data/lib/tax_cloud/tax_code.rb +2 -0
- data/lib/tax_cloud/tax_code_constants.rb +262 -260
- data/lib/tax_cloud/tax_code_group.rb +3 -1
- data/lib/tax_cloud/tax_code_group_constants.rb +2 -0
- data/lib/tax_cloud/tax_code_groups.rb +3 -1
- data/lib/tax_cloud/tax_codes.rb +3 -1
- data/lib/tax_cloud/transaction.rb +2 -0
- data/lib/tax_cloud/version.rb +3 -1
- data/tax_cloud.gemspec +16 -18
- data/test/cassettes/authorized.yml +6 -6
- data/test/cassettes/authorized_with_capture.yml +6 -6
- data/test/cassettes/authorized_with_localized_time.yml +6 -6
- data/test/cassettes/captured.yml +7 -7
- data/test/cassettes/get_tic_groups.yml +5 -5
- data/test/cassettes/get_tics.yml +5 -5
- data/test/cassettes/get_tics_by_group.yml +5 -5
- data/test/cassettes/invalid_soap_call.yml +5 -5
- data/test/cassettes/lookup.yml +5 -5
- data/test/cassettes/lookup_ny.yml +5 -5
- data/test/cassettes/ping.yml +5 -5
- data/test/cassettes/ping_with_invalid_credentials.yml +5 -5
- data/test/cassettes/ping_with_invalid_response.yml +5 -5
- data/test/cassettes/returned.yml +7 -7
- data/test/cassettes/verify_bad_address.yml +5 -5
- data/test/cassettes/verify_good_address.yml +5 -5
- data/test/helper.rb +3 -1
- data/test/test_address.rb +3 -1
- data/test/test_cart_item.rb +3 -1
- data/test/test_client.rb +4 -2
- data/test/test_configuration_optional_keys.rb +44 -0
- data/test/{test_configuration.rb → test_configuration_required_keys.rb} +6 -4
- data/test/test_lookup_response.rb +22 -0
- data/test/test_setup.rb +3 -1
- data/test/test_soap.rb +3 -1
- data/test/test_tax_code_groups.rb +4 -2
- data/test/test_tax_codes.rb +3 -1
- data/test/test_transaction.rb +3 -1
- data/test/test_transaction_ny.rb +3 -1
- data/test/vcr_setup.rb +2 -0
- metadata +28 -96
    
        data/lib/tax_cloud/address.rb
    CHANGED
    
    | @@ -1,3 +1,5 @@ | |
| 1 | 
            +
            # frozen_string_literal: true
         | 
| 2 | 
            +
             | 
| 1 3 | 
             
            module TaxCloud #:nodoc:
         | 
| 2 4 | 
             
              # An <tt>Address</tt> defines an address in the United States.
         | 
| 3 5 | 
             
              class Address < Record
         | 
| @@ -19,9 +21,11 @@ module TaxCloud #:nodoc: | |
| 19 21 | 
             
                # Returns a verified TaxCloud::Address.
         | 
| 20 22 | 
             
                def verify
         | 
| 21 23 | 
             
                  params = to_hash.downcase_keys
         | 
| 22 | 
            -
                   | 
| 23 | 
            -
                     | 
| 24 | 
            -
             | 
| 24 | 
            +
                  if TaxCloud.configuration.usps_username
         | 
| 25 | 
            +
                    params = params.merge(
         | 
| 26 | 
            +
                      'uspsUserID' => TaxCloud.configuration.usps_username
         | 
| 27 | 
            +
                    )
         | 
| 28 | 
            +
                  end
         | 
| 25 29 | 
             
                  response = TaxCloud.client.request(:verify_address, params)
         | 
| 26 30 | 
             
                  TaxCloud::Responses::VerifyAddress.parse(response)
         | 
| 27 31 | 
             
                end
         | 
| @@ -29,8 +33,9 @@ module TaxCloud #:nodoc: | |
| 29 33 | 
             
                # Complete zip code.
         | 
| 30 34 | 
             
                # Returns a 9-digit Zip Code, when available.
         | 
| 31 35 | 
             
                def zip
         | 
| 32 | 
            -
                  return nil unless zip5 && zip5. | 
| 33 | 
            -
             | 
| 36 | 
            +
                  return nil unless zip5 && !zip5.empty?
         | 
| 37 | 
            +
             | 
| 38 | 
            +
                  [zip5, zip4].select { |z| z && !z.empty? }.join('-')
         | 
| 34 39 | 
             
                end
         | 
| 35 40 |  | 
| 36 41 | 
             
                # Convert the object to a usable hash for SOAP requests
         | 
    
        data/lib/tax_cloud/cart_item.rb
    CHANGED
    
    
    
        data/lib/tax_cloud/client.rb
    CHANGED
    
    | @@ -1,9 +1,11 @@ | |
| 1 | 
            +
            # frozen_string_literal: true
         | 
| 2 | 
            +
             | 
| 1 3 | 
             
            module TaxCloud #:nodoc:
         | 
| 2 4 | 
             
              # A <tt>Client</tt> communicates with the TaxCloud service.
         | 
| 3 5 | 
             
              class Client < Savon::Client
         | 
| 4 6 | 
             
                # Create a new client.
         | 
| 5 7 | 
             
                def initialize
         | 
| 6 | 
            -
                  super  | 
| 8 | 
            +
                  super client_params
         | 
| 7 9 | 
             
                end
         | 
| 8 10 |  | 
| 9 11 | 
             
                # Make a safe SOAP call.
         | 
| @@ -34,16 +36,24 @@ module TaxCloud #:nodoc: | |
| 34 36 | 
             
                # Authorization hash to use with all SOAP requests
         | 
| 35 37 | 
             
                def auth_params
         | 
| 36 38 | 
             
                  return {} unless TaxCloud.configuration
         | 
| 39 | 
            +
             | 
| 37 40 | 
             
                  {
         | 
| 38 41 | 
             
                    'apiLoginID' => TaxCloud.configuration.api_login_id,
         | 
| 39 42 | 
             
                    'apiKey' => TaxCloud.configuration.api_key
         | 
| 40 43 | 
             
                  }
         | 
| 41 44 | 
             
                end
         | 
| 42 45 |  | 
| 43 | 
            -
                def  | 
| 46 | 
            +
                def client_params
         | 
| 47 | 
            +
                  { wsdl: TaxCloud::WSDL_URL }.tap do |params|
         | 
| 48 | 
            +
                    params[:open_timeout] = TaxCloud.configuration.open_timeout if TaxCloud.configuration.open_timeout
         | 
| 49 | 
            +
                    params[:read_timeout] = TaxCloud.configuration.read_timeout if TaxCloud.configuration.read_timeout
         | 
| 50 | 
            +
                  end
         | 
| 51 | 
            +
                end
         | 
| 52 | 
            +
             | 
| 53 | 
            +
                def safe
         | 
| 44 54 | 
             
                  yield
         | 
| 45 55 | 
             
                rescue Savon::SOAPFault => e
         | 
| 46 | 
            -
                  raise TaxCloud::Errors::SoapError | 
| 56 | 
            +
                  raise TaxCloud::Errors::SoapError, e
         | 
| 47 57 | 
             
                end
         | 
| 48 58 | 
             
              end
         | 
| 49 59 | 
             
            end
         | 
| @@ -1,3 +1,5 @@ | |
| 1 | 
            +
            # frozen_string_literal: true
         | 
| 2 | 
            +
             | 
| 1 3 | 
             
            module TaxCloud #:nodoc:
         | 
| 2 4 | 
             
              # TaxCloud gem configuration.
         | 
| 3 5 | 
             
              class Configuration
         | 
| @@ -7,13 +9,22 @@ module TaxCloud #:nodoc: | |
| 7 9 | 
             
                attr_accessor :api_key
         | 
| 8 10 | 
             
                # Optional USPS username.
         | 
| 9 11 | 
             
                attr_accessor :usps_username
         | 
| 12 | 
            +
                # Savon client option open_timeout.
         | 
| 13 | 
            +
                attr_accessor :open_timeout
         | 
| 14 | 
            +
                # Savon client option read_timeout.
         | 
| 15 | 
            +
                attr_accessor :read_timeout
         | 
| 16 | 
            +
             | 
| 17 | 
            +
                def initialize
         | 
| 18 | 
            +
                  @open_timeout = 2
         | 
| 19 | 
            +
                  @read_timeout = 2
         | 
| 20 | 
            +
                end
         | 
| 10 21 |  | 
| 11 22 | 
             
                # Check the configuration.
         | 
| 12 23 | 
             
                #
         | 
| 13 24 | 
             
                # Will raise a TaxCloud::Errors::MissingConfigOption if any of the API login ID or the API key are missing.
         | 
| 14 25 | 
             
                def check!
         | 
| 15 | 
            -
                   | 
| 16 | 
            -
                   | 
| 26 | 
            +
                  raise TaxCloud::Errors::MissingConfigOption, 'api_login_id' unless api_login_id && !api_login_id.strip.empty?
         | 
| 27 | 
            +
                  raise TaxCloud::Errors::MissingConfigOption, 'api_key' unless api_key && !api_key.strip.empty?
         | 
| 17 28 | 
             
                end
         | 
| 18 29 | 
             
              end
         | 
| 19 30 | 
             
            end
         | 
    
        data/lib/tax_cloud/errors.rb
    CHANGED
    
    
| @@ -1,4 +1,5 @@ | |
| 1 | 
            -
            #  | 
| 1 | 
            +
            # frozen_string_literal: true
         | 
| 2 | 
            +
             | 
| 2 3 | 
             
            module TaxCloud #:nodoc:
         | 
| 3 4 | 
             
              module Errors #:nodoc:
         | 
| 4 5 | 
             
                # This error is raised when the TaxCloud service
         | 
| @@ -10,8 +11,7 @@ module TaxCloud #:nodoc: | |
| 10 11 | 
             
                  def initialize(message, raw)
         | 
| 11 12 | 
             
                    super(compose_message('api_error',
         | 
| 12 13 | 
             
                                          message: message,
         | 
| 13 | 
            -
                                          raw: raw
         | 
| 14 | 
            -
                    ))
         | 
| 14 | 
            +
                                          raw: raw))
         | 
| 15 15 | 
             
                  end
         | 
| 16 16 | 
             
                end
         | 
| 17 17 | 
             
              end
         | 
| @@ -1,4 +1,5 @@ | |
| 1 | 
            -
            #  | 
| 1 | 
            +
            # frozen_string_literal: true
         | 
| 2 | 
            +
             | 
| 2 3 | 
             
            module TaxCloud #:nodoc:
         | 
| 3 4 | 
             
              module Errors #:nodoc:
         | 
| 4 5 | 
             
                # This error is raised when a SOAP call fails.
         | 
| @@ -9,15 +10,14 @@ module TaxCloud #:nodoc: | |
| 9 10 | 
             
                  # Create the new error.
         | 
| 10 11 | 
             
                  # === Parameters
         | 
| 11 12 | 
             
                  # [e] SOAP response.
         | 
| 12 | 
            -
                  def initialize( | 
| 13 | 
            -
                    @fault =  | 
| 14 | 
            -
                     | 
| 13 | 
            +
                  def initialize(exception)
         | 
| 14 | 
            +
                    @fault = exception
         | 
| 15 | 
            +
                    exception.to_hash.tap do |fault|
         | 
| 15 16 | 
             
                      fault_code = fault[:fault][:faultcode]
         | 
| 16 17 | 
             
                      fault_string = parse_fault(fault[:fault][:faultstring])
         | 
| 17 18 | 
             
                      super(compose_message('soap_error',
         | 
| 18 19 | 
             
                                            message: fault_string,
         | 
| 19 | 
            -
                                            code: fault_code
         | 
| 20 | 
            -
                      ))
         | 
| 20 | 
            +
                                            code: fault_code))
         | 
| 21 21 | 
             
                    end
         | 
| 22 22 | 
             
                  end
         | 
| 23 23 |  | 
| @@ -1,4 +1,5 @@ | |
| 1 | 
            -
            #  | 
| 1 | 
            +
            # frozen_string_literal: true
         | 
| 2 | 
            +
             | 
| 2 3 | 
             
            module TaxCloud #:nodoc:
         | 
| 3 4 | 
             
              module Errors #:nodoc:
         | 
| 4 5 | 
             
                # Default parent TaxCloud error for all custom errors. This handles the base
         | 
| @@ -25,8 +26,8 @@ module TaxCloud #:nodoc: | |
| 25 26 | 
             
                    @summary = create_summary(key, attributes)
         | 
| 26 27 | 
             
                    @resolution = create_resolution(key, attributes)
         | 
| 27 28 |  | 
| 28 | 
            -
                    "\nProblem:\n  #{@problem}"  | 
| 29 | 
            -
                    "\nSummary:\n  #{@summary}"  | 
| 29 | 
            +
                    "\nProblem:\n  #{@problem}" \
         | 
| 30 | 
            +
                    "\nSummary:\n  #{@summary}" \
         | 
| 30 31 | 
             
                    "\nResolution:\n  #{@resolution}"
         | 
| 31 32 | 
             
                  end
         | 
| 32 33 |  | 
| @@ -1,4 +1,5 @@ | |
| 1 | 
            -
            #  | 
| 1 | 
            +
            # frozen_string_literal: true
         | 
| 2 | 
            +
             | 
| 2 3 | 
             
            module TaxCloud #:nodoc:
         | 
| 3 4 | 
             
              module Errors #:nodoc:
         | 
| 4 5 | 
             
                # This error is raised when TaxCloud returns an
         | 
| @@ -12,8 +13,7 @@ module TaxCloud #:nodoc: | |
| 12 13 | 
             
                    super(compose_message('unexpected_soap_response',
         | 
| 13 14 | 
             
                                          key: key,
         | 
| 14 15 | 
             
                                          raw: raw,
         | 
| 15 | 
            -
                                          chain: chain
         | 
| 16 | 
            -
                    ))
         | 
| 16 | 
            +
                                          chain: chain))
         | 
| 17 17 | 
             
                  end
         | 
| 18 18 | 
             
                end
         | 
| 19 19 | 
             
              end
         | 
    
        data/lib/tax_cloud/record.rb
    CHANGED
    
    
    
        data/lib/tax_cloud/responses.rb
    CHANGED
    
    
| @@ -1,8 +1,10 @@ | |
| 1 | 
            +
            # frozen_string_literal: true
         | 
| 2 | 
            +
             | 
| 1 3 | 
             
            module TaxCloud #:nodoc:
         | 
| 2 4 | 
             
              module Responses #:nodoc:
         | 
| 3 5 | 
             
                # Response to a TaxCloud Authorized API call.
         | 
| 4 6 | 
             
                #
         | 
| 5 | 
            -
                # See https:// | 
| 7 | 
            +
                # See https://asmx.taxcloud.com/1.0/TaxCloud.asmx?op=Authorized.
         | 
| 6 8 | 
             
                class Authorized < Generic
         | 
| 7 9 | 
             
                  response_key :authorized
         | 
| 8 10 | 
             
                end
         | 
| @@ -1,8 +1,10 @@ | |
| 1 | 
            +
            # frozen_string_literal: true
         | 
| 2 | 
            +
             | 
| 1 3 | 
             
            module TaxCloud #:nodoc:
         | 
| 2 4 | 
             
              module Responses #:nodoc:
         | 
| 3 5 | 
             
                # Response to a TaxCloud AuthorizedWithCapture API call.
         | 
| 4 6 | 
             
                #
         | 
| 5 | 
            -
                # See https:// | 
| 7 | 
            +
                # See https://asmx.taxcloud.com/1.0/TaxCloud.asmx?op=AuthorizedWithCapture.
         | 
| 6 8 | 
             
                class AuthorizedWithCapture < Generic
         | 
| 7 9 | 
             
                  response_key :authorized_with_capture
         | 
| 8 10 | 
             
                end
         | 
| @@ -1,3 +1,5 @@ | |
| 1 | 
            +
            # frozen_string_literal: true
         | 
| 2 | 
            +
             | 
| 1 3 | 
             
            module TaxCloud #:nodoc:
         | 
| 2 4 | 
             
              module Responses #:nodoc:
         | 
| 3 5 | 
             
                # A base TaxCloud SOAP response.
         | 
| @@ -49,7 +51,8 @@ module TaxCloud #:nodoc: | |
| 49 51 | 
             
                    chain.split('/').each do |key|
         | 
| 50 52 | 
             
                      current_value = current_value[key.to_sym]
         | 
| 51 53 | 
             
                      next if current_value
         | 
| 52 | 
            -
             | 
| 54 | 
            +
             | 
| 55 | 
            +
                      raise TaxCloud::Errors::UnexpectedSoapResponse.new(raw, key, chain)
         | 
| 53 56 | 
             
                    end
         | 
| 54 57 | 
             
                    current_value
         | 
| 55 58 | 
             
                  end
         | 
| @@ -75,9 +78,7 @@ module TaxCloud #:nodoc: | |
| 75 78 | 
             
                    elsif self.dsl[:error_number]
         | 
| 76 79 | 
             
                      return true if match(self.dsl[:error_number]) == '0'
         | 
| 77 80 | 
             
                    end
         | 
| 78 | 
            -
                    if self.dsl[:error_message]
         | 
| 79 | 
            -
                      fail TaxCloud::Errors::ApiError.new(match(self.dsl[:error_message]), raw)
         | 
| 80 | 
            -
                    end
         | 
| 81 | 
            +
                    raise TaxCloud::Errors::ApiError.new(match(self.dsl[:error_message]), raw) if self.dsl[:error_message]
         | 
| 81 82 | 
             
                  end
         | 
| 82 83 | 
             
                end
         | 
| 83 84 | 
             
              end
         | 
| @@ -1,8 +1,10 @@ | |
| 1 | 
            +
            # frozen_string_literal: true
         | 
| 2 | 
            +
             | 
| 1 3 | 
             
            module TaxCloud #:nodoc:
         | 
| 2 4 | 
             
              module Responses #:nodoc:
         | 
| 3 5 | 
             
                # Response to a TaxCloud Captured API call.
         | 
| 4 6 | 
             
                #
         | 
| 5 | 
            -
                # See https:// | 
| 7 | 
            +
                # See https://asmx.taxcloud.com/1.0/TaxCloud.asmx?op=Captured.
         | 
| 6 8 | 
             
                class Captured < Generic
         | 
| 7 9 | 
             
                  response_key :captured
         | 
| 8 10 | 
             
                end
         | 
| @@ -1,8 +1,12 @@ | |
| 1 | 
            +
            # frozen_string_literal: true
         | 
| 2 | 
            +
             | 
| 3 | 
            +
            require 'bigdecimal'
         | 
| 4 | 
            +
             | 
| 1 5 | 
             
            module TaxCloud #:nodoc:
         | 
| 2 6 | 
             
              module Responses #:nodoc:
         | 
| 3 7 | 
             
                # A single item in the response to a TaxCloud Lookup API call.
         | 
| 4 8 | 
             
                #
         | 
| 5 | 
            -
                # See https:// | 
| 9 | 
            +
                # See https://asmx.taxcloud.com/1.0/TaxCloud.asmx?op=Lookup.
         | 
| 6 10 | 
             
                class CartItem
         | 
| 7 11 | 
             
                  # The index of the cart item.
         | 
| 8 12 | 
             
                  attr_accessor :cart_item_index
         | 
| @@ -14,7 +18,7 @@ module TaxCloud #:nodoc: | |
| 14 18 | 
             
                  # [savon_response] SOAP response.
         | 
| 15 19 | 
             
                  def initialize(savon_response)
         | 
| 16 20 | 
             
                    self.cart_item_index = savon_response[:cart_item_index].to_i
         | 
| 17 | 
            -
                    self.tax_amount = savon_response[:tax_amount] | 
| 21 | 
            +
                    self.tax_amount = BigDecimal(savon_response[:tax_amount])
         | 
| 18 22 | 
             
                  end
         | 
| 19 23 | 
             
                end
         | 
| 20 24 | 
             
              end
         | 
| @@ -1,8 +1,10 @@ | |
| 1 | 
            +
            # frozen_string_literal: true
         | 
| 2 | 
            +
             | 
| 1 3 | 
             
            module TaxCloud #:nodoc:
         | 
| 2 4 | 
             
              module Responses #:nodoc:
         | 
| 3 5 | 
             
                # Response to a TaxCloud Lookup API call.
         | 
| 4 6 | 
             
                #
         | 
| 5 | 
            -
                # See https:// | 
| 7 | 
            +
                # See https://asmx.taxcloud.com/1.0/TaxCloud.asmx?op=Lookup.
         | 
| 6 8 | 
             
                class Lookup < Base
         | 
| 7 9 | 
             
                  # Cart ID.
         | 
| 8 10 | 
             
                  attr_accessor :cart_id
         | 
| @@ -20,13 +22,13 @@ module TaxCloud #:nodoc: | |
| 20 22 | 
             
                    self.cart_id = match('lookup_response/lookup_result/cart_id')
         | 
| 21 23 | 
             
                    # there can be on response or an array of responses
         | 
| 22 24 | 
             
                    cart_item_responses = match('lookup_response/lookup_result/cart_items_response/cart_item_response')
         | 
| 23 | 
            -
                    if cart_item_responses.is_a?(Array)
         | 
| 24 | 
            -
             | 
| 25 | 
            -
             | 
| 26 | 
            -
             | 
| 27 | 
            -
             | 
| 28 | 
            -
             | 
| 29 | 
            -
             | 
| 25 | 
            +
                    self.cart_items = if cart_item_responses.is_a?(Array)
         | 
| 26 | 
            +
                                        cart_item_responses.map do |cart_item_response|
         | 
| 27 | 
            +
                                          TaxCloud::Responses::CartItem.new(cart_item_response)
         | 
| 28 | 
            +
                                        end
         | 
| 29 | 
            +
                                      else
         | 
| 30 | 
            +
                                        [TaxCloud::Responses::CartItem.new(cart_item_responses)]
         | 
| 31 | 
            +
                                      end
         | 
| 30 32 | 
             
                  end
         | 
| 31 33 |  | 
| 32 34 | 
             
                  # Total tax amount in this cart.
         | 
| @@ -1,8 +1,10 @@ | |
| 1 | 
            +
            # frozen_string_literal: true
         | 
| 2 | 
            +
             | 
| 1 3 | 
             
            module TaxCloud #:nodoc:
         | 
| 2 4 | 
             
              module Responses #:nodoc:
         | 
| 3 5 | 
             
                # Response to a TaxCloud Ping API call.
         | 
| 4 6 | 
             
                #
         | 
| 5 | 
            -
                # See https:// | 
| 7 | 
            +
                # See https://asmx.taxcloud.com/1.0/TaxCloud.asmx?op=Ping.
         | 
| 6 8 | 
             
                class Ping < Generic
         | 
| 7 9 | 
             
                  response_key :ping
         | 
| 8 10 | 
             
                end
         | 
| @@ -1,8 +1,10 @@ | |
| 1 | 
            +
            # frozen_string_literal: true
         | 
| 2 | 
            +
             | 
| 1 3 | 
             
            module TaxCloud #:nodoc:
         | 
| 2 4 | 
             
              module Responses #:nodoc:
         | 
| 3 5 | 
             
                # Response to a TaxCloud Returned API call.
         | 
| 4 6 | 
             
                #
         | 
| 5 | 
            -
                # See https:// | 
| 7 | 
            +
                # See https://asmx.taxcloud.com/1.0/TaxCloud.asmx?op=Returned.
         | 
| 6 8 | 
             
                class Returned < Generic
         | 
| 7 9 | 
             
                  response_key :returned
         | 
| 8 10 | 
             
                end
         | 
| @@ -1,8 +1,10 @@ | |
| 1 | 
            +
            # frozen_string_literal: true
         | 
| 2 | 
            +
             | 
| 1 3 | 
             
            module TaxCloud #:nodoc:
         | 
| 2 4 | 
             
              module Responses #:nodoc:
         | 
| 3 5 | 
             
                # Response to a TaxCloud getTICGroups API call.
         | 
| 4 6 | 
             
                #
         | 
| 5 | 
            -
                # https:// | 
| 7 | 
            +
                # https://asmx.taxcloud.com/1.0/TaxCloud.asmx?op=GetTICGroups
         | 
| 6 8 | 
             
                class TaxCodeGroups < Base
         | 
| 7 9 | 
             
                  response_type 'get_tic_groups_response/get_tic_groups_result/response_type'
         | 
| 8 10 | 
             
                  error_message 'get_tic_groups_response/get_tic_groups_result/messages/response_message/message'
         | 
| @@ -1,8 +1,10 @@ | |
| 1 | 
            +
            # frozen_string_literal: true
         | 
| 2 | 
            +
             | 
| 1 3 | 
             
            module TaxCloud #:nodoc:
         | 
| 2 4 | 
             
              module Responses #:nodoc:
         | 
| 3 5 | 
             
                # Response to a TaxCloud getTICs API call.
         | 
| 4 6 | 
             
                #
         | 
| 5 | 
            -
                # See https:// | 
| 7 | 
            +
                # See https://asmx.taxcloud.com/1.0/TaxCloud.asmx?op=GetTICs.
         | 
| 6 8 | 
             
                class TaxCodes < Base
         | 
| 7 9 | 
             
                  response_type 'get_ti_cs_response/get_ti_cs_result/response_type'
         | 
| 8 10 | 
             
                  error_message 'get_ti_cs_response/get_ti_cs_result/messages/response_message/message'
         | 
| @@ -1,8 +1,10 @@ | |
| 1 | 
            +
            # frozen_string_literal: true
         | 
| 2 | 
            +
             | 
| 1 3 | 
             
            module TaxCloud #:nodoc:
         | 
| 2 4 | 
             
              module Responses #:nodoc:
         | 
| 3 5 | 
             
                # Response to a TaxCloud getTICsByGroup API call.
         | 
| 4 6 | 
             
                #
         | 
| 5 | 
            -
                # See https:// | 
| 7 | 
            +
                # See https://asmx.taxcloud.com/1.0/TaxCloud.asmx?op=GetTICsByGroup.
         | 
| 6 8 | 
             
                class TaxCodesByGroup < Base
         | 
| 7 9 | 
             
                  response_type 'get_ti_cs_by_group_response/get_ti_cs_by_group_result/response_type'
         | 
| 8 10 | 
             
                  error_message 'get_ti_cs_by_group_response/get_ti_cs_by_group_result/messages/response_message/message'
         | 
| @@ -1,8 +1,10 @@ | |
| 1 | 
            +
            # frozen_string_literal: true
         | 
| 2 | 
            +
             | 
| 1 3 | 
             
            module TaxCloud #:nodoc:
         | 
| 2 4 | 
             
              module Responses #:nodoc:
         | 
| 3 5 | 
             
                # Response to a TaxCloud VerifyAddress API call.
         | 
| 4 6 | 
             
                #
         | 
| 5 | 
            -
                # See https:// | 
| 7 | 
            +
                # See https://asmx.taxcloud.com/1.0/TaxCloud.asmx?op=VerifyAddress.
         | 
| 6 8 | 
             
                class VerifyAddress < Base
         | 
| 7 9 | 
             
                  error_number 'verify_address_response/verify_address_result/err_number'
         | 
| 8 10 | 
             
                  error_message 'verify_address_response/verify_address_result/err_description'
         | 
    
        data/lib/tax_cloud/tax_code.rb
    CHANGED
    
    
| @@ -1,560 +1,562 @@ | |
| 1 | 
            +
            # frozen_string_literal: true
         | 
| 2 | 
            +
             | 
| 1 3 | 
             
            module TaxCloud
         | 
| 2 4 | 
             
              # Tax Codes.
         | 
| 3 5 | 
             
              class TaxCodes
         | 
| 4 6 | 
             
                # Administrative
         | 
| 5 7 |  | 
| 6 8 | 
             
                # Administrative: Gift Card/Certificate
         | 
| 7 | 
            -
                GIFT_CARD_CERTIFICATE =  | 
| 9 | 
            +
                GIFT_CARD_CERTIFICATE = 10_005
         | 
| 8 10 | 
             
                # Administrative: Charges by the seller for any services necessary to complete the sale other than delivery and installation
         | 
| 9 | 
            -
                CHARGES_BY_THE_SELLER_FOR_ANY_SERVICES_NECESSARY_TO_COMPLETE_THE_SALE_OTHER_THAN_DELIVERY_AND_INSTALLATION =  | 
| 11 | 
            +
                CHARGES_BY_THE_SELLER_FOR_ANY_SERVICES_NECESSARY_TO_COMPLETE_THE_SALE_OTHER_THAN_DELIVERY_AND_INSTALLATION = 10_010
         | 
| 10 12 | 
             
                # Administrative: Installation charges
         | 
| 11 | 
            -
                INSTALLATION_CHARGES =  | 
| 13 | 
            +
                INSTALLATION_CHARGES = 10_040
         | 
| 12 14 | 
             
                # Administrative: Value of trade-in
         | 
| 13 | 
            -
                VALUE_OF_TRADE_IN =  | 
| 15 | 
            +
                VALUE_OF_TRADE_IN = 10_060
         | 
| 14 16 | 
             
                # Administrative: Telecommunication nonrecurring charges
         | 
| 15 | 
            -
                TELECOMMUNICATION_NONRECURRING_CHARGES =  | 
| 17 | 
            +
                TELECOMMUNICATION_NONRECURRING_CHARGES = 10_070
         | 
| 16 18 | 
             
                # Administrative: Handling, crating, packing, preparation for mailing or delivery, and similar charges
         | 
| 17 | 
            -
                HANDLING_CRATING_PACKING_PREPARATION_FOR_MAILING_OR_DELIVERY_AND_SIMILAR_CHARGES =  | 
| 19 | 
            +
                HANDLING_CRATING_PACKING_PREPARATION_FOR_MAILING_OR_DELIVERY_AND_SIMILAR_CHARGES = 11_000
         | 
| 18 20 | 
             
                # Administrative: Transportation, shipping, postage, and similar charges
         | 
| 19 | 
            -
                TRANSPORTATION_SHIPPING_POSTAGE_AND_SIMILAR_CHARGES =  | 
| 21 | 
            +
                TRANSPORTATION_SHIPPING_POSTAGE_AND_SIMILAR_CHARGES = 11_010
         | 
| 20 22 | 
             
                # Administrative: Handling, crating, packing, preparation for mailing or delivery, and similar charges for direct mail
         | 
| 21 | 
            -
                HANDLING_CRATING_PACKING_PREPARATION_FOR_MAILING_OR_DELIVERY_AND_SIMILAR_CHARGES_FOR_DIRECT_MAIL =  | 
| 23 | 
            +
                HANDLING_CRATING_PACKING_PREPARATION_FOR_MAILING_OR_DELIVERY_AND_SIMILAR_CHARGES_FOR_DIRECT_MAIL = 11_020
         | 
| 22 24 | 
             
                # Administrative: Transportation, shipping, and similar charges for direct mail
         | 
| 23 | 
            -
                TRANSPORTATION_SHIPPING_AND_SIMILAR_CHARGES_FOR_DIRECT_MAIL =  | 
| 25 | 
            +
                TRANSPORTATION_SHIPPING_AND_SIMILAR_CHARGES_FOR_DIRECT_MAIL = 11_021
         | 
| 24 26 | 
             
                # Administrative: Postage for direct mail
         | 
| 25 | 
            -
                POSTAGE_FOR_DIRECT_MAIL =  | 
| 27 | 
            +
                POSTAGE_FOR_DIRECT_MAIL = 11_022
         | 
| 26 28 | 
             
                # Administrative: Postage/Delivery
         | 
| 27 | 
            -
                POSTAGE_DELIVERY =  | 
| 29 | 
            +
                POSTAGE_DELIVERY = 11_099
         | 
| 28 30 | 
             
                # Administrative: Direct-mail related
         | 
| 29 | 
            -
                DIRECT_MAIL_RELATED =  | 
| 31 | 
            +
                DIRECT_MAIL_RELATED = 11_100
         | 
| 30 32 |  | 
| 31 33 | 
             
                # Clothing and Related Products
         | 
| 32 34 |  | 
| 33 35 | 
             
                # Clothing and Related Products: Clothing
         | 
| 34 | 
            -
                CLOTHING =  | 
| 36 | 
            +
                CLOTHING = 20_010
         | 
| 35 37 | 
             
                # Clothing and Related Products: Essential clothing priced below a state specific threshold
         | 
| 36 | 
            -
                ESSENTIAL_CLOTHING_PRICED_BELOW_A_STATE_SPECIFIC_THRESHOLD =  | 
| 38 | 
            +
                ESSENTIAL_CLOTHING_PRICED_BELOW_A_STATE_SPECIFIC_THRESHOLD = 20_015
         | 
| 37 39 | 
             
                # Clothing and Related Products: Clothing accessories or equipment
         | 
| 38 | 
            -
                CLOTHING_ACCESSORIES_OR_EQUIPMENT =  | 
| 40 | 
            +
                CLOTHING_ACCESSORIES_OR_EQUIPMENT = 20_020
         | 
| 39 41 | 
             
                # Clothing and Related Products: Protective equipment
         | 
| 40 | 
            -
                PROTECTIVE_EQUIPMENT =  | 
| 42 | 
            +
                PROTECTIVE_EQUIPMENT = 20_030
         | 
| 41 43 | 
             
                # Clothing and Related Products: Sport or recreational equipment
         | 
| 42 | 
            -
                SPORT_OR_RECREATIONAL_EQUIPMENT =  | 
| 44 | 
            +
                SPORT_OR_RECREATIONAL_EQUIPMENT = 20_040
         | 
| 43 45 | 
             
                # Clothing and Related Products: Fur clothing
         | 
| 44 | 
            -
                FUR_CLOTHING =  | 
| 46 | 
            +
                FUR_CLOTHING = 20_050
         | 
| 45 47 |  | 
| 46 48 | 
             
                # School Related Products
         | 
| 47 49 |  | 
| 48 50 | 
             
                # School Related Products: School art supply
         | 
| 49 | 
            -
                SCHOOL_ART_SUPPLY =  | 
| 51 | 
            +
                SCHOOL_ART_SUPPLY = 20_080
         | 
| 50 52 | 
             
                # School Related Products: School instructional material
         | 
| 51 | 
            -
                SCHOOL_INSTRUCTIONAL_MATERIAL =  | 
| 53 | 
            +
                SCHOOL_INSTRUCTIONAL_MATERIAL = 20_090
         | 
| 52 54 | 
             
                # School Related Products: School computer supply
         | 
| 53 | 
            -
                SCHOOL_COMPUTER_SUPPLY =  | 
| 55 | 
            +
                SCHOOL_COMPUTER_SUPPLY = 20_100
         | 
| 54 56 |  | 
| 55 57 | 
             
                # Computer Related Products
         | 
| 56 58 |  | 
| 57 59 | 
             
                # Computer Related Products: Non-prewritten (custom) computer software
         | 
| 58 | 
            -
                NON_PREWRITTEN_CUSTOM_COMPUTER_SOFTWARE =  | 
| 60 | 
            +
                NON_PREWRITTEN_CUSTOM_COMPUTER_SOFTWARE = 30_015
         | 
| 59 61 | 
             
                # Computer Related Products: Non-prewritten (custom) computer software delivered electronically
         | 
| 60 | 
            -
                NON_PREWRITTEN_CUSTOM_COMPUTER_SOFTWARE_DELIVERED_ELECTRONICALLY =  | 
| 62 | 
            +
                NON_PREWRITTEN_CUSTOM_COMPUTER_SOFTWARE_DELIVERED_ELECTRONICALLY = 30_025
         | 
| 61 63 | 
             
                # Computer Related Products: Non-prewritten (custom) computer software delivered via load and leave Mandatory computer software maintenance contracts
         | 
| 62 | 
            -
                NON_PREWRITTEN_CUSTOM_COMPUTER_SOFTWARE_DELIVERED_VIA_LOAD_AND_LEAVE_MANDATORY_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS =  | 
| 64 | 
            +
                NON_PREWRITTEN_CUSTOM_COMPUTER_SOFTWARE_DELIVERED_VIA_LOAD_AND_LEAVE_MANDATORY_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS = 30_035
         | 
| 63 65 | 
             
                # Computer Related Products: Prewritten computer software
         | 
| 64 | 
            -
                PREWRITTEN_COMPUTER_SOFTWARE =  | 
| 66 | 
            +
                PREWRITTEN_COMPUTER_SOFTWARE = 30_040
         | 
| 65 67 | 
             
                # Computer Related Products: Prewritten computer software delivered electronically
         | 
| 66 | 
            -
                PREWRITTEN_COMPUTER_SOFTWARE_DELIVERED_ELECTRONICALLY =  | 
| 68 | 
            +
                PREWRITTEN_COMPUTER_SOFTWARE_DELIVERED_ELECTRONICALLY = 30_050
         | 
| 67 69 | 
             
                # Computer Related Products: Prewritten computer software delivered via load and leave
         | 
| 68 | 
            -
                PREWRITTEN_COMPUTER_SOFTWARE_DELIVERED_VIA_LOAD_AND_LEAVE =  | 
| 70 | 
            +
                PREWRITTEN_COMPUTER_SOFTWARE_DELIVERED_VIA_LOAD_AND_LEAVE = 30_060
         | 
| 69 71 | 
             
                # Computer Related Products: Remote Access
         | 
| 70 | 
            -
                REMOTE_ACCESS =  | 
| 72 | 
            +
                REMOTE_ACCESS = 30_070
         | 
| 71 73 | 
             
                # Computer Related Products: Computer
         | 
| 72 | 
            -
                COMPUTER =  | 
| 74 | 
            +
                COMPUTER = 30_100
         | 
| 73 75 | 
             
                # Computer Related Products: Mandatory computer software maintenance contracts with respect to prewritten computer software
         | 
| 74 | 
            -
                MANDATORY_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_PREWRITTEN_COMPUTER_SOFTWARE =  | 
| 76 | 
            +
                MANDATORY_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_PREWRITTEN_COMPUTER_SOFTWARE = 30_200
         | 
| 75 77 | 
             
                # Computer Related Products: Mandatory computer software maintenance contracts with respect to prewritten computer software which is delivered electronically
         | 
| 76 | 
            -
                MANDATORY_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_PREWRITTEN_COMPUTER_SOFTWARE_WHICH_IS_DELIVERED_ELECTRONICALLY =  | 
| 78 | 
            +
                MANDATORY_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_PREWRITTEN_COMPUTER_SOFTWARE_WHICH_IS_DELIVERED_ELECTRONICALLY = 30_210
         | 
| 77 79 | 
             
                # Computer Related Products: Mandatory computer software maintenance contracts with respect to prewritten computer software which is delivered via load and leave
         | 
| 78 | 
            -
                MANDATORY_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_PREWRITTEN_COMPUTER_SOFTWARE_WHICH_IS_DELIVERED_VIA_LOAD_AND_LEAVE =  | 
| 80 | 
            +
                MANDATORY_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_PREWRITTEN_COMPUTER_SOFTWARE_WHICH_IS_DELIVERED_VIA_LOAD_AND_LEAVE = 30_220
         | 
| 79 81 | 
             
                # Computer Related Products: Mandatory computer software maintenance contracts with respect to non-prewritten (custom) computer software
         | 
| 80 | 
            -
                MANDATORY_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_NON_PREWRITTEN_CUSTOM_COMPUTER_SOFTWARE =  | 
| 82 | 
            +
                MANDATORY_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_NON_PREWRITTEN_CUSTOM_COMPUTER_SOFTWARE = 30_230
         | 
| 81 83 | 
             
                # Computer Related Products: Mandatory computer software maintenance contracts with respect to non-prewritten (custom) software which is delivered electronically
         | 
| 82 | 
            -
                MANDATORY_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_NON_PREWRITTEN_CUSTOM_SOFTWARE_WHICH_IS_DELIVERED_ELECTRONICALLY =  | 
| 84 | 
            +
                MANDATORY_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_NON_PREWRITTEN_CUSTOM_SOFTWARE_WHICH_IS_DELIVERED_ELECTRONICALLY = 30_240
         | 
| 83 85 | 
             
                # Computer Related Products: Mandatory computer software maintenance contracts with respect to non-prewritten (custom) software which is delivered via load and leave
         | 
| 84 | 
            -
                MANDATORY_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_NON_PREWRITTEN_CUSTOM_SOFTWARE_WHICH_IS_DELIVERED_VIA_LOAD_AND_LEAVE =  | 
| 86 | 
            +
                MANDATORY_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_NON_PREWRITTEN_CUSTOM_SOFTWARE_WHICH_IS_DELIVERED_VIA_LOAD_AND_LEAVE = 30_250
         | 
| 85 87 | 
             
                # Computer Related Products: Optional computer software maintenance contracts with respect to prewritten computer software that only provide updates or upgrades with respect to the software
         | 
| 86 | 
            -
                OPTIONAL_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_PREWRITTEN_COMPUTER_SOFTWARE_THAT_ONLY_PROVIDE_UPDATES_OR_UPGRADES_WITH_RESPECT_TO_THE_SOFTWARE =  | 
| 88 | 
            +
                OPTIONAL_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_PREWRITTEN_COMPUTER_SOFTWARE_THAT_ONLY_PROVIDE_UPDATES_OR_UPGRADES_WITH_RESPECT_TO_THE_SOFTWARE = 30_300
         | 
| 87 89 | 
             
                # Computer Related Products: Optional computer software maintenance contracts with respect to prewritten computer software that only provide updates or upgrades delivered electronically with respect to the software
         | 
| 88 | 
            -
                OPTIONAL_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_PREWRITTEN_COMPUTER_SOFTWARE_THAT_ONLY_PROVIDE_UPDATES_OR_UPGRADES_DELIVERED_ELECTRONICALLY_WITH_RESPECT_TO_THE_SOFTWARE =  | 
| 90 | 
            +
                OPTIONAL_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_PREWRITTEN_COMPUTER_SOFTWARE_THAT_ONLY_PROVIDE_UPDATES_OR_UPGRADES_DELIVERED_ELECTRONICALLY_WITH_RESPECT_TO_THE_SOFTWARE = 30_310
         | 
| 89 91 | 
             
                # Computer Related Products: Optional computer software maintenance contracts with respect to prewritten computer software that only provide updates or upgrades delivered via load and leave with respect to the software
         | 
| 90 | 
            -
                OPTIONAL_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_PREWRITTEN_COMPUTER_SOFTWARE_THAT_ONLY_PROVIDE_UPDATES_OR_UPGRADES_DELIVERED_VIA_LOAD_AND_LEAVE_WITH_RESPECT_TO_THE_SOFTWARE =  | 
| 92 | 
            +
                OPTIONAL_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_PREWRITTEN_COMPUTER_SOFTWARE_THAT_ONLY_PROVIDE_UPDATES_OR_UPGRADES_DELIVERED_VIA_LOAD_AND_LEAVE_WITH_RESPECT_TO_THE_SOFTWARE = 30_320
         | 
| 91 93 | 
             
                # Computer Related Products: Optional computer software maintenance contracts with respect to non-prewritten (custom) computer software that only provide updates or upgrades with respect to the software
         | 
| 92 | 
            -
                OPTIONAL_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_NON_PREWRITTEN_CUSTOM_COMPUTER_SOFTWARE_THAT_ONLY_PROVIDE_UPDATES_OR_UPGRADES_WITH_RESPECT_TO_THE_SOFTWARE =  | 
| 94 | 
            +
                OPTIONAL_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_NON_PREWRITTEN_CUSTOM_COMPUTER_SOFTWARE_THAT_ONLY_PROVIDE_UPDATES_OR_UPGRADES_WITH_RESPECT_TO_THE_SOFTWARE = 30_330
         | 
| 93 95 | 
             
                # Computer Related Products: Optional computer software maintenance contracts with respect to non-prewritten (custom) computer software that only provide updates or upgrades delivered electronically with respect to the software
         | 
| 94 | 
            -
                OPTIONAL_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_NON_PREWRITTEN_CUSTOM_COMPUTER_SOFTWARE_THAT_ONLY_PROVIDE_UPDATES_OR_UPGRADES_DELIVERED_ELECTRONICALLY_WITH_RESPECT_TO_THE_SOFTWARE =  | 
| 96 | 
            +
                OPTIONAL_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_NON_PREWRITTEN_CUSTOM_COMPUTER_SOFTWARE_THAT_ONLY_PROVIDE_UPDATES_OR_UPGRADES_DELIVERED_ELECTRONICALLY_WITH_RESPECT_TO_THE_SOFTWARE = 30_340
         | 
| 95 97 | 
             
                # Computer Related Products: Optional computer software maintenance contracts with respect to non-prewritten (custom) computer software that only provide updates or upgrades delivered via load and leave with respect to the software
         | 
| 96 | 
            -
                OPTIONAL_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_NON_PREWRITTEN_CUSTOM_COMPUTER_SOFTWARE_THAT_ONLY_PROVIDE_UPDATES_OR_UPGRADES_DELIVERED_VIA_LOAD_AND_LEAVE_WITH_RESPECT_TO_THE_SOFTWARE =  | 
| 98 | 
            +
                OPTIONAL_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_NON_PREWRITTEN_CUSTOM_COMPUTER_SOFTWARE_THAT_ONLY_PROVIDE_UPDATES_OR_UPGRADES_DELIVERED_VIA_LOAD_AND_LEAVE_WITH_RESPECT_TO_THE_SOFTWARE = 30_350
         | 
| 97 99 | 
             
                # Computer Related Products: Optional computer software maintenance contracts with respect to non-prewritten (custom) computer software that only provide support services to the software
         | 
| 98 | 
            -
                OPTIONAL_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_NON_PREWRITTEN_CUSTOM_COMPUTER_SOFTWARE_THAT_ONLY_PROVIDE_SUPPORT_SERVICES_TO_THE_SOFTWARE =  | 
| 100 | 
            +
                OPTIONAL_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_NON_PREWRITTEN_CUSTOM_COMPUTER_SOFTWARE_THAT_ONLY_PROVIDE_SUPPORT_SERVICES_TO_THE_SOFTWARE = 30_360
         | 
| 99 101 | 
             
                # Computer Related Products: Optional computer software maintenance contracts with respect to non-prewritten (custom) computer software that provide updates or upgrades and support services to the softwareAppendix E
         | 
| 100 | 
            -
                OPTIONAL_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_NON_PREWRITTEN_CUSTOM_COMPUTER_SOFTWARE_THAT_PROVIDE_UPDATES_OR_UPGRADES_AND_SUPPORT_SERVICES_TO_THE_SOFTWAREAPPENDIX_E =  | 
| 102 | 
            +
                OPTIONAL_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_NON_PREWRITTEN_CUSTOM_COMPUTER_SOFTWARE_THAT_PROVIDE_UPDATES_OR_UPGRADES_AND_SUPPORT_SERVICES_TO_THE_SOFTWAREAPPENDIX_E = 30_370
         | 
| 101 103 | 
             
                # Computer Related Products: Optional computer software maintenance contracts with respect to non-prewritten (custom) computer software that provide updates or upgrades delivered electronically and support services to the software
         | 
| 102 | 
            -
                OPTIONAL_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_NON_PREWRITTEN_CUSTOM_COMPUTER_SOFTWARE_THAT_PROVIDE_UPDATES_OR_UPGRADES_DELIVERED_ELECTRONICALLY_AND_SUPPORT_SERVICES_TO_THE_SOFTWARE =  | 
| 104 | 
            +
                OPTIONAL_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_NON_PREWRITTEN_CUSTOM_COMPUTER_SOFTWARE_THAT_PROVIDE_UPDATES_OR_UPGRADES_DELIVERED_ELECTRONICALLY_AND_SUPPORT_SERVICES_TO_THE_SOFTWARE = 30_380
         | 
| 103 105 | 
             
                # Computer Related Products: Optional computer software maintenance contracts with respect to non-prewritten (custom) computer software provide updates or upgrades delivered via load and leave and support services to the software
         | 
| 104 | 
            -
                OPTIONAL_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_NON_PREWRITTEN_CUSTOM_COMPUTER_SOFTWARE_PROVIDE_UPDATES_OR_UPGRADES_DELIVERED_VIA_LOAD_AND_LEAVE_AND_SUPPORT_SERVICES_TO_THE_SOFTWARE =  | 
| 106 | 
            +
                OPTIONAL_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_NON_PREWRITTEN_CUSTOM_COMPUTER_SOFTWARE_PROVIDE_UPDATES_OR_UPGRADES_DELIVERED_VIA_LOAD_AND_LEAVE_AND_SUPPORT_SERVICES_TO_THE_SOFTWARE = 30_390
         | 
| 105 107 | 
             
                # Computer Related Products: Optional computer software maintenance contracts with respect to prewritten computer software that provide updates or upgrades and support services to the software
         | 
| 106 | 
            -
                OPTIONAL_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_PREWRITTEN_COMPUTER_SOFTWARE_THAT_PROVIDE_UPDATES_OR_UPGRADES_AND_SUPPORT_SERVICES_TO_THE_SOFTWARE =  | 
| 108 | 
            +
                OPTIONAL_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_PREWRITTEN_COMPUTER_SOFTWARE_THAT_PROVIDE_UPDATES_OR_UPGRADES_AND_SUPPORT_SERVICES_TO_THE_SOFTWARE = 30_400
         | 
| 107 109 | 
             
                # Computer Related Products: Optional computer software maintenance contracts with respect to prewritten computer software that provide updates and upgrades delivered electronically and support services to the software
         | 
| 108 | 
            -
                OPTIONAL_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_PREWRITTEN_COMPUTER_SOFTWARE_THAT_PROVIDE_UPDATES_AND_UPGRADES_DELIVERED_ELECTRONICALLY_AND_SUPPORT_SERVICES_TO_THE_SOFTWARE =  | 
| 110 | 
            +
                OPTIONAL_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_PREWRITTEN_COMPUTER_SOFTWARE_THAT_PROVIDE_UPDATES_AND_UPGRADES_DELIVERED_ELECTRONICALLY_AND_SUPPORT_SERVICES_TO_THE_SOFTWARE = 30_410
         | 
| 109 111 | 
             
                # Computer Related Products: Optional computer software maintenance contracts with respect to prewritten computer software that provide updates and upgrades delivered via load and leave and support services to the software
         | 
| 110 | 
            -
                OPTIONAL_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_PREWRITTEN_COMPUTER_SOFTWARE_THAT_PROVIDE_UPDATES_AND_UPGRADES_DELIVERED_VIA_LOAD_AND_LEAVE_AND_SUPPORT_SERVICES_TO_THE_SOFTWARE =  | 
| 112 | 
            +
                OPTIONAL_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_PREWRITTEN_COMPUTER_SOFTWARE_THAT_PROVIDE_UPDATES_AND_UPGRADES_DELIVERED_VIA_LOAD_AND_LEAVE_AND_SUPPORT_SERVICES_TO_THE_SOFTWARE = 30_420
         | 
| 111 113 | 
             
                # Computer Related Products: Optional computer software maintenance contracts with respect to prewritten computer software that only provide support services to the software
         | 
| 112 | 
            -
                OPTIONAL_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_PREWRITTEN_COMPUTER_SOFTWARE_THAT_ONLY_PROVIDE_SUPPORT_SERVICES_TO_THE_SOFTWARE =  | 
| 114 | 
            +
                OPTIONAL_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_PREWRITTEN_COMPUTER_SOFTWARE_THAT_ONLY_PROVIDE_SUPPORT_SERVICES_TO_THE_SOFTWARE = 30_430
         | 
| 113 115 |  | 
| 114 116 | 
             
                # Digital Products
         | 
| 115 117 |  | 
| 116 118 | 
             
                # Digital Products: Products Transferred Electronically
         | 
| 117 | 
            -
                PRODUCTS_TRANSFERRED_ELECTRONICALLY =  | 
| 119 | 
            +
                PRODUCTS_TRANSFERRED_ELECTRONICALLY = 31_000
         | 
| 118 120 | 
             
                # Digital Products: Audio-Visual Works
         | 
| 119 | 
            -
                AUDIO_VISUAL_WORKS =  | 
| 121 | 
            +
                AUDIO_VISUAL_WORKS = 31_035
         | 
| 120 122 | 
             
                # Digital Products: Digital Audio Visual Works (with rights for permanent use)
         | 
| 121 | 
            -
                DIGITAL_AUDIO_VISUAL_WORKS_WITH_RIGHTS_FOR_PERMANENT_USE =  | 
| 123 | 
            +
                DIGITAL_AUDIO_VISUAL_WORKS_WITH_RIGHTS_FOR_PERMANENT_USE = 31_040
         | 
| 122 124 | 
             
                # Digital Products: Digital Audio Visual Works (with rights of less than permanent use)
         | 
| 123 | 
            -
                DIGITAL_AUDIO_VISUAL_WORKS_WITH_RIGHTS_OF_LESS_THAN_PERMANENT_USE =  | 
| 125 | 
            +
                DIGITAL_AUDIO_VISUAL_WORKS_WITH_RIGHTS_OF_LESS_THAN_PERMANENT_USE = 31_050
         | 
| 124 126 | 
             
                # Digital Products: Digital Audio Visual Works (with rights conditioned on continued payments)
         | 
| 125 | 
            -
                DIGITAL_AUDIO_VISUAL_WORKS_WITH_RIGHTS_CONDITIONED_ON_CONTINUED_PAYMENTS =  | 
| 127 | 
            +
                DIGITAL_AUDIO_VISUAL_WORKS_WITH_RIGHTS_CONDITIONED_ON_CONTINUED_PAYMENTS = 31_060
         | 
| 126 128 | 
             
                # Digital Products: Digital Audio Visual Works sold to users other than the end user
         | 
| 127 | 
            -
                DIGITAL_AUDIO_VISUAL_WORKS_SOLD_TO_USERS_OTHER_THAN_THE_END_USER =  | 
| 129 | 
            +
                DIGITAL_AUDIO_VISUAL_WORKS_SOLD_TO_USERS_OTHER_THAN_THE_END_USER = 31_065
         | 
| 128 130 | 
             
                # Digital Products: Audio Works
         | 
| 129 | 
            -
                AUDIO_WORKS =  | 
| 131 | 
            +
                AUDIO_WORKS = 31_069
         | 
| 130 132 | 
             
                # Digital Products: Digital Audio Works (with rights for permanent use)
         | 
| 131 | 
            -
                DIGITAL_AUDIO_WORKS_WITH_RIGHTS_FOR_PERMANENT_USE =  | 
| 133 | 
            +
                DIGITAL_AUDIO_WORKS_WITH_RIGHTS_FOR_PERMANENT_USE = 31_070
         | 
| 132 134 | 
             
                # Digital Products: Digital Audio Works (with rights of less than permanent use)
         | 
| 133 | 
            -
                DIGITAL_AUDIO_WORKS_WITH_RIGHTS_OF_LESS_THAN_PERMANENT_USE =  | 
| 135 | 
            +
                DIGITAL_AUDIO_WORKS_WITH_RIGHTS_OF_LESS_THAN_PERMANENT_USE = 31_080
         | 
| 134 136 | 
             
                # Digital Products: Digital Audio Works (with rights conditioned on continued payments)
         | 
| 135 | 
            -
                DIGITAL_AUDIO_WORKS_WITH_RIGHTS_CONDITIONED_ON_CONTINUED_PAYMENTS =  | 
| 137 | 
            +
                DIGITAL_AUDIO_WORKS_WITH_RIGHTS_CONDITIONED_ON_CONTINUED_PAYMENTS = 31_090
         | 
| 136 138 | 
             
                # Digital Products: Digital Audio Works sold to users other than the end user
         | 
| 137 | 
            -
                DIGITAL_AUDIO_WORKS_SOLD_TO_USERS_OTHER_THAN_THE_END_USER =  | 
| 139 | 
            +
                DIGITAL_AUDIO_WORKS_SOLD_TO_USERS_OTHER_THAN_THE_END_USER = 31_095
         | 
| 138 140 | 
             
                # Digital Products: Digital Books
         | 
| 139 | 
            -
                DIGITAL_BOOKS =  | 
| 141 | 
            +
                DIGITAL_BOOKS = 31_099
         | 
| 140 142 | 
             
                # Digital Products: Digital Books (with rights for permanent use)
         | 
| 141 | 
            -
                DIGITAL_BOOKS_WITH_RIGHTS_FOR_PERMANENT_USE =  | 
| 143 | 
            +
                DIGITAL_BOOKS_WITH_RIGHTS_FOR_PERMANENT_USE = 31_100
         | 
| 142 144 | 
             
                # Digital Products: Digital Books (with rights of less than permanent use)
         | 
| 143 | 
            -
                DIGITAL_BOOKS_WITH_RIGHTS_OF_LESS_THAN_PERMANENT_USE =  | 
| 145 | 
            +
                DIGITAL_BOOKS_WITH_RIGHTS_OF_LESS_THAN_PERMANENT_USE = 31_110
         | 
| 144 146 | 
             
                # Digital Products: Digital Books (with rights conditioned on continued payments)
         | 
| 145 | 
            -
                DIGITAL_BOOKS_WITH_RIGHTS_CONDITIONED_ON_CONTINUED_PAYMENTS =  | 
| 147 | 
            +
                DIGITAL_BOOKS_WITH_RIGHTS_CONDITIONED_ON_CONTINUED_PAYMENTS = 31_120
         | 
| 146 148 | 
             
                # Digital Products: Digital Books sold to users other than the end user
         | 
| 147 | 
            -
                DIGITAL_BOOKS_SOLD_TO_USERS_OTHER_THAN_THE_END_USER =  | 
| 149 | 
            +
                DIGITAL_BOOKS_SOLD_TO_USERS_OTHER_THAN_THE_END_USER = 31_125
         | 
| 148 150 |  | 
| 149 151 | 
             
                # Food and Food Products
         | 
| 150 152 |  | 
| 151 153 | 
             
                # Food and Food Products: Candy
         | 
| 152 | 
            -
                CANDY =  | 
| 154 | 
            +
                CANDY = 40_010
         | 
| 153 155 | 
             
                # Food and Food Products: Dietary Supplements
         | 
| 154 | 
            -
                DIETARY_SUPPLEMENTS =  | 
| 156 | 
            +
                DIETARY_SUPPLEMENTS = 40_020
         | 
| 155 157 | 
             
                # Food and Food Products: Food and food ingredients excluding alcoholic beverages and tobacco
         | 
| 156 | 
            -
                FOOD_AND_FOOD_INGREDIENTS_EXCLUDING_ALCOHOLIC_BEVERAGES_AND_TOBACCO =  | 
| 158 | 
            +
                FOOD_AND_FOOD_INGREDIENTS_EXCLUDING_ALCOHOLIC_BEVERAGES_AND_TOBACCO = 40_030
         | 
| 157 159 | 
             
                # Food and Food Products: Food sold through vending machines
         | 
| 158 | 
            -
                FOOD_SOLD_THROUGH_VENDING_MACHINES =  | 
| 160 | 
            +
                FOOD_SOLD_THROUGH_VENDING_MACHINES = 40_040
         | 
| 159 161 | 
             
                # Food and Food Products: Soft Drinks
         | 
| 160 | 
            -
                SOFT_DRINKS =  | 
| 162 | 
            +
                SOFT_DRINKS = 40_050
         | 
| 161 163 | 
             
                # Food and Food Products: Bottled Water
         | 
| 162 | 
            -
                BOTTLED_WATER =  | 
| 164 | 
            +
                BOTTLED_WATER = 40_060
         | 
| 163 165 |  | 
| 164 166 | 
             
                # Prepared Food
         | 
| 165 167 |  | 
| 166 168 | 
             
                # Prepared Food: Prepared Food
         | 
| 167 | 
            -
                PREPARED_FOOD =  | 
| 169 | 
            +
                PREPARED_FOOD = 41_000
         | 
| 168 170 | 
             
                # Prepared Food: Food sold without eating utensils provided by the seller whose primary NAICS classification is manufacturing in sector 311, except subsector 3118 (bakeries)
         | 
| 169 | 
            -
                FOOD_SOLD_WITHOUT_EATING_UTENSILS_PROVIDED_BY_THE_SELLER_WHOSE_PRIMARY_NAICS_CLASSIFICATION_IS_MANUFACTURING_IN_SECTOR_311_EXCEPT_SUBSECTOR_3118_BAKERIES =  | 
| 171 | 
            +
                FOOD_SOLD_WITHOUT_EATING_UTENSILS_PROVIDED_BY_THE_SELLER_WHOSE_PRIMARY_NAICS_CLASSIFICATION_IS_MANUFACTURING_IN_SECTOR_311_EXCEPT_SUBSECTOR_3118_BAKERIES = 41_010
         | 
| 170 172 | 
             
                # Prepared Food: Food sold without eating utensils provided by the seller in an unheated state by weight or volume as a single item
         | 
| 171 | 
            -
                FOOD_SOLD_WITHOUT_EATING_UTENSILS_PROVIDED_BY_THE_SELLER_IN_AN_UNHEATED_STATE_BY_WEIGHT_OR_VOLUME_AS_A_SINGLE_ITEM =  | 
| 173 | 
            +
                FOOD_SOLD_WITHOUT_EATING_UTENSILS_PROVIDED_BY_THE_SELLER_IN_AN_UNHEATED_STATE_BY_WEIGHT_OR_VOLUME_AS_A_SINGLE_ITEM = 41_020
         | 
| 172 174 | 
             
                # Prepared Food: Bakery items sold without eating utensils provided by the seller, including bread, rolls, buns, biscuits, bagels, croissants, pastries, donuts, Danish, cakes, tortes, pies, tarts, muffins, bars, cookies, tortillas
         | 
| 173 | 
            -
                BAKERY_ITEMS_SOLD_WITHOUT_EATING_UTENSILS_PROVIDED_BY_THE_SELLER_INCLUDING_BREAD_ROLLS_BUNS_BISCUITS_BAGELS_CROISSANTS_PASTRIES_DONUTS_DANISH_CAKES_TORTES_PIES_TARTS_MUFFINS_BARS_COOKIES_TORTILLAS =  | 
| 175 | 
            +
                BAKERY_ITEMS_SOLD_WITHOUT_EATING_UTENSILS_PROVIDED_BY_THE_SELLER_INCLUDING_BREAD_ROLLS_BUNS_BISCUITS_BAGELS_CROISSANTS_PASTRIES_DONUTS_DANISH_CAKES_TORTES_PIES_TARTS_MUFFINS_BARS_COOKIES_TORTILLAS = 41_030
         | 
| 174 176 |  | 
| 175 177 | 
             
                # Drugs
         | 
| 176 178 |  | 
| 177 179 | 
             
                # Drugs: Drugs/Pharmaceuticals
         | 
| 178 | 
            -
                DRUGS_PHARMACEUTICALS =  | 
| 180 | 
            +
                DRUGS_PHARMACEUTICALS = 51_000
         | 
| 179 181 | 
             
                # Drugs: Human use
         | 
| 180 | 
            -
                HUMAN_USE =  | 
| 182 | 
            +
                HUMAN_USE = 51_001
         | 
| 181 183 | 
             
                # Drugs: Animal/Veterinary use
         | 
| 182 | 
            -
                ANIMAL_VETERINARY_USE =  | 
| 184 | 
            +
                ANIMAL_VETERINARY_USE = 51_002
         | 
| 183 185 | 
             
                # Drugs: Drugs for human use without a prescription
         | 
| 184 | 
            -
                DRUGS_FOR_HUMAN_USE_WITHOUT_A_PRESCRIPTION =  | 
| 186 | 
            +
                DRUGS_FOR_HUMAN_USE_WITHOUT_A_PRESCRIPTION = 51_010
         | 
| 185 187 | 
             
                # Drugs: Drugs for human use with a prescription
         | 
| 186 | 
            -
                DRUGS_FOR_HUMAN_USE_WITH_A_PRESCRIPTION =  | 
| 188 | 
            +
                DRUGS_FOR_HUMAN_USE_WITH_A_PRESCRIPTION = 51_020
         | 
| 187 189 | 
             
                # Drugs: Drugs for animal use without a prescription
         | 
| 188 | 
            -
                DRUGS_FOR_ANIMAL_USE_WITHOUT_A_PRESCRIPTION =  | 
| 190 | 
            +
                DRUGS_FOR_ANIMAL_USE_WITHOUT_A_PRESCRIPTION = 51_030
         | 
| 189 191 | 
             
                # Drugs: Drugs for animal use with a prescription
         | 
| 190 | 
            -
                DRUGS_FOR_ANIMAL_USE_WITH_A_PRESCRIPTION =  | 
| 192 | 
            +
                DRUGS_FOR_ANIMAL_USE_WITH_A_PRESCRIPTION = 51_040
         | 
| 191 193 | 
             
                # Drugs: Insulin for human use without a prescription
         | 
| 192 | 
            -
                INSULIN_FOR_HUMAN_USE_WITHOUT_A_PRESCRIPTION =  | 
| 194 | 
            +
                INSULIN_FOR_HUMAN_USE_WITHOUT_A_PRESCRIPTION = 51_050
         | 
| 193 195 | 
             
                # Drugs: Insulin
         | 
| 194 | 
            -
                INSULIN =  | 
| 196 | 
            +
                INSULIN = 51_055
         | 
| 195 197 | 
             
                # Drugs: Insulin for human use with a prescription
         | 
| 196 | 
            -
                INSULIN_FOR_HUMAN_USE_WITH_A_PRESCRIPTION =  | 
| 198 | 
            +
                INSULIN_FOR_HUMAN_USE_WITH_A_PRESCRIPTION = 51_060
         | 
| 197 199 | 
             
                # Drugs: Insulin for animal use without a prescription
         | 
| 198 | 
            -
                INSULIN_FOR_ANIMAL_USE_WITHOUT_A_PRESCRIPTION =  | 
| 200 | 
            +
                INSULIN_FOR_ANIMAL_USE_WITHOUT_A_PRESCRIPTION = 51_070
         | 
| 199 201 | 
             
                # Drugs: Insulin
         | 
| 200 | 
            -
                INSULIN_1 =  | 
| 202 | 
            +
                INSULIN_1 = 51_075
         | 
| 201 203 | 
             
                # Drugs: Insulin for animal use with a prescription
         | 
| 202 | 
            -
                INSULIN_FOR_ANIMAL_USE_WITH_A_PRESCRIPTION =  | 
| 204 | 
            +
                INSULIN_FOR_ANIMAL_USE_WITH_A_PRESCRIPTION = 51_080
         | 
| 203 205 | 
             
                # Drugs: Medical oxygen for human use without a prescription
         | 
| 204 | 
            -
                MEDICAL_OXYGEN_FOR_HUMAN_USE_WITHOUT_A_PRESCRIPTION =  | 
| 206 | 
            +
                MEDICAL_OXYGEN_FOR_HUMAN_USE_WITHOUT_A_PRESCRIPTION = 51_090
         | 
| 205 207 | 
             
                # Drugs: Oxygen
         | 
| 206 | 
            -
                OXYGEN =  | 
| 208 | 
            +
                OXYGEN = 51_095
         | 
| 207 209 | 
             
                # Drugs: Medical oxygen for human use with a prescription
         | 
| 208 | 
            -
                MEDICAL_OXYGEN_FOR_HUMAN_USE_WITH_A_PRESCRIPTION =  | 
| 210 | 
            +
                MEDICAL_OXYGEN_FOR_HUMAN_USE_WITH_A_PRESCRIPTION = 51_100
         | 
| 209 211 | 
             
                # Drugs: Medical oxygen for animal use without a prescription
         | 
| 210 | 
            -
                MEDICAL_OXYGEN_FOR_ANIMAL_USE_WITHOUT_A_PRESCRIPTION =  | 
| 212 | 
            +
                MEDICAL_OXYGEN_FOR_ANIMAL_USE_WITHOUT_A_PRESCRIPTION = 51_110
         | 
| 211 213 | 
             
                # Drugs: Oxygen
         | 
| 212 | 
            -
                OXYGEN_1 =  | 
| 214 | 
            +
                OXYGEN_1 = 51_115
         | 
| 213 215 | 
             
                # Drugs: Medical oxygen for animal use with a prescription
         | 
| 214 | 
            -
                MEDICAL_OXYGEN_FOR_ANIMAL_USE_WITH_A_PRESCRIPTION =  | 
| 216 | 
            +
                MEDICAL_OXYGEN_FOR_ANIMAL_USE_WITH_A_PRESCRIPTION = 51_120
         | 
| 215 217 | 
             
                # Drugs: Over-the-counter drugs for human use without a prescription
         | 
| 216 | 
            -
                OVER_THE_COUNTER_DRUGS_FOR_HUMAN_USE_WITHOUT_A_PRESCRIPTION =  | 
| 218 | 
            +
                OVER_THE_COUNTER_DRUGS_FOR_HUMAN_USE_WITHOUT_A_PRESCRIPTION = 51_130
         | 
| 217 219 | 
             
                # Drugs: Over-the-counter
         | 
| 218 | 
            -
                OVER_THE_COUNTER =  | 
| 220 | 
            +
                OVER_THE_COUNTER = 51_135
         | 
| 219 221 | 
             
                # Drugs: Over-the-counter drugs for human use with a prescription
         | 
| 220 | 
            -
                OVER_THE_COUNTER_DRUGS_FOR_HUMAN_USE_WITH_A_PRESCRIPTION =  | 
| 222 | 
            +
                OVER_THE_COUNTER_DRUGS_FOR_HUMAN_USE_WITH_A_PRESCRIPTION = 51_140
         | 
| 221 223 | 
             
                # Drugs: Over-the-counter drugs for animal use without a prescription
         | 
| 222 | 
            -
                OVER_THE_COUNTER_DRUGS_FOR_ANIMAL_USE_WITHOUT_A_PRESCRIPTION =  | 
| 224 | 
            +
                OVER_THE_COUNTER_DRUGS_FOR_ANIMAL_USE_WITHOUT_A_PRESCRIPTION = 51_150
         | 
| 223 225 | 
             
                # Drugs: Over-the-counter
         | 
| 224 | 
            -
                OVER_THE_COUNTER_1 =  | 
| 226 | 
            +
                OVER_THE_COUNTER_1 = 51_155
         | 
| 225 227 | 
             
                # Drugs: Over-the-counter drugs for animal use with a prescription
         | 
| 226 | 
            -
                OVER_THE_COUNTER_DRUGS_FOR_ANIMAL_USE_WITH_A_PRESCRIPTION =  | 
| 228 | 
            +
                OVER_THE_COUNTER_DRUGS_FOR_ANIMAL_USE_WITH_A_PRESCRIPTION = 51_160
         | 
| 227 229 | 
             
                # Drugs: Grooming and hygiene products for human use
         | 
| 228 | 
            -
                GROOMING_AND_HYGIENE_PRODUCTS_FOR_HUMAN_USE =  | 
| 230 | 
            +
                GROOMING_AND_HYGIENE_PRODUCTS_FOR_HUMAN_USE = 51_170
         | 
| 229 231 | 
             
                # Drugs: Grooming and hygiene products for animal use
         | 
| 230 | 
            -
                GROOMING_AND_HYGIENE_PRODUCTS_FOR_ANIMAL_USE =  | 
| 232 | 
            +
                GROOMING_AND_HYGIENE_PRODUCTS_FOR_ANIMAL_USE = 51_180
         | 
| 231 233 | 
             
                # Drugs: Drugs for human use to hospitals
         | 
| 232 | 
            -
                DRUGS_FOR_HUMAN_USE_TO_HOSPITALS =  | 
| 234 | 
            +
                DRUGS_FOR_HUMAN_USE_TO_HOSPITALS = 51_190
         | 
| 233 235 | 
             
                # Drugs: Drugs for human use to other medical facilities
         | 
| 234 | 
            -
                DRUGS_FOR_HUMAN_USE_TO_OTHER_MEDICAL_FACILITIES =  | 
| 236 | 
            +
                DRUGS_FOR_HUMAN_USE_TO_OTHER_MEDICAL_FACILITIES = 51_195
         | 
| 235 237 | 
             
                # Drugs: Prescription drugs for human use to hospitals
         | 
| 236 | 
            -
                PRESCRIPTION_DRUGS_FOR_HUMAN_USE_TO_HOSPITALS =  | 
| 238 | 
            +
                PRESCRIPTION_DRUGS_FOR_HUMAN_USE_TO_HOSPITALS = 51_200
         | 
| 237 239 | 
             
                # Drugs: Prescription drugs for human use to other medical facilities
         | 
| 238 | 
            -
                PRESCRIPTION_DRUGS_FOR_HUMAN_USE_TO_OTHER_MEDICAL_FACILITIES =  | 
| 240 | 
            +
                PRESCRIPTION_DRUGS_FOR_HUMAN_USE_TO_OTHER_MEDICAL_FACILITIES = 51_205
         | 
| 239 241 | 
             
                # Drugs: Drugs for animal use to veterinary hospitals and other animal medical facilities
         | 
| 240 | 
            -
                DRUGS_FOR_ANIMAL_USE_TO_VETERINARY_HOSPITALS_AND_OTHER_ANIMAL_MEDICAL_FACILITIES =  | 
| 242 | 
            +
                DRUGS_FOR_ANIMAL_USE_TO_VETERINARY_HOSPITALS_AND_OTHER_ANIMAL_MEDICAL_FACILITIES = 51_210
         | 
| 241 243 | 
             
                # Drugs: Prescription drugs for animal use to hospitals and other animal medical facilities
         | 
| 242 | 
            -
                PRESCRIPTION_DRUGS_FOR_ANIMAL_USE_TO_HOSPITALS_AND_OTHER_ANIMAL_MEDICAL_FACILITIES =  | 
| 244 | 
            +
                PRESCRIPTION_DRUGS_FOR_ANIMAL_USE_TO_HOSPITALS_AND_OTHER_ANIMAL_MEDICAL_FACILITIES = 51_220
         | 
| 243 245 | 
             
                # Drugs: Free samples of drugs for human use
         | 
| 244 | 
            -
                FREE_SAMPLES_OF_DRUGS_FOR_HUMAN_USE =  | 
| 246 | 
            +
                FREE_SAMPLES_OF_DRUGS_FOR_HUMAN_USE = 51_240
         | 
| 245 247 | 
             
                # Drugs: Free Samples
         | 
| 246 | 
            -
                FREE_SAMPLES =  | 
| 248 | 
            +
                FREE_SAMPLES = 51_245
         | 
| 247 249 | 
             
                # Drugs: Free samples of prescription drugs for human use
         | 
| 248 | 
            -
                FREE_SAMPLES_OF_PRESCRIPTION_DRUGS_FOR_HUMAN_USE =  | 
| 250 | 
            +
                FREE_SAMPLES_OF_PRESCRIPTION_DRUGS_FOR_HUMAN_USE = 51_250
         | 
| 249 251 | 
             
                # Drugs: Free samples of drugs for animal use
         | 
| 250 | 
            -
                FREE_SAMPLES_OF_DRUGS_FOR_ANIMAL_USE =  | 
| 252 | 
            +
                FREE_SAMPLES_OF_DRUGS_FOR_ANIMAL_USE = 51_260
         | 
| 251 253 | 
             
                # Drugs: Free Samples
         | 
| 252 | 
            -
                FREE_SAMPLES_1 =  | 
| 254 | 
            +
                FREE_SAMPLES_1 = 51_265
         | 
| 253 255 | 
             
                # Drugs: Free samples of prescription drugs for animal use
         | 
| 254 | 
            -
                FREE_SAMPLES_OF_PRESCRIPTION_DRUGS_FOR_ANIMAL_USE =  | 
| 256 | 
            +
                FREE_SAMPLES_OF_PRESCRIPTION_DRUGS_FOR_ANIMAL_USE = 51_270
         | 
| 255 257 |  | 
| 256 258 | 
             
                # Durable Medical Equipment
         | 
| 257 259 |  | 
| 258 260 | 
             
                # Durable Medical Equipment: Durable medical equipment
         | 
| 259 | 
            -
                DURABLE_MEDICAL_EQUIPMENT =  | 
| 261 | 
            +
                DURABLE_MEDICAL_EQUIPMENT = 52_000
         | 
| 260 262 | 
             
                # Durable Medical Equipment: for Commercial/Industrial/Civic use
         | 
| 261 | 
            -
                FOR_COMMERCIAL_INDUSTRIAL_CIVIC_USE =  | 
| 263 | 
            +
                FOR_COMMERCIAL_INDUSTRIAL_CIVIC_USE = 52_005
         | 
| 262 264 | 
             
                # Durable Medical Equipment: Durable medical equipment without a prescription
         | 
| 263 | 
            -
                DURABLE_MEDICAL_EQUIPMENT_WITHOUT_A_PRESCRIPTION =  | 
| 265 | 
            +
                DURABLE_MEDICAL_EQUIPMENT_WITHOUT_A_PRESCRIPTION = 52_010
         | 
| 264 266 | 
             
                # Durable Medical Equipment: Durable medical equipment with a prescription
         | 
| 265 | 
            -
                DURABLE_MEDICAL_EQUIPMENT_WITH_A_PRESCRIPTION =  | 
| 267 | 
            +
                DURABLE_MEDICAL_EQUIPMENT_WITH_A_PRESCRIPTION = 52_020
         | 
| 266 268 | 
             
                # Durable Medical Equipment: Durable medical equipment with a prescription paid for by Medicare
         | 
| 267 | 
            -
                DURABLE_MEDICAL_EQUIPMENT_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICARE =  | 
| 269 | 
            +
                DURABLE_MEDICAL_EQUIPMENT_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICARE = 52_030
         | 
| 268 270 | 
             
                # Durable Medical Equipment: Durable medical equipment with a prescription reimbursed by Medicare
         | 
| 269 | 
            -
                DURABLE_MEDICAL_EQUIPMENT_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICARE =  | 
| 271 | 
            +
                DURABLE_MEDICAL_EQUIPMENT_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICARE = 52_040
         | 
| 270 272 | 
             
                # Durable Medical Equipment: Durable medical equipment with a prescription paid for by MedicaidAppendix E
         | 
| 271 | 
            -
                DURABLE_MEDICAL_EQUIPMENT_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICAIDAPPENDIX_E =  | 
| 273 | 
            +
                DURABLE_MEDICAL_EQUIPMENT_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICAIDAPPENDIX_E = 52_050
         | 
| 272 274 | 
             
                # Durable Medical Equipment: Durable medical equipment with a prescription reimbursed by Medicaid
         | 
| 273 | 
            -
                DURABLE_MEDICAL_EQUIPMENT_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICAID =  | 
| 275 | 
            +
                DURABLE_MEDICAL_EQUIPMENT_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICAID = 52_060
         | 
| 274 276 | 
             
                # Durable Medical Equipment: for home use
         | 
| 275 | 
            -
                FOR_HOME_USE =  | 
| 277 | 
            +
                FOR_HOME_USE = 52_065
         | 
| 276 278 | 
             
                # Durable Medical Equipment: Durable medical equipment for home use without a prescription
         | 
| 277 | 
            -
                DURABLE_MEDICAL_EQUIPMENT_FOR_HOME_USE_WITHOUT_A_PRESCRIPTION =  | 
| 279 | 
            +
                DURABLE_MEDICAL_EQUIPMENT_FOR_HOME_USE_WITHOUT_A_PRESCRIPTION = 52_070
         | 
| 278 280 | 
             
                # Durable Medical Equipment: Durable medical equipment for home use with a prescription
         | 
| 279 | 
            -
                DURABLE_MEDICAL_EQUIPMENT_FOR_HOME_USE_WITH_A_PRESCRIPTION =  | 
| 281 | 
            +
                DURABLE_MEDICAL_EQUIPMENT_FOR_HOME_USE_WITH_A_PRESCRIPTION = 52_080
         | 
| 280 282 | 
             
                # Durable Medical Equipment: Durable medical equipment for home use with a prescription paid for by Medicare
         | 
| 281 | 
            -
                DURABLE_MEDICAL_EQUIPMENT_FOR_HOME_USE_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICARE =  | 
| 283 | 
            +
                DURABLE_MEDICAL_EQUIPMENT_FOR_HOME_USE_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICARE = 52_090
         | 
| 282 284 | 
             
                # Durable Medical Equipment: Durable medical equipment for home use with a prescription reimbursed by Medicare
         | 
| 283 | 
            -
                DURABLE_MEDICAL_EQUIPMENT_FOR_HOME_USE_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICARE =  | 
| 285 | 
            +
                DURABLE_MEDICAL_EQUIPMENT_FOR_HOME_USE_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICARE = 52_100
         | 
| 284 286 | 
             
                # Durable Medical Equipment: Durable medical equipment for home use with a prescription paid for by Medicaid
         | 
| 285 | 
            -
                DURABLE_MEDICAL_EQUIPMENT_FOR_HOME_USE_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICAID =  | 
| 287 | 
            +
                DURABLE_MEDICAL_EQUIPMENT_FOR_HOME_USE_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICAID = 52_110
         | 
| 286 288 | 
             
                # Durable Medical Equipment: Durable medical equipment for home use with a prescription reimbursed by Medicaid
         | 
| 287 | 
            -
                DURABLE_MEDICAL_EQUIPMENT_FOR_HOME_USE_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICAID =  | 
| 289 | 
            +
                DURABLE_MEDICAL_EQUIPMENT_FOR_HOME_USE_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICAID = 52_120
         | 
| 288 290 | 
             
                # Durable Medical Equipment: Oxygen delivery equipment
         | 
| 289 | 
            -
                OXYGEN_DELIVERY_EQUIPMENT =  | 
| 291 | 
            +
                OXYGEN_DELIVERY_EQUIPMENT = 52_125
         | 
| 290 292 | 
             
                # Durable Medical Equipment: for Commercial/Industrial/Civic use
         | 
| 291 | 
            -
                FOR_COMMERCIAL_INDUSTRIAL_CIVIC_USE_1 =  | 
| 293 | 
            +
                FOR_COMMERCIAL_INDUSTRIAL_CIVIC_USE_1 = 52_128
         | 
| 292 294 | 
             
                # Durable Medical Equipment: Oxygen delivery equipment without a prescription
         | 
| 293 | 
            -
                OXYGEN_DELIVERY_EQUIPMENT_WITHOUT_A_PRESCRIPTION =  | 
| 295 | 
            +
                OXYGEN_DELIVERY_EQUIPMENT_WITHOUT_A_PRESCRIPTION = 52_130
         | 
| 294 296 | 
             
                # Durable Medical Equipment: Oxygen delivery equipment with a prescription
         | 
| 295 | 
            -
                OXYGEN_DELIVERY_EQUIPMENT_WITH_A_PRESCRIPTION =  | 
| 297 | 
            +
                OXYGEN_DELIVERY_EQUIPMENT_WITH_A_PRESCRIPTION = 52_140
         | 
| 296 298 | 
             
                # Durable Medical Equipment: Oxygen delivery equipment with a prescription paid for by Medicare
         | 
| 297 | 
            -
                OXYGEN_DELIVERY_EQUIPMENT_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICARE =  | 
| 299 | 
            +
                OXYGEN_DELIVERY_EQUIPMENT_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICARE = 52_150
         | 
| 298 300 | 
             
                # Durable Medical Equipment: Oxygen delivery equipment with a prescription reimbursed by Medicare
         | 
| 299 | 
            -
                OXYGEN_DELIVERY_EQUIPMENT_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICARE =  | 
| 301 | 
            +
                OXYGEN_DELIVERY_EQUIPMENT_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICARE = 52_160
         | 
| 300 302 | 
             
                # Durable Medical Equipment: Oxygen delivery equipment with a prescription paid for by Medicaid
         | 
| 301 | 
            -
                OXYGEN_DELIVERY_EQUIPMENT_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICAID =  | 
| 303 | 
            +
                OXYGEN_DELIVERY_EQUIPMENT_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICAID = 52_170
         | 
| 302 304 | 
             
                # Durable Medical Equipment: Oxygen delivery equipment with a prescription reimbursed by Medicaid
         | 
| 303 | 
            -
                OXYGEN_DELIVERY_EQUIPMENT_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICAID =  | 
| 305 | 
            +
                OXYGEN_DELIVERY_EQUIPMENT_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICAID = 52_180
         | 
| 304 306 | 
             
                # Durable Medical Equipment: for home use
         | 
| 305 | 
            -
                FOR_HOME_USE_1 =  | 
| 307 | 
            +
                FOR_HOME_USE_1 = 52_185
         | 
| 306 308 | 
             
                # Durable Medical Equipment: Oxygen delivery equipment for home use without a prescription
         | 
| 307 | 
            -
                OXYGEN_DELIVERY_EQUIPMENT_FOR_HOME_USE_WITHOUT_A_PRESCRIPTION =  | 
| 309 | 
            +
                OXYGEN_DELIVERY_EQUIPMENT_FOR_HOME_USE_WITHOUT_A_PRESCRIPTION = 52_190
         | 
| 308 310 | 
             
                # Durable Medical Equipment: Oxygen delivery equipment for home use with a prescription
         | 
| 309 | 
            -
                OXYGEN_DELIVERY_EQUIPMENT_FOR_HOME_USE_WITH_A_PRESCRIPTION =  | 
| 311 | 
            +
                OXYGEN_DELIVERY_EQUIPMENT_FOR_HOME_USE_WITH_A_PRESCRIPTION = 52_200
         | 
| 310 312 | 
             
                # Durable Medical Equipment: Oxygen delivery equipment with a prescription for home use paid for by Medicare
         | 
| 311 | 
            -
                OXYGEN_DELIVERY_EQUIPMENT_WITH_A_PRESCRIPTION_FOR_HOME_USE_PAID_FOR_BY_MEDICARE =  | 
| 313 | 
            +
                OXYGEN_DELIVERY_EQUIPMENT_WITH_A_PRESCRIPTION_FOR_HOME_USE_PAID_FOR_BY_MEDICARE = 52_210
         | 
| 312 314 | 
             
                # Durable Medical Equipment: Oxygen delivery equipment with a prescription for home use reimbursed by Medicare
         | 
| 313 | 
            -
                OXYGEN_DELIVERY_EQUIPMENT_WITH_A_PRESCRIPTION_FOR_HOME_USE_REIMBURSED_BY_MEDICARE =  | 
| 315 | 
            +
                OXYGEN_DELIVERY_EQUIPMENT_WITH_A_PRESCRIPTION_FOR_HOME_USE_REIMBURSED_BY_MEDICARE = 52_220
         | 
| 314 316 | 
             
                # Durable Medical Equipment: Oxygen delivery equipment with a prescription for home use paid for by Medicaid
         | 
| 315 | 
            -
                OXYGEN_DELIVERY_EQUIPMENT_WITH_A_PRESCRIPTION_FOR_HOME_USE_PAID_FOR_BY_MEDICAID =  | 
| 317 | 
            +
                OXYGEN_DELIVERY_EQUIPMENT_WITH_A_PRESCRIPTION_FOR_HOME_USE_PAID_FOR_BY_MEDICAID = 52_230
         | 
| 316 318 | 
             
                # Durable Medical Equipment: Oxygen delivery equipment with a prescription for home use reimbursed by Medicaid
         | 
| 317 | 
            -
                OXYGEN_DELIVERY_EQUIPMENT_WITH_A_PRESCRIPTION_FOR_HOME_USE_REIMBURSED_BY_MEDICAID =  | 
| 319 | 
            +
                OXYGEN_DELIVERY_EQUIPMENT_WITH_A_PRESCRIPTION_FOR_HOME_USE_REIMBURSED_BY_MEDICAID = 52_240
         | 
| 318 320 | 
             
                # Durable Medical Equipment: Kidney dialysis equipment
         | 
| 319 | 
            -
                KIDNEY_DIALYSIS_EQUIPMENT =  | 
| 321 | 
            +
                KIDNEY_DIALYSIS_EQUIPMENT = 52_245
         | 
| 320 322 | 
             
                # Durable Medical Equipment: for Commercial/Industrial/Civic use
         | 
| 321 | 
            -
                FOR_COMMERCIAL_INDUSTRIAL_CIVIC_USE_2 =  | 
| 323 | 
            +
                FOR_COMMERCIAL_INDUSTRIAL_CIVIC_USE_2 = 52_248
         | 
| 322 324 | 
             
                # Durable Medical Equipment: Kidney dialysis equipment without a prescription
         | 
| 323 | 
            -
                KIDNEY_DIALYSIS_EQUIPMENT_WITHOUT_A_PRESCRIPTION =  | 
| 325 | 
            +
                KIDNEY_DIALYSIS_EQUIPMENT_WITHOUT_A_PRESCRIPTION = 52_250
         | 
| 324 326 | 
             
                # Durable Medical Equipment: Kidney dialysis equipment with a prescription
         | 
| 325 | 
            -
                KIDNEY_DIALYSIS_EQUIPMENT_WITH_A_PRESCRIPTION =  | 
| 327 | 
            +
                KIDNEY_DIALYSIS_EQUIPMENT_WITH_A_PRESCRIPTION = 52_260
         | 
| 326 328 | 
             
                # Durable Medical Equipment: Kidney dialysis equipment with a prescription paid for by Medicare
         | 
| 327 | 
            -
                KIDNEY_DIALYSIS_EQUIPMENT_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICARE =  | 
| 329 | 
            +
                KIDNEY_DIALYSIS_EQUIPMENT_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICARE = 52_270
         | 
| 328 330 | 
             
                # Durable Medical Equipment: Kidney dialysis equipment with a prescription reimbursed by Medicare
         | 
| 329 | 
            -
                KIDNEY_DIALYSIS_EQUIPMENT_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICARE =  | 
| 331 | 
            +
                KIDNEY_DIALYSIS_EQUIPMENT_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICARE = 52_280
         | 
| 330 332 | 
             
                # Durable Medical Equipment: Kidney dialysis equipment with a prescription paid for by Medicaid
         | 
| 331 | 
            -
                KIDNEY_DIALYSIS_EQUIPMENT_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICAID =  | 
| 333 | 
            +
                KIDNEY_DIALYSIS_EQUIPMENT_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICAID = 52_290
         | 
| 332 334 | 
             
                # Durable Medical Equipment: Kidney dialysis equipment with a prescription reimbursed by Medicaid
         | 
| 333 | 
            -
                KIDNEY_DIALYSIS_EQUIPMENT_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICAID =  | 
| 335 | 
            +
                KIDNEY_DIALYSIS_EQUIPMENT_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICAID = 52_300
         | 
| 334 336 | 
             
                # Durable Medical Equipment: for home use
         | 
| 335 | 
            -
                FOR_HOME_USE_2 =  | 
| 337 | 
            +
                FOR_HOME_USE_2 = 52_305
         | 
| 336 338 | 
             
                # Durable Medical Equipment: Kidney dialysis equipment for home use without a prescription
         | 
| 337 | 
            -
                KIDNEY_DIALYSIS_EQUIPMENT_FOR_HOME_USE_WITHOUT_A_PRESCRIPTION =  | 
| 339 | 
            +
                KIDNEY_DIALYSIS_EQUIPMENT_FOR_HOME_USE_WITHOUT_A_PRESCRIPTION = 52_310
         | 
| 338 340 | 
             
                # Durable Medical Equipment: Kidney dialysis equipment for home use with a prescription
         | 
| 339 | 
            -
                KIDNEY_DIALYSIS_EQUIPMENT_FOR_HOME_USE_WITH_A_PRESCRIPTION =  | 
| 341 | 
            +
                KIDNEY_DIALYSIS_EQUIPMENT_FOR_HOME_USE_WITH_A_PRESCRIPTION = 52_320
         | 
| 340 342 | 
             
                # Durable Medical Equipment: Kidney dialysis equipment for home use with a prescription paid for by Medicare
         | 
| 341 | 
            -
                KIDNEY_DIALYSIS_EQUIPMENT_FOR_HOME_USE_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICARE =  | 
| 343 | 
            +
                KIDNEY_DIALYSIS_EQUIPMENT_FOR_HOME_USE_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICARE = 52_330
         | 
| 342 344 | 
             
                # Durable Medical Equipment: Kidney dialysis equipment for home use with a prescription reimbursed by Medicare
         | 
| 343 | 
            -
                KIDNEY_DIALYSIS_EQUIPMENT_FOR_HOME_USE_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICARE =  | 
| 345 | 
            +
                KIDNEY_DIALYSIS_EQUIPMENT_FOR_HOME_USE_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICARE = 52_340
         | 
| 344 346 | 
             
                # Durable Medical Equipment: Kidney dialysis equipment for home use with a prescription paid for by Medicaid
         | 
| 345 | 
            -
                KIDNEY_DIALYSIS_EQUIPMENT_FOR_HOME_USE_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICAID =  | 
| 347 | 
            +
                KIDNEY_DIALYSIS_EQUIPMENT_FOR_HOME_USE_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICAID = 52_350
         | 
| 346 348 | 
             
                # Durable Medical Equipment: Kidney dialysis equipment for home use with a prescription reimbursed by Medicaid
         | 
| 347 | 
            -
                KIDNEY_DIALYSIS_EQUIPMENT_FOR_HOME_USE_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICAID =  | 
| 349 | 
            +
                KIDNEY_DIALYSIS_EQUIPMENT_FOR_HOME_USE_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICAID = 52_360
         | 
| 348 350 | 
             
                # Durable Medical Equipment: Enteral feeding systems
         | 
| 349 | 
            -
                ENTERAL_FEEDING_SYSTEMS =  | 
| 351 | 
            +
                ENTERAL_FEEDING_SYSTEMS = 52_365
         | 
| 350 352 | 
             
                # Durable Medical Equipment: for Commercial/Industrial/Civic use
         | 
| 351 | 
            -
                FOR_COMMERCIAL_INDUSTRIAL_CIVIC_USE_3 =  | 
| 353 | 
            +
                FOR_COMMERCIAL_INDUSTRIAL_CIVIC_USE_3 = 52_368
         | 
| 352 354 | 
             
                # Durable Medical Equipment: Enteral feeding systems without a prescription
         | 
| 353 | 
            -
                ENTERAL_FEEDING_SYSTEMS_WITHOUT_A_PRESCRIPTION =  | 
| 355 | 
            +
                ENTERAL_FEEDING_SYSTEMS_WITHOUT_A_PRESCRIPTION = 52_370
         | 
| 354 356 | 
             
                # Durable Medical Equipment: Enteral feeding systems with a prescription
         | 
| 355 | 
            -
                ENTERAL_FEEDING_SYSTEMS_WITH_A_PRESCRIPTION =  | 
| 357 | 
            +
                ENTERAL_FEEDING_SYSTEMS_WITH_A_PRESCRIPTION = 52_380
         | 
| 356 358 | 
             
                # Durable Medical Equipment: Enteral feeding systems with a prescription paid for by Medicare
         | 
| 357 | 
            -
                ENTERAL_FEEDING_SYSTEMS_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICARE =  | 
| 359 | 
            +
                ENTERAL_FEEDING_SYSTEMS_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICARE = 52_390
         | 
| 358 360 | 
             
                # Durable Medical Equipment: Enteral feeding systems with a prescription reimbursed by Medicare
         | 
| 359 | 
            -
                ENTERAL_FEEDING_SYSTEMS_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICARE =  | 
| 361 | 
            +
                ENTERAL_FEEDING_SYSTEMS_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICARE = 52_400
         | 
| 360 362 | 
             
                # Durable Medical Equipment: Enteral feeding systems with a prescription paid for by Medicaid
         | 
| 361 | 
            -
                ENTERAL_FEEDING_SYSTEMS_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICAID =  | 
| 363 | 
            +
                ENTERAL_FEEDING_SYSTEMS_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICAID = 52_410
         | 
| 362 364 | 
             
                # Durable Medical Equipment: Enteral feeding systems with a prescription reimbursed by Medicaid
         | 
| 363 | 
            -
                ENTERAL_FEEDING_SYSTEMS_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICAID =  | 
| 365 | 
            +
                ENTERAL_FEEDING_SYSTEMS_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICAID = 52_420
         | 
| 364 366 | 
             
                # Durable Medical Equipment: for home use
         | 
| 365 | 
            -
                FOR_HOME_USE_3 =  | 
| 367 | 
            +
                FOR_HOME_USE_3 = 52_425
         | 
| 366 368 | 
             
                # Durable Medical Equipment: Enteral feeding systems for home use without a prescription
         | 
| 367 | 
            -
                ENTERAL_FEEDING_SYSTEMS_FOR_HOME_USE_WITHOUT_A_PRESCRIPTION =  | 
| 369 | 
            +
                ENTERAL_FEEDING_SYSTEMS_FOR_HOME_USE_WITHOUT_A_PRESCRIPTION = 52_430
         | 
| 368 370 | 
             
                # Durable Medical Equipment: Enteral feeding systems for home use with a prescription
         | 
| 369 | 
            -
                ENTERAL_FEEDING_SYSTEMS_FOR_HOME_USE_WITH_A_PRESCRIPTION =  | 
| 371 | 
            +
                ENTERAL_FEEDING_SYSTEMS_FOR_HOME_USE_WITH_A_PRESCRIPTION = 52_440
         | 
| 370 372 | 
             
                # Durable Medical Equipment: Enteral feeding systems for home use with a prescription paid for by Medicare
         | 
| 371 | 
            -
                ENTERAL_FEEDING_SYSTEMS_FOR_HOME_USE_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICARE =  | 
| 373 | 
            +
                ENTERAL_FEEDING_SYSTEMS_FOR_HOME_USE_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICARE = 52_450
         | 
| 372 374 | 
             
                # Durable Medical Equipment: Enteral feeding systems for home use with a prescription reimbursed by Medicare
         | 
| 373 | 
            -
                ENTERAL_FEEDING_SYSTEMS_FOR_HOME_USE_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICARE =  | 
| 375 | 
            +
                ENTERAL_FEEDING_SYSTEMS_FOR_HOME_USE_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICARE = 52_460
         | 
| 374 376 | 
             
                # Durable Medical Equipment: Enteral feeding systems for home use with a prescription paid for by Medicaid
         | 
| 375 | 
            -
                ENTERAL_FEEDING_SYSTEMS_FOR_HOME_USE_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICAID =  | 
| 377 | 
            +
                ENTERAL_FEEDING_SYSTEMS_FOR_HOME_USE_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICAID = 52_470
         | 
| 376 378 | 
             
                # Durable Medical Equipment: Enteral feeding systems for home use with a prescription reimbursed by Medicaid
         | 
| 377 | 
            -
                ENTERAL_FEEDING_SYSTEMS_FOR_HOME_USE_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICAID =  | 
| 379 | 
            +
                ENTERAL_FEEDING_SYSTEMS_FOR_HOME_USE_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICAID = 52_480
         | 
| 378 380 | 
             
                # Durable Medical Equipment: Repair and replacement parts for durable medical equipment which are for single patient use
         | 
| 379 | 
            -
                REPAIR_AND_REPLACEMENT_PARTS_FOR_DURABLE_MEDICAL_EQUIPMENT_WHICH_ARE_FOR_SINGLE_PATIENT_USE =  | 
| 381 | 
            +
                REPAIR_AND_REPLACEMENT_PARTS_FOR_DURABLE_MEDICAL_EQUIPMENT_WHICH_ARE_FOR_SINGLE_PATIENT_USE = 52_490
         | 
| 380 382 |  | 
| 381 383 | 
             
                # Mobilty Enhancing Equipment
         | 
| 382 384 |  | 
| 383 385 | 
             
                # Mobilty Enhancing Equipment: Mobility enhancing equipment
         | 
| 384 | 
            -
                MOBILITY_ENHANCING_EQUIPMENT =  | 
| 386 | 
            +
                MOBILITY_ENHANCING_EQUIPMENT = 53_000
         | 
| 385 387 | 
             
                # Mobilty Enhancing Equipment: Mobility enhancing equipment without a prescription
         | 
| 386 | 
            -
                MOBILITY_ENHANCING_EQUIPMENT_WITHOUT_A_PRESCRIPTION =  | 
| 388 | 
            +
                MOBILITY_ENHANCING_EQUIPMENT_WITHOUT_A_PRESCRIPTION = 53_010
         | 
| 387 389 | 
             
                # Mobilty Enhancing Equipment: Mobility enhancing equipment with a prescriptionAppendix E
         | 
| 388 | 
            -
                MOBILITY_ENHANCING_EQUIPMENT_WITH_A_PRESCRIPTIONAPPENDIX_E =  | 
| 390 | 
            +
                MOBILITY_ENHANCING_EQUIPMENT_WITH_A_PRESCRIPTIONAPPENDIX_E = 53_020
         | 
| 389 391 | 
             
                # Mobilty Enhancing Equipment: Mobility enhancing equipment with a prescription paid for by Medicare
         | 
| 390 | 
            -
                MOBILITY_ENHANCING_EQUIPMENT_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICARE =  | 
| 392 | 
            +
                MOBILITY_ENHANCING_EQUIPMENT_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICARE = 53_030
         | 
| 391 393 | 
             
                # Mobilty Enhancing Equipment: Mobility enhancing equipment with a prescription reimbursed by Medicare
         | 
| 392 | 
            -
                MOBILITY_ENHANCING_EQUIPMENT_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICARE =  | 
| 394 | 
            +
                MOBILITY_ENHANCING_EQUIPMENT_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICARE = 53_040
         | 
| 393 395 | 
             
                # Mobilty Enhancing Equipment: Mobility enhancing equipment with a prescription paid for by Medicaid
         | 
| 394 | 
            -
                MOBILITY_ENHANCING_EQUIPMENT_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICAID =  | 
| 396 | 
            +
                MOBILITY_ENHANCING_EQUIPMENT_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICAID = 53_050
         | 
| 395 397 | 
             
                # Mobilty Enhancing Equipment: Mobility enhancing equipment with a prescription reimbursed by Medicaid
         | 
| 396 | 
            -
                MOBILITY_ENHANCING_EQUIPMENT_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICAID =  | 
| 398 | 
            +
                MOBILITY_ENHANCING_EQUIPMENT_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICAID = 53_060
         | 
| 397 399 |  | 
| 398 400 | 
             
                # Prosthetic Devices
         | 
| 399 401 |  | 
| 400 402 | 
             
                # Prosthetic Devices: Prosthetic devices
         | 
| 401 | 
            -
                PROSTHETIC_DEVICES =  | 
| 403 | 
            +
                PROSTHETIC_DEVICES = 54_000
         | 
| 402 404 | 
             
                # Prosthetic Devices: Prosthetic devices without a prescription
         | 
| 403 | 
            -
                PROSTHETIC_DEVICES_WITHOUT_A_PRESCRIPTION =  | 
| 405 | 
            +
                PROSTHETIC_DEVICES_WITHOUT_A_PRESCRIPTION = 54_010
         | 
| 404 406 | 
             
                # Prosthetic Devices: Prosthetic devices with a prescription
         | 
| 405 | 
            -
                PROSTHETIC_DEVICES_WITH_A_PRESCRIPTION =  | 
| 407 | 
            +
                PROSTHETIC_DEVICES_WITH_A_PRESCRIPTION = 54_020
         | 
| 406 408 | 
             
                # Prosthetic Devices: Prosthetic devices paid with a prescription for by Medicare
         | 
| 407 | 
            -
                PROSTHETIC_DEVICES_PAID_WITH_A_PRESCRIPTION_FOR_BY_MEDICARE =  | 
| 409 | 
            +
                PROSTHETIC_DEVICES_PAID_WITH_A_PRESCRIPTION_FOR_BY_MEDICARE = 54_030
         | 
| 408 410 | 
             
                # Prosthetic Devices: Prosthetic devices with a prescription reimbursed by Medicare
         | 
| 409 | 
            -
                PROSTHETIC_DEVICES_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICARE =  | 
| 411 | 
            +
                PROSTHETIC_DEVICES_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICARE = 54_040
         | 
| 410 412 | 
             
                # Prosthetic Devices: Prosthetic devices with a prescription paid for by Medicaid
         | 
| 411 | 
            -
                PROSTHETIC_DEVICES_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICAID =  | 
| 413 | 
            +
                PROSTHETIC_DEVICES_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICAID = 54_050
         | 
| 412 414 | 
             
                # Prosthetic Devices: Prosthetic devices with a prescription reimbursed by Medicaid
         | 
| 413 | 
            -
                PROSTHETIC_DEVICES_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICAID =  | 
| 415 | 
            +
                PROSTHETIC_DEVICES_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICAID = 54_060
         | 
| 414 416 | 
             
                # Prosthetic Devices: Corrective eyeglasses
         | 
| 415 | 
            -
                CORRECTIVE_EYEGLASSES =  | 
| 417 | 
            +
                CORRECTIVE_EYEGLASSES = 54_065
         | 
| 416 418 | 
             
                # Prosthetic Devices: Corrective eyeglasses without a prescription
         | 
| 417 | 
            -
                CORRECTIVE_EYEGLASSES_WITHOUT_A_PRESCRIPTION =  | 
| 419 | 
            +
                CORRECTIVE_EYEGLASSES_WITHOUT_A_PRESCRIPTION = 54_070
         | 
| 418 420 | 
             
                # Prosthetic Devices: Corrective eyeglasses with a prescription
         | 
| 419 | 
            -
                CORRECTIVE_EYEGLASSES_WITH_A_PRESCRIPTION =  | 
| 421 | 
            +
                CORRECTIVE_EYEGLASSES_WITH_A_PRESCRIPTION = 54_080
         | 
| 420 422 | 
             
                # Prosthetic Devices: Corrective eyeglasses with a prescription paid for by Medicare
         | 
| 421 | 
            -
                CORRECTIVE_EYEGLASSES_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICARE =  | 
| 423 | 
            +
                CORRECTIVE_EYEGLASSES_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICARE = 54_090
         | 
| 422 424 | 
             
                # Prosthetic Devices: Corrective eyeglasses with a prescription reimbursed by Medicare
         | 
| 423 | 
            -
                CORRECTIVE_EYEGLASSES_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICARE =  | 
| 425 | 
            +
                CORRECTIVE_EYEGLASSES_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICARE = 54_100
         | 
| 424 426 | 
             
                # Prosthetic Devices: Corrective eyeglasses with a prescription paid for by Medicaid
         | 
| 425 | 
            -
                CORRECTIVE_EYEGLASSES_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICAID =  | 
| 427 | 
            +
                CORRECTIVE_EYEGLASSES_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICAID = 54_110
         | 
| 426 428 | 
             
                # Prosthetic Devices: Corrective eyeglasses with a prescription reimbursed by Medicaid
         | 
| 427 | 
            -
                CORRECTIVE_EYEGLASSES_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICAID =  | 
| 429 | 
            +
                CORRECTIVE_EYEGLASSES_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICAID = 54_120
         | 
| 428 430 | 
             
                # Prosthetic Devices: Contact lenses
         | 
| 429 | 
            -
                CONTACT_LENSES =  | 
| 431 | 
            +
                CONTACT_LENSES = 54_125
         | 
| 430 432 | 
             
                # Prosthetic Devices: Contact lenses without a prescription
         | 
| 431 | 
            -
                CONTACT_LENSES_WITHOUT_A_PRESCRIPTION =  | 
| 433 | 
            +
                CONTACT_LENSES_WITHOUT_A_PRESCRIPTION = 54_130
         | 
| 432 434 | 
             
                # Prosthetic Devices: Contact lenses with a prescription
         | 
| 433 | 
            -
                CONTACT_LENSES_WITH_A_PRESCRIPTION =  | 
| 435 | 
            +
                CONTACT_LENSES_WITH_A_PRESCRIPTION = 54_140
         | 
| 434 436 | 
             
                # Prosthetic Devices: Contact lenses with a prescription paid for by Medicare
         | 
| 435 | 
            -
                CONTACT_LENSES_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICARE =  | 
| 437 | 
            +
                CONTACT_LENSES_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICARE = 54_150
         | 
| 436 438 | 
             
                # Prosthetic Devices: Contact lenses with a prescription reimbursed by Medicare
         | 
| 437 | 
            -
                CONTACT_LENSES_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICARE =  | 
| 439 | 
            +
                CONTACT_LENSES_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICARE = 54_160
         | 
| 438 440 | 
             
                # Prosthetic Devices: Contact lenses with a prescription paid for by Medicaid
         | 
| 439 | 
            -
                CONTACT_LENSES_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICAID =  | 
| 441 | 
            +
                CONTACT_LENSES_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICAID = 54_170
         | 
| 440 442 | 
             
                # Prosthetic Devices: Contact lenses with a prescription reimbursed by Medicaid
         | 
| 441 | 
            -
                CONTACT_LENSES_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICAID =  | 
| 443 | 
            +
                CONTACT_LENSES_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICAID = 54_180
         | 
| 442 444 | 
             
                # Prosthetic Devices: Hearing aids
         | 
| 443 | 
            -
                HEARING_AIDS =  | 
| 445 | 
            +
                HEARING_AIDS = 54_185
         | 
| 444 446 | 
             
                # Prosthetic Devices: Hearing aids without a prescription
         | 
| 445 | 
            -
                HEARING_AIDS_WITHOUT_A_PRESCRIPTION =  | 
| 447 | 
            +
                HEARING_AIDS_WITHOUT_A_PRESCRIPTION = 54_190
         | 
| 446 448 | 
             
                # Prosthetic Devices: Hearing aids with a prescription
         | 
| 447 | 
            -
                HEARING_AIDS_WITH_A_PRESCRIPTION =  | 
| 449 | 
            +
                HEARING_AIDS_WITH_A_PRESCRIPTION = 54_200
         | 
| 448 450 | 
             
                # Prosthetic Devices: Hearing aids with a prescription paid for by Medicare
         | 
| 449 | 
            -
                HEARING_AIDS_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICARE =  | 
| 451 | 
            +
                HEARING_AIDS_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICARE = 54_210
         | 
| 450 452 | 
             
                # Prosthetic Devices: Hearing aids with a prescription reimbursed by Medicare
         | 
| 451 | 
            -
                HEARING_AIDS_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICARE =  | 
| 453 | 
            +
                HEARING_AIDS_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICARE = 54_220
         | 
| 452 454 | 
             
                # Prosthetic Devices: Hearing aids with a prescription paid for by Medicaid
         | 
| 453 | 
            -
                HEARING_AIDS_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICAID =  | 
| 455 | 
            +
                HEARING_AIDS_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICAID = 54_230
         | 
| 454 456 | 
             
                # Prosthetic Devices: Hearing aids with a prescription reimbursed by Medicaid
         | 
| 455 | 
            -
                HEARING_AIDS_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICAID =  | 
| 457 | 
            +
                HEARING_AIDS_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICAID = 54_240
         | 
| 456 458 | 
             
                # Prosthetic Devices: Dental prosthesis
         | 
| 457 | 
            -
                DENTAL_PROSTHESIS =  | 
| 459 | 
            +
                DENTAL_PROSTHESIS = 54_245
         | 
| 458 460 | 
             
                # Prosthetic Devices: Dental prosthesis without a prescription
         | 
| 459 | 
            -
                DENTAL_PROSTHESIS_WITHOUT_A_PRESCRIPTION =  | 
| 461 | 
            +
                DENTAL_PROSTHESIS_WITHOUT_A_PRESCRIPTION = 54_250
         | 
| 460 462 | 
             
                # Prosthetic Devices: Dental prosthesis with a prescription
         | 
| 461 | 
            -
                DENTAL_PROSTHESIS_WITH_A_PRESCRIPTION =  | 
| 463 | 
            +
                DENTAL_PROSTHESIS_WITH_A_PRESCRIPTION = 54_260
         | 
| 462 464 | 
             
                # Prosthetic Devices: Dental prosthesis with a prescription paid for by Medicare
         | 
| 463 | 
            -
                DENTAL_PROSTHESIS_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICARE =  | 
| 465 | 
            +
                DENTAL_PROSTHESIS_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICARE = 54_270
         | 
| 464 466 | 
             
                # Prosthetic Devices: Dental prosthesis with a prescription reimbursed by Medicare
         | 
| 465 | 
            -
                DENTAL_PROSTHESIS_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICARE =  | 
| 467 | 
            +
                DENTAL_PROSTHESIS_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICARE = 54_280
         | 
| 466 468 | 
             
                # Prosthetic Devices: Dental prosthesis with a prescription paid for by Medicaid
         | 
| 467 | 
            -
                DENTAL_PROSTHESIS_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICAID =  | 
| 469 | 
            +
                DENTAL_PROSTHESIS_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICAID = 54_290
         | 
| 468 470 | 
             
                # Prosthetic Devices: Dental prosthesis with a prescription reimbursed by Medicaid
         | 
| 469 | 
            -
                DENTAL_PROSTHESIS_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICAID =  | 
| 471 | 
            +
                DENTAL_PROSTHESIS_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICAID = 54_300
         | 
| 470 472 |  | 
| 471 473 | 
             
                # Telecommunications
         | 
| 472 474 |  | 
| 473 475 | 
             
                # Telecommunications: Ancillary Services
         | 
| 474 | 
            -
                ANCILLARY_SERVICES =  | 
| 476 | 
            +
                ANCILLARY_SERVICES = 60_010
         | 
| 475 477 | 
             
                # Telecommunications: Conference bridging service
         | 
| 476 | 
            -
                CONFERENCE_BRIDGING_SERVICE =  | 
| 478 | 
            +
                CONFERENCE_BRIDGING_SERVICE = 60_020
         | 
| 477 479 | 
             
                # Telecommunications: Detailed telecommunications billing service
         | 
| 478 | 
            -
                DETAILED_TELECOMMUNICATIONS_BILLING_SERVICE =  | 
| 480 | 
            +
                DETAILED_TELECOMMUNICATIONS_BILLING_SERVICE = 60_030
         | 
| 479 481 | 
             
                # Telecommunications: Directory assistance
         | 
| 480 | 
            -
                DIRECTORY_ASSISTANCE =  | 
| 482 | 
            +
                DIRECTORY_ASSISTANCE = 60_040
         | 
| 481 483 | 
             
                # Telecommunications: Vertical service
         | 
| 482 | 
            -
                VERTICAL_SERVICE =  | 
| 484 | 
            +
                VERTICAL_SERVICE = 60_050
         | 
| 483 485 | 
             
                # Telecommunications: Voice mail service
         | 
| 484 | 
            -
                VOICE_MAIL_SERVICE =  | 
| 486 | 
            +
                VOICE_MAIL_SERVICE = 60_060
         | 
| 485 487 | 
             
                # Telecommunications: Intrastate Telecommunications Service
         | 
| 486 | 
            -
                INTRASTATE_TELECOMMUNICATIONS_SERVICE =  | 
| 488 | 
            +
                INTRASTATE_TELECOMMUNICATIONS_SERVICE = 61_000
         | 
| 487 489 | 
             
                # Telecommunications: Interstate Telecommunications ServiceAppendix E
         | 
| 488 | 
            -
                INTERSTATE_TELECOMMUNICATIONS_SERVICEAPPENDIX_E =  | 
| 490 | 
            +
                INTERSTATE_TELECOMMUNICATIONS_SERVICEAPPENDIX_E = 61_010
         | 
| 489 491 | 
             
                # Telecommunications: International Telecommunications Service
         | 
| 490 | 
            -
                INTERNATIONAL_TELECOMMUNICATIONS_SERVICE =  | 
| 492 | 
            +
                INTERNATIONAL_TELECOMMUNICATIONS_SERVICE = 61_020
         | 
| 491 493 | 
             
                # Telecommunications: International 800 service
         | 
| 492 | 
            -
                INTERNATIONAL_800_SERVICE =  | 
| 494 | 
            +
                INTERNATIONAL_800_SERVICE = 61_030
         | 
| 493 495 | 
             
                # Telecommunications: International 900 service
         | 
| 494 | 
            -
                INTERNATIONAL_900_SERVICE =  | 
| 496 | 
            +
                INTERNATIONAL_900_SERVICE = 61_040
         | 
| 495 497 | 
             
                # Telecommunications: International fixed wireless service
         | 
| 496 | 
            -
                INTERNATIONAL_FIXED_WIRELESS_SERVICE =  | 
| 498 | 
            +
                INTERNATIONAL_FIXED_WIRELESS_SERVICE = 61_050
         | 
| 497 499 | 
             
                # Telecommunications: International mobile wireless service
         | 
| 498 | 
            -
                INTERNATIONAL_MOBILE_WIRELESS_SERVICE =  | 
| 500 | 
            +
                INTERNATIONAL_MOBILE_WIRELESS_SERVICE = 61_060
         | 
| 499 501 | 
             
                # Telecommunications: International paging service
         | 
| 500 | 
            -
                INTERNATIONAL_PAGING_SERVICE =  | 
| 502 | 
            +
                INTERNATIONAL_PAGING_SERVICE = 61_070
         | 
| 501 503 | 
             
                # Telecommunications: International prepaid calling service
         | 
| 502 | 
            -
                INTERNATIONAL_PREPAID_CALLING_SERVICE =  | 
| 504 | 
            +
                INTERNATIONAL_PREPAID_CALLING_SERVICE = 61_080
         | 
| 503 505 | 
             
                # Telecommunications: International prepaid wireless calling service
         | 
| 504 | 
            -
                INTERNATIONAL_PREPAID_WIRELESS_CALLING_SERVICE =  | 
| 506 | 
            +
                INTERNATIONAL_PREPAID_WIRELESS_CALLING_SERVICE = 61_090
         | 
| 505 507 | 
             
                # Telecommunications: International private communications service
         | 
| 506 | 
            -
                INTERNATIONAL_PRIVATE_COMMUNICATIONS_SERVICE =  | 
| 508 | 
            +
                INTERNATIONAL_PRIVATE_COMMUNICATIONS_SERVICE = 61_100
         | 
| 507 509 | 
             
                # Telecommunications: International value-added non-voice data service
         | 
| 508 | 
            -
                INTERNATIONAL_VALUE_ADDED_NON_VOICE_DATA_SERVICE =  | 
| 510 | 
            +
                INTERNATIONAL_VALUE_ADDED_NON_VOICE_DATA_SERVICE = 61_110
         | 
| 509 511 | 
             
                # Telecommunications: International residential telecommunications service
         | 
| 510 | 
            -
                INTERNATIONAL_RESIDENTIAL_TELECOMMUNICATIONS_SERVICE =  | 
| 512 | 
            +
                INTERNATIONAL_RESIDENTIAL_TELECOMMUNICATIONS_SERVICE = 61_120
         | 
| 511 513 | 
             
                # Telecommunications: Interstate 800 service
         | 
| 512 | 
            -
                INTERSTATE_800_SERVICE =  | 
| 514 | 
            +
                INTERSTATE_800_SERVICE = 61_130
         | 
| 513 515 | 
             
                # Telecommunications: Interstate 900 service
         | 
| 514 | 
            -
                INTERSTATE_900_SERVICE =  | 
| 516 | 
            +
                INTERSTATE_900_SERVICE = 61_140
         | 
| 515 517 | 
             
                # Telecommunications: Interstate fixed wireless service
         | 
| 516 | 
            -
                INTERSTATE_FIXED_WIRELESS_SERVICE =  | 
| 518 | 
            +
                INTERSTATE_FIXED_WIRELESS_SERVICE = 61_150
         | 
| 517 519 | 
             
                # Telecommunications: Interstate mobile wireless service
         | 
| 518 | 
            -
                INTERSTATE_MOBILE_WIRELESS_SERVICE =  | 
| 520 | 
            +
                INTERSTATE_MOBILE_WIRELESS_SERVICE = 61_160
         | 
| 519 521 | 
             
                # Telecommunications: Interstate paging service
         | 
| 520 | 
            -
                INTERSTATE_PAGING_SERVICE =  | 
| 522 | 
            +
                INTERSTATE_PAGING_SERVICE = 61_170
         | 
| 521 523 | 
             
                # Telecommunications: Interstate prepaid calling service
         | 
| 522 | 
            -
                INTERSTATE_PREPAID_CALLING_SERVICE =  | 
| 524 | 
            +
                INTERSTATE_PREPAID_CALLING_SERVICE = 61_180
         | 
| 523 525 | 
             
                # Telecommunications: Interstate prepaid wireless calling service
         | 
| 524 | 
            -
                INTERSTATE_PREPAID_WIRELESS_CALLING_SERVICE =  | 
| 526 | 
            +
                INTERSTATE_PREPAID_WIRELESS_CALLING_SERVICE = 61_190
         | 
| 525 527 | 
             
                # Telecommunications: Interstate private communications service
         | 
| 526 | 
            -
                INTERSTATE_PRIVATE_COMMUNICATIONS_SERVICE =  | 
| 528 | 
            +
                INTERSTATE_PRIVATE_COMMUNICATIONS_SERVICE = 61_200
         | 
| 527 529 | 
             
                # Telecommunications: Interstate value-added non-voice data service
         | 
| 528 | 
            -
                INTERSTATE_VALUE_ADDED_NON_VOICE_DATA_SERVICE =  | 
| 530 | 
            +
                INTERSTATE_VALUE_ADDED_NON_VOICE_DATA_SERVICE = 61_210
         | 
| 529 531 | 
             
                # Telecommunications: Interstate residential telecommunications service
         | 
| 530 | 
            -
                INTERSTATE_RESIDENTIAL_TELECOMMUNICATIONS_SERVICE =  | 
| 532 | 
            +
                INTERSTATE_RESIDENTIAL_TELECOMMUNICATIONS_SERVICE = 61_220
         | 
| 531 533 | 
             
                # Telecommunications: Intrastate 800 service
         | 
| 532 | 
            -
                INTRASTATE_800_SERVICE =  | 
| 534 | 
            +
                INTRASTATE_800_SERVICE = 61_230
         | 
| 533 535 | 
             
                # Telecommunications: Intrastate 900 service
         | 
| 534 | 
            -
                INTRASTATE_900_SERVICE =  | 
| 536 | 
            +
                INTRASTATE_900_SERVICE = 61_240
         | 
| 535 537 | 
             
                # Telecommunications: Intrastate fixed wireless service
         | 
| 536 | 
            -
                INTRASTATE_FIXED_WIRELESS_SERVICE =  | 
| 538 | 
            +
                INTRASTATE_FIXED_WIRELESS_SERVICE = 61_250
         | 
| 537 539 | 
             
                # Telecommunications: Intrastate mobile wireless service
         | 
| 538 | 
            -
                INTRASTATE_MOBILE_WIRELESS_SERVICE =  | 
| 540 | 
            +
                INTRASTATE_MOBILE_WIRELESS_SERVICE = 61_260
         | 
| 539 541 | 
             
                # Telecommunications: Intrastate paging service
         | 
| 540 | 
            -
                INTRASTATE_PAGING_SERVICE =  | 
| 542 | 
            +
                INTRASTATE_PAGING_SERVICE = 61_270
         | 
| 541 543 | 
             
                # Telecommunications: Intrastate prepaid calling service
         | 
| 542 | 
            -
                INTRASTATE_PREPAID_CALLING_SERVICE =  | 
| 544 | 
            +
                INTRASTATE_PREPAID_CALLING_SERVICE = 61_280
         | 
| 543 545 | 
             
                # Telecommunications: Intrastate prepaid wireless calling service
         | 
| 544 | 
            -
                INTRASTATE_PREPAID_WIRELESS_CALLING_SERVICE =  | 
| 546 | 
            +
                INTRASTATE_PREPAID_WIRELESS_CALLING_SERVICE = 61_290
         | 
| 545 547 | 
             
                # Telecommunications: Intrastate private communications service
         | 
| 546 | 
            -
                INTRASTATE_PRIVATE_COMMUNICATIONS_SERVICE =  | 
| 548 | 
            +
                INTRASTATE_PRIVATE_COMMUNICATIONS_SERVICE = 61_300
         | 
| 547 549 | 
             
                # Telecommunications: Intrastate value-added non-voice data service
         | 
| 548 | 
            -
                INTRASTATE_VALUE_ADDED_NON_VOICE_DATA_SERVICE =  | 
| 550 | 
            +
                INTRASTATE_VALUE_ADDED_NON_VOICE_DATA_SERVICE = 61_310
         | 
| 549 551 | 
             
                # Telecommunications: Intrastate residential telecommunications service
         | 
| 550 | 
            -
                INTRASTATE_RESIDENTIAL_TELECOMMUNICATIONS_SERVICE =  | 
| 552 | 
            +
                INTRASTATE_RESIDENTIAL_TELECOMMUNICATIONS_SERVICE = 61_320
         | 
| 551 553 | 
             
                # Telecommunications: Paging service
         | 
| 552 | 
            -
                PAGING_SERVICE =  | 
| 554 | 
            +
                PAGING_SERVICE = 61_325
         | 
| 553 555 | 
             
                # Telecommunications: Coin-operated telephone service
         | 
| 554 | 
            -
                COIN_OPERATED_TELEPHONE_SERVICE =  | 
| 556 | 
            +
                COIN_OPERATED_TELEPHONE_SERVICE = 61_330
         | 
| 555 557 | 
             
                # Telecommunications: Pay telephone service
         | 
| 556 | 
            -
                PAY_TELEPHONE_SERVICE =  | 
| 558 | 
            +
                PAY_TELEPHONE_SERVICE = 61_340
         | 
| 557 559 | 
             
                # Telecommunications: Local Service as defined by state
         | 
| 558 | 
            -
                LOCAL_SERVICE_AS_DEFINED_BY_STATE =  | 
| 560 | 
            +
                LOCAL_SERVICE_AS_DEFINED_BY_STATE = 61_350
         | 
| 559 561 | 
             
              end
         | 
| 560 562 | 
             
            end
         |