tax_cloud 0.1.4 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (77) hide show
  1. data/.travis.yml +9 -0
  2. data/CHANGELOG.rdoc +28 -0
  3. data/CONTRIBUTORS.txt +20 -0
  4. data/Gemfile +1 -1
  5. data/LICENSE.rdoc +22 -0
  6. data/README.rdoc +112 -28
  7. data/Rakefile +10 -2
  8. data/lib/config/locales/en.yml +34 -0
  9. data/lib/hash.rb +8 -6
  10. data/lib/savon_soap_xml.rb +33 -0
  11. data/lib/tasks/tax_cloud.rake +20 -0
  12. data/lib/tasks/tax_code_groups.rake +39 -0
  13. data/lib/tasks/tax_codes.rake +45 -0
  14. data/lib/tax_cloud.rb +43 -16
  15. data/lib/tax_cloud/address.rb +30 -17
  16. data/lib/tax_cloud/cart_item.rb +13 -19
  17. data/lib/tax_cloud/client.rb +48 -0
  18. data/lib/tax_cloud/configuration.rb +17 -2
  19. data/lib/tax_cloud/errors.rb +6 -0
  20. data/lib/tax_cloud/errors/api_error.rb +18 -0
  21. data/lib/tax_cloud/errors/missing_config_error.rb +13 -0
  22. data/lib/tax_cloud/errors/missing_config_option_error.rb +19 -0
  23. data/lib/tax_cloud/errors/soap_error.rb +33 -0
  24. data/lib/tax_cloud/errors/tax_cloud_error.rb +86 -0
  25. data/lib/tax_cloud/errors/unexpected_soap_response_error.rb +23 -0
  26. data/lib/tax_cloud/record.rb +14 -0
  27. data/lib/tax_cloud/responses.rb +13 -0
  28. data/lib/tax_cloud/responses/authorized.rb +10 -0
  29. data/lib/tax_cloud/responses/authorized_with_capture.rb +10 -0
  30. data/lib/tax_cloud/responses/base.rb +88 -0
  31. data/lib/tax_cloud/responses/captured.rb +11 -0
  32. data/lib/tax_cloud/responses/cart_item.rb +24 -0
  33. data/lib/tax_cloud/responses/generic.rb +35 -0
  34. data/lib/tax_cloud/responses/lookup.rb +41 -0
  35. data/lib/tax_cloud/responses/ping.rb +10 -0
  36. data/lib/tax_cloud/responses/returned.rb +10 -0
  37. data/lib/tax_cloud/responses/tax_code_groups.rb +33 -0
  38. data/lib/tax_cloud/responses/tax_codes.rb +33 -0
  39. data/lib/tax_cloud/responses/tax_codes_by_group.rb +33 -0
  40. data/lib/tax_cloud/responses/verify_address.rb +29 -0
  41. data/lib/tax_cloud/tax_code.rb +11 -0
  42. data/lib/tax_cloud/tax_code_constants.rb +562 -0
  43. data/lib/tax_cloud/tax_code_group.rb +30 -0
  44. data/lib/tax_cloud/tax_code_group_constants.rb +31 -0
  45. data/lib/tax_cloud/tax_code_groups.rb +28 -0
  46. data/lib/tax_cloud/tax_codes.rb +24 -47
  47. data/lib/tax_cloud/transaction.rb +39 -34
  48. data/lib/tax_cloud/version.rb +3 -3
  49. data/tax_cloud.gemspec +7 -5
  50. data/test/cassettes/authorized.yml +70 -45
  51. data/test/cassettes/authorized_with_capture.yml +70 -45
  52. data/test/cassettes/captured.yml +101 -67
  53. data/test/cassettes/get_tic_groups.yml +656 -0
  54. data/test/cassettes/get_tics.yml +952 -0
  55. data/test/cassettes/get_tics_by_group.yml +49 -0
  56. data/test/cassettes/invalid_soap_call.yml +651 -0
  57. data/test/cassettes/lookup.yml +644 -25
  58. data/test/cassettes/lookup_ny.yml +651 -0
  59. data/test/cassettes/ping.yml +647 -0
  60. data/test/cassettes/ping_with_invalid_credentials.yml +647 -0
  61. data/test/cassettes/ping_with_invalid_response.yml +647 -0
  62. data/test/cassettes/returned.yml +101 -67
  63. data/test/cassettes/verify_bad_address.yml +578 -976
  64. data/test/cassettes/verify_good_address.yml +36 -23
  65. data/test/helper.rb +4 -19
  66. data/test/test_address.rb +25 -7
  67. data/test/test_client.rb +29 -0
  68. data/test/test_configuration.rb +33 -0
  69. data/test/test_setup.rb +18 -0
  70. data/test/test_soap.rb +13 -0
  71. data/test/test_tax_code_groups.rb +31 -0
  72. data/test/test_tax_codes.rb +19 -0
  73. data/test/test_transaction.rb +22 -11
  74. data/test/test_transaction_ny.rb +27 -0
  75. data/test/vcr_setup.rb +9 -0
  76. metadata +134 -24
  77. data/lib/savon_xml_override.rb +0 -30
@@ -0,0 +1,14 @@
1
+ module TaxCloud #:nodoc:
2
+ # A generic TaxCloud record.
3
+ class Record
4
+ # Initialize the record.
5
+ #
6
+ # === Parameters
7
+ # [attrs] Attributes defined for this record.
8
+ def initialize(attrs = {})
9
+ attrs.each do |sym, val|
10
+ self.send "#{sym}=", val
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,13 @@
1
+ require 'tax_cloud/responses/base'
2
+ require 'tax_cloud/responses/generic'
3
+ require 'tax_cloud/responses/ping'
4
+ require 'tax_cloud/responses/verify_address'
5
+ require 'tax_cloud/responses/cart_item'
6
+ require 'tax_cloud/responses/lookup'
7
+ require 'tax_cloud/responses/authorized'
8
+ require 'tax_cloud/responses/authorized_with_capture'
9
+ require 'tax_cloud/responses/captured'
10
+ require 'tax_cloud/responses/returned'
11
+ require 'tax_cloud/responses/tax_codes'
12
+ require 'tax_cloud/responses/tax_code_groups'
13
+ require 'tax_cloud/responses/tax_codes_by_group'
@@ -0,0 +1,10 @@
1
+ module TaxCloud #:nodoc:
2
+ module Responses #:nodoc:
3
+ # Response to a TaxCloud Authorized API call.
4
+ #
5
+ # See https://api.taxcloud.net/1.0/TaxCloud.asmx?op=Authorized.
6
+ class Authorized < Generic
7
+ response_key :authorized
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,10 @@
1
+ module TaxCloud #:nodoc:
2
+ module Responses #:nodoc:
3
+ # Response to a TaxCloud AuthorizedWithCapture API call.
4
+ #
5
+ # See https://api.taxcloud.net/1.0/TaxCloud.asmx?op=AuthorizedWithCapture.
6
+ class AuthorizedWithCapture < Generic
7
+ response_key :authorized_with_capture
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,88 @@
1
+ module TaxCloud #:nodoc:
2
+ module Responses #:nodoc:
3
+
4
+ # A base TaxCloud SOAP response.
5
+ class Base
6
+
7
+ # Raw response.
8
+ attr_accessor :raw
9
+
10
+ # === Parameters
11
+ # [savon_response] Response from a SOAP API call.
12
+ def initialize(savon_response)
13
+ @raw = savon_response.to_hash
14
+ parse!
15
+ end
16
+
17
+ class << self
18
+
19
+ # === Parameters
20
+ # [value] Location of the response type in the SOAP XML.
21
+ def response_type(value)
22
+ self.set_dsl(:response_type, value)
23
+ end
24
+
25
+ # === Parameters
26
+ # [value] Location of the error message in the SOAP XML.
27
+ def error_message(value)
28
+ self.set_dsl(:error_message, value)
29
+ end
30
+
31
+ # === Parameters
32
+ # [value] Location of the error number in the SOAP XML.
33
+ def error_number(value)
34
+ self.set_dsl(:error_number, value)
35
+ end
36
+
37
+ # Parse a SOAP response.
38
+ #
39
+ # === Parameters
40
+ # [savon_response] SOAP response.
41
+ def parse(savon_response)
42
+ self.new(savon_response)
43
+ end
44
+ end
45
+
46
+ # Match an element in the SOAP response.
47
+ #
48
+ # === Parameters
49
+ # [chain] XML path to match.
50
+ def match(chain)
51
+ current_value = raw
52
+ chain.split("/").each do |key|
53
+ current_value = current_value[key.to_sym]
54
+ next if current_value
55
+ raise TaxCloud::Errors::UnexpectedSoapResponse.new(raw, key, chain)
56
+ end
57
+ current_value
58
+ end
59
+
60
+ private
61
+
62
+ class_attribute :dsl
63
+
64
+ class << self
65
+ def set_dsl(key, value)
66
+ self.dsl ||= {}
67
+ self.dsl[key] = value
68
+ self.dsl
69
+ end
70
+ end
71
+
72
+ def parse!
73
+ if self.dsl[:response_type]
74
+ case match(self.dsl[:response_type])
75
+ when "OK", "Informational" then
76
+ return true
77
+ end
78
+ elsif self.dsl[:error_number]
79
+ return true if match(self.dsl[:error_number]) == "0"
80
+ end
81
+ if self.dsl[:error_message]
82
+ raise TaxCloud::Errors::ApiError.new(match(self.dsl[:error_message]), raw)
83
+ end
84
+ end
85
+
86
+ end
87
+ end
88
+ end
@@ -0,0 +1,11 @@
1
+ module TaxCloud #:nodoc:
2
+ module Responses #:nodoc:
3
+
4
+ # Response to a TaxCloud Captured API call.
5
+ #
6
+ # See https://api.taxcloud.net/1.0/TaxCloud.asmx?op=Captured.
7
+ class Captured < Generic
8
+ response_key :captured
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,24 @@
1
+ module TaxCloud #:nodoc:
2
+ module Responses #:nodoc:
3
+
4
+ # A single item in the response to a TaxCloud Lookup API call.
5
+ #
6
+ # See https://api.taxcloud.net/1.0/TaxCloud.asmx?op=Lookup.
7
+ class CartItem
8
+
9
+ # The index of the cart item.
10
+ attr_accessor :cart_item_index
11
+
12
+ # Tax amount for this cart item.
13
+ attr_accessor :tax_amount
14
+
15
+ # === Parameters
16
+ # [savon_response] SOAP response.
17
+ def initialize(savon_response)
18
+ self.cart_item_index = savon_response[:cart_item_index].to_i
19
+ self.tax_amount = savon_response[:tax_amount].to_f
20
+ end
21
+
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,35 @@
1
+ module TaxCloud #:nodoc:
2
+ module Responses #:nodoc:
3
+
4
+ # A generic response to a TaxCloud API call.
5
+ class Generic < Base
6
+
7
+ # Response key.
8
+ class_attribute :key
9
+
10
+ class << self
11
+
12
+ # Set the response key.
13
+ # === Parameters
14
+ # [key] Response key.
15
+ def response_key(key)
16
+ self.key = key
17
+ response_type "#{key}_response/#{key}_result/response_type"
18
+ error_message "#{key}_response/#{key}_result/messages/response_message/message"
19
+ end
20
+
21
+ # Parse a TaxCloud response.
22
+ #
23
+ # === Parameters
24
+ # [savon_response] SOAP response.
25
+ #
26
+ # Usually returns "OK" or raises an error.
27
+ def parse(savon_response)
28
+ response = self.new(savon_response)
29
+ response.raw["#{key}_response".to_sym]["#{key}_result".to_sym][:response_type]
30
+ end
31
+ end
32
+
33
+ end
34
+ end
35
+ end
@@ -0,0 +1,41 @@
1
+ module TaxCloud #:nodoc:
2
+ module Responses #:nodoc:
3
+
4
+ # Response to a TaxCloud Lookup API call.
5
+ #
6
+ # See https://api.taxcloud.net/1.0/TaxCloud.asmx?op=Lookup.
7
+ class Lookup < Base
8
+
9
+ # Cart ID.
10
+ attr_accessor :cart_id
11
+
12
+ # Cart items.
13
+ attr_accessor :cart_items
14
+
15
+ response_type "lookup_response/lookup_result/response_type"
16
+ error_message "lookup_response/lookup_result/messages/response_message/message"
17
+
18
+ # === Parameters
19
+ # [savon_response] SOAP response.
20
+ def initialize(savon_response)
21
+ super savon_response
22
+ self.cart_id = match("lookup_response/lookup_result/cart_id")
23
+ # there can be on response or an array of responses
24
+ cart_item_responses = match("lookup_response/lookup_result/cart_items_response/cart_item_response")
25
+ if cart_item_responses.is_a?(Array)
26
+ self.cart_items = cart_item_responses.map do |cart_item_response|
27
+ TaxCloud::Responses::CartItem.new(cart_item_response)
28
+ end
29
+ else
30
+ self.cart_items = [ TaxCloud::Responses::CartItem.new(cart_item_responses) ]
31
+ end
32
+ end
33
+
34
+ # Total tax amount in this cart.
35
+ def tax_amount
36
+ cart_items.inject(0) { |acc, item| acc + item.tax_amount }
37
+ end
38
+
39
+ end
40
+ end
41
+ end
@@ -0,0 +1,10 @@
1
+ module TaxCloud #:nodoc:
2
+ module Responses #:nodoc:
3
+ # Response to a TaxCloud Ping API call.
4
+ #
5
+ # See https://api.taxcloud.net/1.0/TaxCloud.asmx?op=Ping.
6
+ class Ping < Generic
7
+ response_key :ping
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,10 @@
1
+ module TaxCloud #:nodoc:
2
+ module Responses #:nodoc:
3
+ # Response to a TaxCloud Returned API call.
4
+ #
5
+ # See https://api.taxcloud.net/1.0/TaxCloud.asmx?op=Returned.
6
+ class Returned < Generic
7
+ response_key :returned
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,33 @@
1
+ module TaxCloud #:nodoc:
2
+ module Responses #:nodoc:
3
+
4
+ # Response to a TaxCloud getTICGroups API call.
5
+ #
6
+ # https://api.taxcloud.net/1.0/TaxCloud.asmx?op=GetTICGroups
7
+ class TaxCodeGroups < Base
8
+
9
+ response_type "get_tic_groups_response/get_tic_groups_result/response_type"
10
+ error_message "get_tic_groups_response/get_tic_groups_result/messages/response_message/message"
11
+
12
+ class << self
13
+ # Parse a TaxCloud response.
14
+ #
15
+ # === Parameters
16
+ # [savon_response] SOAP response.
17
+ #
18
+ # Returns an array of Tax Code Groups.
19
+ def parse(savon_response)
20
+ response = self.new(savon_response)
21
+ tax_code_groups = response.match("get_tic_groups_response/get_tic_groups_result/tic_groups/tic_group")
22
+ tax_code_groups.map do |tax_code_group|
23
+ TaxCloud::TaxCodeGroup.new({
24
+ :group_id => tax_code_group[:group_id].to_i,
25
+ :description => tax_code_group[:description].strip
26
+ })
27
+ end
28
+ end
29
+ end
30
+
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,33 @@
1
+ module TaxCloud #:nodoc:
2
+ module Responses #:nodoc:
3
+
4
+ # Response to a TaxCloud getTICs API call.
5
+ #
6
+ # See https://api.taxcloud.net/1.0/TaxCloud.asmx?op=GetTICs.
7
+ class TaxCodes < Base
8
+
9
+ response_type "get_ti_cs_response/get_ti_cs_result/response_type"
10
+ error_message "get_ti_cs_response/get_ti_cs_result/messages/response_message/message"
11
+
12
+ class << self
13
+ # Parse a TaxCloud response.
14
+ #
15
+ # === Parameters
16
+ # [savon_response] SOAP response.
17
+ #
18
+ # Returns an array of tax codes.
19
+ def parse(savon_response)
20
+ response = self.new(savon_response)
21
+ tax_codes = response.match("get_ti_cs_response/get_ti_cs_result/ti_cs/tic")
22
+ tax_codes.map do |tax_code|
23
+ TaxCloud::TaxCode.new({
24
+ :ticid => tax_code[:ticid].to_i,
25
+ :description => tax_code[:description].strip
26
+ })
27
+ end
28
+ end
29
+ end
30
+
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,33 @@
1
+ module TaxCloud #:nodoc:
2
+ module Responses #:nodoc:
3
+
4
+ # Response to a TaxCloud getTICsByGroup API call.
5
+ #
6
+ # See https://api.taxcloud.net/1.0/TaxCloud.asmx?op=GetTICsByGroup.
7
+ class TaxCodesByGroup < Base
8
+
9
+ response_type "get_ti_cs_by_group_response/get_ti_cs_by_group_result/response_type"
10
+ error_message "get_ti_cs_by_group_response/get_ti_cs_by_group_result/messages/response_message/message"
11
+
12
+ class << self
13
+ # Parse a TaxCloud response.
14
+ #
15
+ # === Parameters
16
+ # [savon_response] SOAP response.
17
+ #
18
+ # Returns an array of tax codes.
19
+ def parse(savon_response)
20
+ response = self.new(savon_response)
21
+ tax_codes = response.match("get_ti_cs_by_group_response/get_ti_cs_by_group_result/ti_cs/tic")
22
+ tax_codes.map do |tax_code|
23
+ TaxCloud::TaxCode.new({
24
+ :ticid => tax_code[:ticid].to_i,
25
+ :description => tax_code[:description]
26
+ })
27
+ end
28
+ end
29
+ end
30
+
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,29 @@
1
+ module TaxCloud #:nodoc:
2
+ module Responses #:nodoc:
3
+
4
+ # Response to a TaxCloud VerifyAddress API call.
5
+ #
6
+ # See https://api.taxcloud.net/1.0/TaxCloud.asmx?op=VerifyAddress.
7
+ class VerifyAddress < Base
8
+
9
+ error_number "verify_address_response/verify_address_result/err_number"
10
+ error_message "verify_address_response/verify_address_result/err_description"
11
+
12
+ class << self
13
+ # Parse a TaxCloud response.
14
+ #
15
+ # === Parameters
16
+ # [savon_response] SOAP response.
17
+ #
18
+ # Returns a verified TaxCloud::Address.
19
+ def parse(savon_response)
20
+ response = self.new(savon_response)
21
+ result = response.match("verify_address_response/verify_address_result")
22
+ result.delete(:err_number)
23
+ TaxCloud::Address.new result
24
+ end
25
+ end
26
+
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,11 @@
1
+ module TaxCloud #:nodoc:
2
+ # A TIC (Taxability Information Code), otherwise known as a Tax Code.
3
+ #
4
+ # See https://taxcloud.net/tic.
5
+ class TaxCode < Record
6
+ # Tax code ID.
7
+ attr_accessor :ticid
8
+ # Tax code description.
9
+ attr_accessor :description
10
+ end
11
+ end
@@ -0,0 +1,562 @@
1
+ module TaxCloud
2
+ # Tax Codes.
3
+ class TaxCodes
4
+
5
+ # Administrative
6
+
7
+ # Administrative: Gift Card/Certificate
8
+ GIFT_CARD_CERTIFICATE = 10005
9
+ # Administrative: Charges by the seller for any services necessary to complete the sale other than delivery and installation
10
+ CHARGES_BY_THE_SELLER_FOR_ANY_SERVICES_NECESSARY_TO_COMPLETE_THE_SALE_OTHER_THAN_DELIVERY_AND_INSTALLATION = 10010
11
+ # Administrative: Installation charges
12
+ INSTALLATION_CHARGES = 10040
13
+ # Administrative: Value of trade-in
14
+ VALUE_OF_TRADE_IN = 10060
15
+ # Administrative: Telecommunication nonrecurring charges
16
+ TELECOMMUNICATION_NONRECURRING_CHARGES = 10070
17
+ # Administrative: Handling, crating, packing, preparation for mailing or delivery, and similar charges
18
+ HANDLING_CRATING_PACKING_PREPARATION_FOR_MAILING_OR_DELIVERY_AND_SIMILAR_CHARGES = 11000
19
+ # Administrative: Transportation, shipping, postage, and similar charges
20
+ TRANSPORTATION_SHIPPING_POSTAGE_AND_SIMILAR_CHARGES = 11010
21
+ # Administrative: Handling, crating, packing, preparation for mailing or delivery, and similar charges for direct mail
22
+ HANDLING_CRATING_PACKING_PREPARATION_FOR_MAILING_OR_DELIVERY_AND_SIMILAR_CHARGES_FOR_DIRECT_MAIL = 11020
23
+ # Administrative: Transportation, shipping, and similar charges for direct mail
24
+ TRANSPORTATION_SHIPPING_AND_SIMILAR_CHARGES_FOR_DIRECT_MAIL = 11021
25
+ # Administrative: Postage for direct mail
26
+ POSTAGE_FOR_DIRECT_MAIL = 11022
27
+ # Administrative: Postage/Delivery
28
+ POSTAGE_DELIVERY = 11099
29
+ # Administrative: Direct-mail related
30
+ DIRECT_MAIL_RELATED = 11100
31
+
32
+ # Clothing and Related Products
33
+
34
+ # Clothing and Related Products: Clothing
35
+ CLOTHING = 20010
36
+ # Clothing and Related Products: Essential clothing priced below a state specific threshold
37
+ ESSENTIAL_CLOTHING_PRICED_BELOW_A_STATE_SPECIFIC_THRESHOLD = 20015
38
+ # Clothing and Related Products: Clothing accessories or equipment
39
+ CLOTHING_ACCESSORIES_OR_EQUIPMENT = 20020
40
+ # Clothing and Related Products: Protective equipment
41
+ PROTECTIVE_EQUIPMENT = 20030
42
+ # Clothing and Related Products: Sport or recreational equipment
43
+ SPORT_OR_RECREATIONAL_EQUIPMENT = 20040
44
+ # Clothing and Related Products: Fur clothing
45
+ FUR_CLOTHING = 20050
46
+
47
+ # School Related Products
48
+
49
+ # School Related Products: School art supply
50
+ SCHOOL_ART_SUPPLY = 20080
51
+ # School Related Products: School instructional material
52
+ SCHOOL_INSTRUCTIONAL_MATERIAL = 20090
53
+ # School Related Products: School computer supply
54
+ SCHOOL_COMPUTER_SUPPLY = 20100
55
+
56
+ # Computer Related Products
57
+
58
+ # Computer Related Products: Non-prewritten (custom) computer software
59
+ NON_PREWRITTEN_CUSTOM_COMPUTER_SOFTWARE = 30015
60
+ # Computer Related Products: Non-prewritten (custom) computer software delivered electronically
61
+ NON_PREWRITTEN_CUSTOM_COMPUTER_SOFTWARE_DELIVERED_ELECTRONICALLY = 30025
62
+ # Computer Related Products: Non-prewritten (custom) computer software delivered via load and leave Mandatory computer software maintenance contracts
63
+ NON_PREWRITTEN_CUSTOM_COMPUTER_SOFTWARE_DELIVERED_VIA_LOAD_AND_LEAVE_MANDATORY_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS = 30035
64
+ # Computer Related Products: Prewritten computer software
65
+ PREWRITTEN_COMPUTER_SOFTWARE = 30040
66
+ # Computer Related Products: Prewritten computer software delivered electronically
67
+ PREWRITTEN_COMPUTER_SOFTWARE_DELIVERED_ELECTRONICALLY = 30050
68
+ # Computer Related Products: Prewritten computer software delivered via load and leave
69
+ PREWRITTEN_COMPUTER_SOFTWARE_DELIVERED_VIA_LOAD_AND_LEAVE = 30060
70
+ # Computer Related Products: Remote Access
71
+ REMOTE_ACCESS = 30070
72
+ # Computer Related Products: Computer
73
+ COMPUTER = 30100
74
+ # Computer Related Products: Mandatory computer software maintenance contracts with respect to prewritten computer software
75
+ MANDATORY_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_PREWRITTEN_COMPUTER_SOFTWARE = 30200
76
+ # Computer Related Products: Mandatory computer software maintenance contracts with respect to prewritten computer software which is delivered electronically
77
+ MANDATORY_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_PREWRITTEN_COMPUTER_SOFTWARE_WHICH_IS_DELIVERED_ELECTRONICALLY = 30210
78
+ # Computer Related Products: Mandatory computer software maintenance contracts with respect to prewritten computer software which is delivered via load and leave
79
+ MANDATORY_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_PREWRITTEN_COMPUTER_SOFTWARE_WHICH_IS_DELIVERED_VIA_LOAD_AND_LEAVE = 30220
80
+ # Computer Related Products: Mandatory computer software maintenance contracts with respect to non-prewritten (custom) computer software
81
+ MANDATORY_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_NON_PREWRITTEN_CUSTOM_COMPUTER_SOFTWARE = 30230
82
+ # Computer Related Products: Mandatory computer software maintenance contracts with respect to non-prewritten (custom) software which is delivered electronically
83
+ MANDATORY_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_NON_PREWRITTEN_CUSTOM_SOFTWARE_WHICH_IS_DELIVERED_ELECTRONICALLY = 30240
84
+ # Computer Related Products: Mandatory computer software maintenance contracts with respect to non-prewritten (custom) software which is delivered via load and leave
85
+ MANDATORY_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_NON_PREWRITTEN_CUSTOM_SOFTWARE_WHICH_IS_DELIVERED_VIA_LOAD_AND_LEAVE = 30250
86
+ # 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
87
+ OPTIONAL_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_PREWRITTEN_COMPUTER_SOFTWARE_THAT_ONLY_PROVIDE_UPDATES_OR_UPGRADES_WITH_RESPECT_TO_THE_SOFTWARE = 30300
88
+ # 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
89
+ OPTIONAL_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_PREWRITTEN_COMPUTER_SOFTWARE_THAT_ONLY_PROVIDE_UPDATES_OR_UPGRADES_DELIVERED_ELECTRONICALLY_WITH_RESPECT_TO_THE_SOFTWARE = 30310
90
+ # 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
91
+ 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 = 30320
92
+ # 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
93
+ OPTIONAL_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_NON_PREWRITTEN_CUSTOM_COMPUTER_SOFTWARE_THAT_ONLY_PROVIDE_UPDATES_OR_UPGRADES_WITH_RESPECT_TO_THE_SOFTWARE = 30330
94
+ # 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
95
+ 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 = 30340
96
+ # 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
97
+ 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 = 30350
98
+ # Computer Related Products: Optional computer software maintenance contracts with respect to non-prewritten (custom) computer software that only provide support services to the software
99
+ OPTIONAL_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_NON_PREWRITTEN_CUSTOM_COMPUTER_SOFTWARE_THAT_ONLY_PROVIDE_SUPPORT_SERVICES_TO_THE_SOFTWARE = 30360
100
+ # 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
101
+ 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 = 30370
102
+ # 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
103
+ 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 = 30380
104
+ # 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
105
+ 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 = 30390
106
+ # 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
107
+ OPTIONAL_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_PREWRITTEN_COMPUTER_SOFTWARE_THAT_PROVIDE_UPDATES_OR_UPGRADES_AND_SUPPORT_SERVICES_TO_THE_SOFTWARE = 30400
108
+ # 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
109
+ OPTIONAL_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_PREWRITTEN_COMPUTER_SOFTWARE_THAT_PROVIDE_UPDATES_AND_UPGRADES_DELIVERED_ELECTRONICALLY_AND_SUPPORT_SERVICES_TO_THE_SOFTWARE = 30410
110
+ # 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
111
+ 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 = 30420
112
+ # Computer Related Products: Optional computer software maintenance contracts with respect to prewritten computer software that only provide support services to the software
113
+ OPTIONAL_COMPUTER_SOFTWARE_MAINTENANCE_CONTRACTS_WITH_RESPECT_TO_PREWRITTEN_COMPUTER_SOFTWARE_THAT_ONLY_PROVIDE_SUPPORT_SERVICES_TO_THE_SOFTWARE = 30430
114
+
115
+ # Digital Products
116
+
117
+ # Digital Products: Products Transferred Electronically
118
+ PRODUCTS_TRANSFERRED_ELECTRONICALLY = 31000
119
+ # Digital Products: Audio-Visual Works
120
+ AUDIO_VISUAL_WORKS = 31035
121
+ # Digital Products: Digital Audio Visual Works (with rights for permanent use)
122
+ DIGITAL_AUDIO_VISUAL_WORKS_WITH_RIGHTS_FOR_PERMANENT_USE = 31040
123
+ # Digital Products: Digital Audio Visual Works (with rights of less than permanent use)
124
+ DIGITAL_AUDIO_VISUAL_WORKS_WITH_RIGHTS_OF_LESS_THAN_PERMANENT_USE = 31050
125
+ # Digital Products: Digital Audio Visual Works (with rights conditioned on continued payments)
126
+ DIGITAL_AUDIO_VISUAL_WORKS_WITH_RIGHTS_CONDITIONED_ON_CONTINUED_PAYMENTS = 31060
127
+ # Digital Products: Digital Audio Visual Works sold to users other than the end user
128
+ DIGITAL_AUDIO_VISUAL_WORKS_SOLD_TO_USERS_OTHER_THAN_THE_END_USER = 31065
129
+ # Digital Products: Audio Works
130
+ AUDIO_WORKS = 31069
131
+ # Digital Products: Digital Audio Works (with rights for permanent use)
132
+ DIGITAL_AUDIO_WORKS_WITH_RIGHTS_FOR_PERMANENT_USE = 31070
133
+ # Digital Products: Digital Audio Works (with rights of less than permanent use)
134
+ DIGITAL_AUDIO_WORKS_WITH_RIGHTS_OF_LESS_THAN_PERMANENT_USE = 31080
135
+ # Digital Products: Digital Audio Works (with rights conditioned on continued payments)
136
+ DIGITAL_AUDIO_WORKS_WITH_RIGHTS_CONDITIONED_ON_CONTINUED_PAYMENTS = 31090
137
+ # Digital Products: Digital Audio Works sold to users other than the end user
138
+ DIGITAL_AUDIO_WORKS_SOLD_TO_USERS_OTHER_THAN_THE_END_USER = 31095
139
+ # Digital Products: Digital Books
140
+ DIGITAL_BOOKS = 31099
141
+ # Digital Products: Digital Books (with rights for permanent use)
142
+ DIGITAL_BOOKS_WITH_RIGHTS_FOR_PERMANENT_USE = 31100
143
+ # Digital Products: Digital Books (with rights of less than permanent use)
144
+ DIGITAL_BOOKS_WITH_RIGHTS_OF_LESS_THAN_PERMANENT_USE = 31110
145
+ # Digital Products: Digital Books (with rights conditioned on continued payments)
146
+ DIGITAL_BOOKS_WITH_RIGHTS_CONDITIONED_ON_CONTINUED_PAYMENTS = 31120
147
+ # Digital Products: Digital Books sold to users other than the end user
148
+ DIGITAL_BOOKS_SOLD_TO_USERS_OTHER_THAN_THE_END_USER = 31125
149
+
150
+ # Food and Food Products
151
+
152
+ # Food and Food Products: Candy
153
+ CANDY = 40010
154
+ # Food and Food Products: Dietary Supplements
155
+ DIETARY_SUPPLEMENTS = 40020
156
+ # Food and Food Products: Food and food ingredients excluding alcoholic beverages and tobacco
157
+ FOOD_AND_FOOD_INGREDIENTS_EXCLUDING_ALCOHOLIC_BEVERAGES_AND_TOBACCO = 40030
158
+ # Food and Food Products: Food sold through vending machines
159
+ FOOD_SOLD_THROUGH_VENDING_MACHINES = 40040
160
+ # Food and Food Products: Soft Drinks
161
+ SOFT_DRINKS = 40050
162
+ # Food and Food Products: Bottled Water
163
+ BOTTLED_WATER = 40060
164
+
165
+ # Prepared Food
166
+
167
+ # Prepared Food: Prepared Food
168
+ PREPARED_FOOD = 41000
169
+ # Prepared Food: Food sold without eating utensils provided by the seller whose primary NAICS classification is manufacturing in sector 311, except subsector 3118 (bakeries)
170
+ FOOD_SOLD_WITHOUT_EATING_UTENSILS_PROVIDED_BY_THE_SELLER_WHOSE_PRIMARY_NAICS_CLASSIFICATION_IS_MANUFACTURING_IN_SECTOR_311_EXCEPT_SUBSECTOR_3118_BAKERIES = 41010
171
+ # Prepared Food: Food sold without eating utensils provided by the seller in an unheated state by weight or volume as a single item
172
+ FOOD_SOLD_WITHOUT_EATING_UTENSILS_PROVIDED_BY_THE_SELLER_IN_AN_UNHEATED_STATE_BY_WEIGHT_OR_VOLUME_AS_A_SINGLE_ITEM = 41020
173
+ # 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
174
+ 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 = 41030
175
+
176
+ # Drugs
177
+
178
+ # Drugs: Drugs/Pharmaceuticals
179
+ DRUGS_PHARMACEUTICALS = 51000
180
+ # Drugs: Human use
181
+ HUMAN_USE = 51001
182
+ # Drugs: Animal/Veterinary use
183
+ ANIMAL_VETERINARY_USE = 51002
184
+ # Drugs: Drugs for human use without a prescription
185
+ DRUGS_FOR_HUMAN_USE_WITHOUT_A_PRESCRIPTION = 51010
186
+ # Drugs: Drugs for human use with a prescription
187
+ DRUGS_FOR_HUMAN_USE_WITH_A_PRESCRIPTION = 51020
188
+ # Drugs: Drugs for animal use without a prescription
189
+ DRUGS_FOR_ANIMAL_USE_WITHOUT_A_PRESCRIPTION = 51030
190
+ # Drugs: Drugs for animal use with a prescription
191
+ DRUGS_FOR_ANIMAL_USE_WITH_A_PRESCRIPTION = 51040
192
+ # Drugs: Insulin for human use without a prescription
193
+ INSULIN_FOR_HUMAN_USE_WITHOUT_A_PRESCRIPTION = 51050
194
+ # Drugs: Insulin
195
+ INSULIN = 51055
196
+ # Drugs: Insulin for human use with a prescription
197
+ INSULIN_FOR_HUMAN_USE_WITH_A_PRESCRIPTION = 51060
198
+ # Drugs: Insulin for animal use without a prescription
199
+ INSULIN_FOR_ANIMAL_USE_WITHOUT_A_PRESCRIPTION = 51070
200
+ # Drugs: Insulin
201
+ INSULIN_1 = 51075
202
+ # Drugs: Insulin for animal use with a prescription
203
+ INSULIN_FOR_ANIMAL_USE_WITH_A_PRESCRIPTION = 51080
204
+ # Drugs: Medical oxygen for human use without a prescription
205
+ MEDICAL_OXYGEN_FOR_HUMAN_USE_WITHOUT_A_PRESCRIPTION = 51090
206
+ # Drugs: Oxygen
207
+ OXYGEN = 51095
208
+ # Drugs: Medical oxygen for human use with a prescription
209
+ MEDICAL_OXYGEN_FOR_HUMAN_USE_WITH_A_PRESCRIPTION = 51100
210
+ # Drugs: Medical oxygen for animal use without a prescription
211
+ MEDICAL_OXYGEN_FOR_ANIMAL_USE_WITHOUT_A_PRESCRIPTION = 51110
212
+ # Drugs: Oxygen
213
+ OXYGEN_1 = 51115
214
+ # Drugs: Medical oxygen for animal use with a prescription
215
+ MEDICAL_OXYGEN_FOR_ANIMAL_USE_WITH_A_PRESCRIPTION = 51120
216
+ # Drugs: Over-the-counter drugs for human use without a prescription
217
+ OVER_THE_COUNTER_DRUGS_FOR_HUMAN_USE_WITHOUT_A_PRESCRIPTION = 51130
218
+ # Drugs: Over-the-counter
219
+ OVER_THE_COUNTER = 51135
220
+ # Drugs: Over-the-counter drugs for human use with a prescription
221
+ OVER_THE_COUNTER_DRUGS_FOR_HUMAN_USE_WITH_A_PRESCRIPTION = 51140
222
+ # Drugs: Over-the-counter drugs for animal use without a prescription
223
+ OVER_THE_COUNTER_DRUGS_FOR_ANIMAL_USE_WITHOUT_A_PRESCRIPTION = 51150
224
+ # Drugs: Over-the-counter
225
+ OVER_THE_COUNTER_1 = 51155
226
+ # Drugs: Over-the-counter drugs for animal use with a prescription
227
+ OVER_THE_COUNTER_DRUGS_FOR_ANIMAL_USE_WITH_A_PRESCRIPTION = 51160
228
+ # Drugs: Grooming and hygiene products for human use
229
+ GROOMING_AND_HYGIENE_PRODUCTS_FOR_HUMAN_USE = 51170
230
+ # Drugs: Grooming and hygiene products for animal use
231
+ GROOMING_AND_HYGIENE_PRODUCTS_FOR_ANIMAL_USE = 51180
232
+ # Drugs: Drugs for human use to hospitals
233
+ DRUGS_FOR_HUMAN_USE_TO_HOSPITALS = 51190
234
+ # Drugs: Drugs for human use to other medical facilities
235
+ DRUGS_FOR_HUMAN_USE_TO_OTHER_MEDICAL_FACILITIES = 51195
236
+ # Drugs: Prescription drugs for human use to hospitals
237
+ PRESCRIPTION_DRUGS_FOR_HUMAN_USE_TO_HOSPITALS = 51200
238
+ # Drugs: Prescription drugs for human use to other medical facilities
239
+ PRESCRIPTION_DRUGS_FOR_HUMAN_USE_TO_OTHER_MEDICAL_FACILITIES = 51205
240
+ # Drugs: Drugs for animal use to veterinary hospitals and other animal medical facilities
241
+ DRUGS_FOR_ANIMAL_USE_TO_VETERINARY_HOSPITALS_AND_OTHER_ANIMAL_MEDICAL_FACILITIES = 51210
242
+ # Drugs: Prescription drugs for animal use to hospitals and other animal medical facilities
243
+ PRESCRIPTION_DRUGS_FOR_ANIMAL_USE_TO_HOSPITALS_AND_OTHER_ANIMAL_MEDICAL_FACILITIES = 51220
244
+ # Drugs: Free samples of drugs for human use
245
+ FREE_SAMPLES_OF_DRUGS_FOR_HUMAN_USE = 51240
246
+ # Drugs: Free Samples
247
+ FREE_SAMPLES = 51245
248
+ # Drugs: Free samples of prescription drugs for human use
249
+ FREE_SAMPLES_OF_PRESCRIPTION_DRUGS_FOR_HUMAN_USE = 51250
250
+ # Drugs: Free samples of drugs for animal use
251
+ FREE_SAMPLES_OF_DRUGS_FOR_ANIMAL_USE = 51260
252
+ # Drugs: Free Samples
253
+ FREE_SAMPLES_1 = 51265
254
+ # Drugs: Free samples of prescription drugs for animal use
255
+ FREE_SAMPLES_OF_PRESCRIPTION_DRUGS_FOR_ANIMAL_USE = 51270
256
+
257
+ # Durable Medical Equipment
258
+
259
+ # Durable Medical Equipment: Durable medical equipment
260
+ DURABLE_MEDICAL_EQUIPMENT = 52000
261
+ # Durable Medical Equipment: for Commercial/Industrial/Civic use
262
+ FOR_COMMERCIAL_INDUSTRIAL_CIVIC_USE = 52005
263
+ # Durable Medical Equipment: Durable medical equipment without a prescription
264
+ DURABLE_MEDICAL_EQUIPMENT_WITHOUT_A_PRESCRIPTION = 52010
265
+ # Durable Medical Equipment: Durable medical equipment with a prescription
266
+ DURABLE_MEDICAL_EQUIPMENT_WITH_A_PRESCRIPTION = 52020
267
+ # Durable Medical Equipment: Durable medical equipment with a prescription paid for by Medicare
268
+ DURABLE_MEDICAL_EQUIPMENT_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICARE = 52030
269
+ # Durable Medical Equipment: Durable medical equipment with a prescription reimbursed by Medicare
270
+ DURABLE_MEDICAL_EQUIPMENT_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICARE = 52040
271
+ # Durable Medical Equipment: Durable medical equipment with a prescription paid for by MedicaidAppendix E
272
+ DURABLE_MEDICAL_EQUIPMENT_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICAIDAPPENDIX_E = 52050
273
+ # Durable Medical Equipment: Durable medical equipment with a prescription reimbursed by Medicaid
274
+ DURABLE_MEDICAL_EQUIPMENT_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICAID = 52060
275
+ # Durable Medical Equipment: for home use
276
+ FOR_HOME_USE = 52065
277
+ # Durable Medical Equipment: Durable medical equipment for home use without a prescription
278
+ DURABLE_MEDICAL_EQUIPMENT_FOR_HOME_USE_WITHOUT_A_PRESCRIPTION = 52070
279
+ # Durable Medical Equipment: Durable medical equipment for home use with a prescription
280
+ DURABLE_MEDICAL_EQUIPMENT_FOR_HOME_USE_WITH_A_PRESCRIPTION = 52080
281
+ # Durable Medical Equipment: Durable medical equipment for home use with a prescription paid for by Medicare
282
+ DURABLE_MEDICAL_EQUIPMENT_FOR_HOME_USE_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICARE = 52090
283
+ # Durable Medical Equipment: Durable medical equipment for home use with a prescription reimbursed by Medicare
284
+ DURABLE_MEDICAL_EQUIPMENT_FOR_HOME_USE_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICARE = 52100
285
+ # Durable Medical Equipment: Durable medical equipment for home use with a prescription paid for by Medicaid
286
+ DURABLE_MEDICAL_EQUIPMENT_FOR_HOME_USE_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICAID = 52110
287
+ # Durable Medical Equipment: Durable medical equipment for home use with a prescription reimbursed by Medicaid
288
+ DURABLE_MEDICAL_EQUIPMENT_FOR_HOME_USE_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICAID = 52120
289
+ # Durable Medical Equipment: Oxygen delivery equipment
290
+ OXYGEN_DELIVERY_EQUIPMENT = 52125
291
+ # Durable Medical Equipment: for Commercial/Industrial/Civic use
292
+ FOR_COMMERCIAL_INDUSTRIAL_CIVIC_USE_1 = 52128
293
+ # Durable Medical Equipment: Oxygen delivery equipment without a prescription
294
+ OXYGEN_DELIVERY_EQUIPMENT_WITHOUT_A_PRESCRIPTION = 52130
295
+ # Durable Medical Equipment: Oxygen delivery equipment with a prescription
296
+ OXYGEN_DELIVERY_EQUIPMENT_WITH_A_PRESCRIPTION = 52140
297
+ # Durable Medical Equipment: Oxygen delivery equipment with a prescription paid for by Medicare
298
+ OXYGEN_DELIVERY_EQUIPMENT_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICARE = 52150
299
+ # Durable Medical Equipment: Oxygen delivery equipment with a prescription reimbursed by Medicare
300
+ OXYGEN_DELIVERY_EQUIPMENT_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICARE = 52160
301
+ # Durable Medical Equipment: Oxygen delivery equipment with a prescription paid for by Medicaid
302
+ OXYGEN_DELIVERY_EQUIPMENT_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICAID = 52170
303
+ # Durable Medical Equipment: Oxygen delivery equipment with a prescription reimbursed by Medicaid
304
+ OXYGEN_DELIVERY_EQUIPMENT_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICAID = 52180
305
+ # Durable Medical Equipment: for home use
306
+ FOR_HOME_USE_1 = 52185
307
+ # Durable Medical Equipment: Oxygen delivery equipment for home use without a prescription
308
+ OXYGEN_DELIVERY_EQUIPMENT_FOR_HOME_USE_WITHOUT_A_PRESCRIPTION = 52190
309
+ # Durable Medical Equipment: Oxygen delivery equipment for home use with a prescription
310
+ OXYGEN_DELIVERY_EQUIPMENT_FOR_HOME_USE_WITH_A_PRESCRIPTION = 52200
311
+ # Durable Medical Equipment: Oxygen delivery equipment with a prescription for home use paid for by Medicare
312
+ OXYGEN_DELIVERY_EQUIPMENT_WITH_A_PRESCRIPTION_FOR_HOME_USE_PAID_FOR_BY_MEDICARE = 52210
313
+ # Durable Medical Equipment: Oxygen delivery equipment with a prescription for home use reimbursed by Medicare
314
+ OXYGEN_DELIVERY_EQUIPMENT_WITH_A_PRESCRIPTION_FOR_HOME_USE_REIMBURSED_BY_MEDICARE = 52220
315
+ # Durable Medical Equipment: Oxygen delivery equipment with a prescription for home use paid for by Medicaid
316
+ OXYGEN_DELIVERY_EQUIPMENT_WITH_A_PRESCRIPTION_FOR_HOME_USE_PAID_FOR_BY_MEDICAID = 52230
317
+ # Durable Medical Equipment: Oxygen delivery equipment with a prescription for home use reimbursed by Medicaid
318
+ OXYGEN_DELIVERY_EQUIPMENT_WITH_A_PRESCRIPTION_FOR_HOME_USE_REIMBURSED_BY_MEDICAID = 52240
319
+ # Durable Medical Equipment: Kidney dialysis equipment
320
+ KIDNEY_DIALYSIS_EQUIPMENT = 52245
321
+ # Durable Medical Equipment: for Commercial/Industrial/Civic use
322
+ FOR_COMMERCIAL_INDUSTRIAL_CIVIC_USE_2 = 52248
323
+ # Durable Medical Equipment: Kidney dialysis equipment without a prescription
324
+ KIDNEY_DIALYSIS_EQUIPMENT_WITHOUT_A_PRESCRIPTION = 52250
325
+ # Durable Medical Equipment: Kidney dialysis equipment with a prescription
326
+ KIDNEY_DIALYSIS_EQUIPMENT_WITH_A_PRESCRIPTION = 52260
327
+ # Durable Medical Equipment: Kidney dialysis equipment with a prescription paid for by Medicare
328
+ KIDNEY_DIALYSIS_EQUIPMENT_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICARE = 52270
329
+ # Durable Medical Equipment: Kidney dialysis equipment with a prescription reimbursed by Medicare
330
+ KIDNEY_DIALYSIS_EQUIPMENT_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICARE = 52280
331
+ # Durable Medical Equipment: Kidney dialysis equipment with a prescription paid for by Medicaid
332
+ KIDNEY_DIALYSIS_EQUIPMENT_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICAID = 52290
333
+ # Durable Medical Equipment: Kidney dialysis equipment with a prescription reimbursed by Medicaid
334
+ KIDNEY_DIALYSIS_EQUIPMENT_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICAID = 52300
335
+ # Durable Medical Equipment: for home use
336
+ FOR_HOME_USE_2 = 52305
337
+ # Durable Medical Equipment: Kidney dialysis equipment for home use without a prescription
338
+ KIDNEY_DIALYSIS_EQUIPMENT_FOR_HOME_USE_WITHOUT_A_PRESCRIPTION = 52310
339
+ # Durable Medical Equipment: Kidney dialysis equipment for home use with a prescription
340
+ KIDNEY_DIALYSIS_EQUIPMENT_FOR_HOME_USE_WITH_A_PRESCRIPTION = 52320
341
+ # Durable Medical Equipment: Kidney dialysis equipment for home use with a prescription paid for by Medicare
342
+ KIDNEY_DIALYSIS_EQUIPMENT_FOR_HOME_USE_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICARE = 52330
343
+ # Durable Medical Equipment: Kidney dialysis equipment for home use with a prescription reimbursed by Medicare
344
+ KIDNEY_DIALYSIS_EQUIPMENT_FOR_HOME_USE_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICARE = 52340
345
+ # Durable Medical Equipment: Kidney dialysis equipment for home use with a prescription paid for by Medicaid
346
+ KIDNEY_DIALYSIS_EQUIPMENT_FOR_HOME_USE_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICAID = 52350
347
+ # Durable Medical Equipment: Kidney dialysis equipment for home use with a prescription reimbursed by Medicaid
348
+ KIDNEY_DIALYSIS_EQUIPMENT_FOR_HOME_USE_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICAID = 52360
349
+ # Durable Medical Equipment: Enteral feeding systems
350
+ ENTERAL_FEEDING_SYSTEMS = 52365
351
+ # Durable Medical Equipment: for Commercial/Industrial/Civic use
352
+ FOR_COMMERCIAL_INDUSTRIAL_CIVIC_USE_3 = 52368
353
+ # Durable Medical Equipment: Enteral feeding systems without a prescription
354
+ ENTERAL_FEEDING_SYSTEMS_WITHOUT_A_PRESCRIPTION = 52370
355
+ # Durable Medical Equipment: Enteral feeding systems with a prescription
356
+ ENTERAL_FEEDING_SYSTEMS_WITH_A_PRESCRIPTION = 52380
357
+ # Durable Medical Equipment: Enteral feeding systems with a prescription paid for by Medicare
358
+ ENTERAL_FEEDING_SYSTEMS_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICARE = 52390
359
+ # Durable Medical Equipment: Enteral feeding systems with a prescription reimbursed by Medicare
360
+ ENTERAL_FEEDING_SYSTEMS_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICARE = 52400
361
+ # Durable Medical Equipment: Enteral feeding systems with a prescription paid for by Medicaid
362
+ ENTERAL_FEEDING_SYSTEMS_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICAID = 52410
363
+ # Durable Medical Equipment: Enteral feeding systems with a prescription reimbursed by Medicaid
364
+ ENTERAL_FEEDING_SYSTEMS_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICAID = 52420
365
+ # Durable Medical Equipment: for home use
366
+ FOR_HOME_USE_3 = 52425
367
+ # Durable Medical Equipment: Enteral feeding systems for home use without a prescription
368
+ ENTERAL_FEEDING_SYSTEMS_FOR_HOME_USE_WITHOUT_A_PRESCRIPTION = 52430
369
+ # Durable Medical Equipment: Enteral feeding systems for home use with a prescription
370
+ ENTERAL_FEEDING_SYSTEMS_FOR_HOME_USE_WITH_A_PRESCRIPTION = 52440
371
+ # Durable Medical Equipment: Enteral feeding systems for home use with a prescription paid for by Medicare
372
+ ENTERAL_FEEDING_SYSTEMS_FOR_HOME_USE_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICARE = 52450
373
+ # Durable Medical Equipment: Enteral feeding systems for home use with a prescription reimbursed by Medicare
374
+ ENTERAL_FEEDING_SYSTEMS_FOR_HOME_USE_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICARE = 52460
375
+ # Durable Medical Equipment: Enteral feeding systems for home use with a prescription paid for by Medicaid
376
+ ENTERAL_FEEDING_SYSTEMS_FOR_HOME_USE_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICAID = 52470
377
+ # Durable Medical Equipment: Enteral feeding systems for home use with a prescription reimbursed by Medicaid
378
+ ENTERAL_FEEDING_SYSTEMS_FOR_HOME_USE_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICAID = 52480
379
+ # Durable Medical Equipment: Repair and replacement parts for durable medical equipment which are for single patient use
380
+ REPAIR_AND_REPLACEMENT_PARTS_FOR_DURABLE_MEDICAL_EQUIPMENT_WHICH_ARE_FOR_SINGLE_PATIENT_USE = 52490
381
+
382
+ # Mobilty Enhancing Equipment
383
+
384
+ # Mobilty Enhancing Equipment: Mobility enhancing equipment
385
+ MOBILITY_ENHANCING_EQUIPMENT = 53000
386
+ # Mobilty Enhancing Equipment: Mobility enhancing equipment without a prescription
387
+ MOBILITY_ENHANCING_EQUIPMENT_WITHOUT_A_PRESCRIPTION = 53010
388
+ # Mobilty Enhancing Equipment: Mobility enhancing equipment with a prescriptionAppendix E
389
+ MOBILITY_ENHANCING_EQUIPMENT_WITH_A_PRESCRIPTIONAPPENDIX_E = 53020
390
+ # Mobilty Enhancing Equipment: Mobility enhancing equipment with a prescription paid for by Medicare
391
+ MOBILITY_ENHANCING_EQUIPMENT_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICARE = 53030
392
+ # Mobilty Enhancing Equipment: Mobility enhancing equipment with a prescription reimbursed by Medicare
393
+ MOBILITY_ENHANCING_EQUIPMENT_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICARE = 53040
394
+ # Mobilty Enhancing Equipment: Mobility enhancing equipment with a prescription paid for by Medicaid
395
+ MOBILITY_ENHANCING_EQUIPMENT_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICAID = 53050
396
+ # Mobilty Enhancing Equipment: Mobility enhancing equipment with a prescription reimbursed by Medicaid
397
+ MOBILITY_ENHANCING_EQUIPMENT_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICAID = 53060
398
+
399
+ # Prosthetic Devices
400
+
401
+ # Prosthetic Devices: Prosthetic devices
402
+ PROSTHETIC_DEVICES = 54000
403
+ # Prosthetic Devices: Prosthetic devices without a prescription
404
+ PROSTHETIC_DEVICES_WITHOUT_A_PRESCRIPTION = 54010
405
+ # Prosthetic Devices: Prosthetic devices with a prescription
406
+ PROSTHETIC_DEVICES_WITH_A_PRESCRIPTION = 54020
407
+ # Prosthetic Devices: Prosthetic devices paid with a prescription for by Medicare
408
+ PROSTHETIC_DEVICES_PAID_WITH_A_PRESCRIPTION_FOR_BY_MEDICARE = 54030
409
+ # Prosthetic Devices: Prosthetic devices with a prescription reimbursed by Medicare
410
+ PROSTHETIC_DEVICES_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICARE = 54040
411
+ # Prosthetic Devices: Prosthetic devices with a prescription paid for by Medicaid
412
+ PROSTHETIC_DEVICES_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICAID = 54050
413
+ # Prosthetic Devices: Prosthetic devices with a prescription reimbursed by Medicaid
414
+ PROSTHETIC_DEVICES_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICAID = 54060
415
+ # Prosthetic Devices: Corrective eyeglasses
416
+ CORRECTIVE_EYEGLASSES = 54065
417
+ # Prosthetic Devices: Corrective eyeglasses without a prescription
418
+ CORRECTIVE_EYEGLASSES_WITHOUT_A_PRESCRIPTION = 54070
419
+ # Prosthetic Devices: Corrective eyeglasses with a prescription
420
+ CORRECTIVE_EYEGLASSES_WITH_A_PRESCRIPTION = 54080
421
+ # Prosthetic Devices: Corrective eyeglasses with a prescription paid for by Medicare
422
+ CORRECTIVE_EYEGLASSES_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICARE = 54090
423
+ # Prosthetic Devices: Corrective eyeglasses with a prescription reimbursed by Medicare
424
+ CORRECTIVE_EYEGLASSES_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICARE = 54100
425
+ # Prosthetic Devices: Corrective eyeglasses with a prescription paid for by Medicaid
426
+ CORRECTIVE_EYEGLASSES_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICAID = 54110
427
+ # Prosthetic Devices: Corrective eyeglasses with a prescription reimbursed by Medicaid
428
+ CORRECTIVE_EYEGLASSES_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICAID = 54120
429
+ # Prosthetic Devices: Contact lenses
430
+ CONTACT_LENSES = 54125
431
+ # Prosthetic Devices: Contact lenses without a prescription
432
+ CONTACT_LENSES_WITHOUT_A_PRESCRIPTION = 54130
433
+ # Prosthetic Devices: Contact lenses with a prescription
434
+ CONTACT_LENSES_WITH_A_PRESCRIPTION = 54140
435
+ # Prosthetic Devices: Contact lenses with a prescription paid for by Medicare
436
+ CONTACT_LENSES_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICARE = 54150
437
+ # Prosthetic Devices: Contact lenses with a prescription reimbursed by Medicare
438
+ CONTACT_LENSES_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICARE = 54160
439
+ # Prosthetic Devices: Contact lenses with a prescription paid for by Medicaid
440
+ CONTACT_LENSES_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICAID = 54170
441
+ # Prosthetic Devices: Contact lenses with a prescription reimbursed by Medicaid
442
+ CONTACT_LENSES_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICAID = 54180
443
+ # Prosthetic Devices: Hearing aids
444
+ HEARING_AIDS = 54185
445
+ # Prosthetic Devices: Hearing aids without a prescription
446
+ HEARING_AIDS_WITHOUT_A_PRESCRIPTION = 54190
447
+ # Prosthetic Devices: Hearing aids with a prescription
448
+ HEARING_AIDS_WITH_A_PRESCRIPTION = 54200
449
+ # Prosthetic Devices: Hearing aids with a prescription paid for by Medicare
450
+ HEARING_AIDS_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICARE = 54210
451
+ # Prosthetic Devices: Hearing aids with a prescription reimbursed by Medicare
452
+ HEARING_AIDS_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICARE = 54220
453
+ # Prosthetic Devices: Hearing aids with a prescription paid for by Medicaid
454
+ HEARING_AIDS_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICAID = 54230
455
+ # Prosthetic Devices: Hearing aids with a prescription reimbursed by Medicaid
456
+ HEARING_AIDS_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICAID = 54240
457
+ # Prosthetic Devices: Dental prosthesis
458
+ DENTAL_PROSTHESIS = 54245
459
+ # Prosthetic Devices: Dental prosthesis without a prescription
460
+ DENTAL_PROSTHESIS_WITHOUT_A_PRESCRIPTION = 54250
461
+ # Prosthetic Devices: Dental prosthesis with a prescription
462
+ DENTAL_PROSTHESIS_WITH_A_PRESCRIPTION = 54260
463
+ # Prosthetic Devices: Dental prosthesis with a prescription paid for by Medicare
464
+ DENTAL_PROSTHESIS_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICARE = 54270
465
+ # Prosthetic Devices: Dental prosthesis with a prescription reimbursed by Medicare
466
+ DENTAL_PROSTHESIS_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICARE = 54280
467
+ # Prosthetic Devices: Dental prosthesis with a prescription paid for by Medicaid
468
+ DENTAL_PROSTHESIS_WITH_A_PRESCRIPTION_PAID_FOR_BY_MEDICAID = 54290
469
+ # Prosthetic Devices: Dental prosthesis with a prescription reimbursed by Medicaid
470
+ DENTAL_PROSTHESIS_WITH_A_PRESCRIPTION_REIMBURSED_BY_MEDICAID = 54300
471
+
472
+ # Telecommunications
473
+
474
+ # Telecommunications: Ancillary Services
475
+ ANCILLARY_SERVICES = 60010
476
+ # Telecommunications: Conference bridging service
477
+ CONFERENCE_BRIDGING_SERVICE = 60020
478
+ # Telecommunications: Detailed telecommunications billing service
479
+ DETAILED_TELECOMMUNICATIONS_BILLING_SERVICE = 60030
480
+ # Telecommunications: Directory assistance
481
+ DIRECTORY_ASSISTANCE = 60040
482
+ # Telecommunications: Vertical service
483
+ VERTICAL_SERVICE = 60050
484
+ # Telecommunications: Voice mail service
485
+ VOICE_MAIL_SERVICE = 60060
486
+ # Telecommunications: Intrastate Telecommunications Service
487
+ INTRASTATE_TELECOMMUNICATIONS_SERVICE = 61000
488
+ # Telecommunications: Interstate Telecommunications ServiceAppendix E
489
+ INTERSTATE_TELECOMMUNICATIONS_SERVICEAPPENDIX_E = 61010
490
+ # Telecommunications: International Telecommunications Service
491
+ INTERNATIONAL_TELECOMMUNICATIONS_SERVICE = 61020
492
+ # Telecommunications: International 800 service
493
+ INTERNATIONAL_800_SERVICE = 61030
494
+ # Telecommunications: International 900 service
495
+ INTERNATIONAL_900_SERVICE = 61040
496
+ # Telecommunications: International fixed wireless service
497
+ INTERNATIONAL_FIXED_WIRELESS_SERVICE = 61050
498
+ # Telecommunications: International mobile wireless service
499
+ INTERNATIONAL_MOBILE_WIRELESS_SERVICE = 61060
500
+ # Telecommunications: International paging service
501
+ INTERNATIONAL_PAGING_SERVICE = 61070
502
+ # Telecommunications: International prepaid calling service
503
+ INTERNATIONAL_PREPAID_CALLING_SERVICE = 61080
504
+ # Telecommunications: International prepaid wireless calling service
505
+ INTERNATIONAL_PREPAID_WIRELESS_CALLING_SERVICE = 61090
506
+ # Telecommunications: International private communications service
507
+ INTERNATIONAL_PRIVATE_COMMUNICATIONS_SERVICE = 61100
508
+ # Telecommunications: International value-added non-voice data service
509
+ INTERNATIONAL_VALUE_ADDED_NON_VOICE_DATA_SERVICE = 61110
510
+ # Telecommunications: International residential telecommunications service
511
+ INTERNATIONAL_RESIDENTIAL_TELECOMMUNICATIONS_SERVICE = 61120
512
+ # Telecommunications: Interstate 800 service
513
+ INTERSTATE_800_SERVICE = 61130
514
+ # Telecommunications: Interstate 900 service
515
+ INTERSTATE_900_SERVICE = 61140
516
+ # Telecommunications: Interstate fixed wireless service
517
+ INTERSTATE_FIXED_WIRELESS_SERVICE = 61150
518
+ # Telecommunications: Interstate mobile wireless service
519
+ INTERSTATE_MOBILE_WIRELESS_SERVICE = 61160
520
+ # Telecommunications: Interstate paging service
521
+ INTERSTATE_PAGING_SERVICE = 61170
522
+ # Telecommunications: Interstate prepaid calling service
523
+ INTERSTATE_PREPAID_CALLING_SERVICE = 61180
524
+ # Telecommunications: Interstate prepaid wireless calling service
525
+ INTERSTATE_PREPAID_WIRELESS_CALLING_SERVICE = 61190
526
+ # Telecommunications: Interstate private communications service
527
+ INTERSTATE_PRIVATE_COMMUNICATIONS_SERVICE = 61200
528
+ # Telecommunications: Interstate value-added non-voice data service
529
+ INTERSTATE_VALUE_ADDED_NON_VOICE_DATA_SERVICE = 61210
530
+ # Telecommunications: Interstate residential telecommunications service
531
+ INTERSTATE_RESIDENTIAL_TELECOMMUNICATIONS_SERVICE = 61220
532
+ # Telecommunications: Intrastate 800 service
533
+ INTRASTATE_800_SERVICE = 61230
534
+ # Telecommunications: Intrastate 900 service
535
+ INTRASTATE_900_SERVICE = 61240
536
+ # Telecommunications: Intrastate fixed wireless service
537
+ INTRASTATE_FIXED_WIRELESS_SERVICE = 61250
538
+ # Telecommunications: Intrastate mobile wireless service
539
+ INTRASTATE_MOBILE_WIRELESS_SERVICE = 61260
540
+ # Telecommunications: Intrastate paging service
541
+ INTRASTATE_PAGING_SERVICE = 61270
542
+ # Telecommunications: Intrastate prepaid calling service
543
+ INTRASTATE_PREPAID_CALLING_SERVICE = 61280
544
+ # Telecommunications: Intrastate prepaid wireless calling service
545
+ INTRASTATE_PREPAID_WIRELESS_CALLING_SERVICE = 61290
546
+ # Telecommunications: Intrastate private communications service
547
+ INTRASTATE_PRIVATE_COMMUNICATIONS_SERVICE = 61300
548
+ # Telecommunications: Intrastate value-added non-voice data service
549
+ INTRASTATE_VALUE_ADDED_NON_VOICE_DATA_SERVICE = 61310
550
+ # Telecommunications: Intrastate residential telecommunications service
551
+ INTRASTATE_RESIDENTIAL_TELECOMMUNICATIONS_SERVICE = 61320
552
+ # Telecommunications: Paging service
553
+ PAGING_SERVICE = 61325
554
+ # Telecommunications: Coin-operated telephone service
555
+ COIN_OPERATED_TELEPHONE_SERVICE = 61330
556
+ # Telecommunications: Pay telephone service
557
+ PAY_TELEPHONE_SERVICE = 61340
558
+ # Telecommunications: Local Service as defined by state
559
+ LOCAL_SERVICE_AS_DEFINED_BY_STATE = 61350
560
+
561
+ end
562
+ end