tokyomessenger 0.5
Sign up to get free protection for your applications and to get access to all the features.
- data/COPYING +504 -0
- data/README.rdoc +224 -0
- data/Rakefile +72 -0
- data/benchmarks/balancer.rb +101 -0
- data/benchmarks/bulk_db.rb +92 -0
- data/benchmarks/bulk_table.rb +104 -0
- data/benchmarks/db.rb +131 -0
- data/benchmarks/table.rb +186 -0
- data/ext/a.h +496 -0
- data/ext/extconf.rb +27 -0
- data/ext/md5.c +381 -0
- data/ext/md5.h +101 -0
- data/ext/tc_myconf.c +493 -0
- data/ext/tc_myconf.h +543 -0
- data/ext/tcadb.c +4339 -0
- data/ext/tcadb.h +533 -0
- data/ext/tcbdb.c +4180 -0
- data/ext/tcbdb.h +1086 -0
- data/ext/tcfdb.c +2746 -0
- data/ext/tcfdb.h +842 -0
- data/ext/tchdb.c +5153 -0
- data/ext/tchdb.h +856 -0
- data/ext/tcrdb.c +2637 -0
- data/ext/tcrdb.h +785 -0
- data/ext/tctdb.c +6199 -0
- data/ext/tctdb.h +1070 -0
- data/ext/tcutil.c +10528 -0
- data/ext/tcutil.h +4166 -0
- data/ext/tokyo_messenger.c +147 -0
- data/ext/tokyo_messenger.h +49 -0
- data/ext/tokyo_messenger_db.c +227 -0
- data/ext/tokyo_messenger_db.h +8 -0
- data/ext/tokyo_messenger_module.c +453 -0
- data/ext/tokyo_messenger_module.h +10 -0
- data/ext/tokyo_messenger_query.c +226 -0
- data/ext/tokyo_messenger_query.h +9 -0
- data/ext/tokyo_messenger_table.c +319 -0
- data/ext/tokyo_messenger_table.h +8 -0
- data/ext/tt_myconf.c +169 -0
- data/ext/tt_myconf.h +408 -0
- data/ext/ttutil.c +1509 -0
- data/ext/ttutil.h +480 -0
- data/lib/tokyo_messenger/balancer.rb +188 -0
- data/spec/ext.lua +4 -0
- data/spec/plu_db.rb +538 -0
- data/spec/spec.rb +1 -0
- data/spec/spec_base.rb +17 -0
- data/spec/start_tyrants.sh +36 -0
- data/spec/stop_tyrants.sh +9 -0
- data/spec/tokyo_tyrant_balancer_db_spec.rb +160 -0
- data/spec/tokyo_tyrant_balancer_table_spec.rb +177 -0
- data/spec/tokyo_tyrant_query_spec.rb +159 -0
- data/spec/tokyo_tyrant_spec.rb +254 -0
- data/spec/tokyo_tyrant_table_spec.rb +301 -0
- metadata +117 -0
@@ -0,0 +1,188 @@
|
|
1
|
+
require 'tokyo_messenger'
|
2
|
+
require 'fast_hash_ring'
|
3
|
+
|
4
|
+
module TokyoMessenger
|
5
|
+
module Balancer
|
6
|
+
class Base
|
7
|
+
def initialize(servers = [], weights = {})
|
8
|
+
servers.collect! do |server|
|
9
|
+
host, port = server.split(':')
|
10
|
+
klass.new(host, port.to_i)
|
11
|
+
end
|
12
|
+
@servers = servers
|
13
|
+
# @ring = HashRing.new(servers, weights)
|
14
|
+
@ring = FastHashRing.new(servers, weights)
|
15
|
+
end
|
16
|
+
|
17
|
+
def ring
|
18
|
+
@ring
|
19
|
+
end
|
20
|
+
|
21
|
+
def servers
|
22
|
+
@servers
|
23
|
+
end
|
24
|
+
|
25
|
+
def db_for_key(key)
|
26
|
+
ring.get_node(key)
|
27
|
+
end
|
28
|
+
|
29
|
+
# Delegate Methods
|
30
|
+
def get(key)
|
31
|
+
db = db_for_key(key)
|
32
|
+
db.get(key)
|
33
|
+
end
|
34
|
+
alias :[] :get
|
35
|
+
|
36
|
+
def add_int(key, i = 1)
|
37
|
+
db = db_for_key(key)
|
38
|
+
db.add_int(key, i)
|
39
|
+
end
|
40
|
+
alias :addint :add_int
|
41
|
+
alias :increment :add_int
|
42
|
+
|
43
|
+
def get_int(key)
|
44
|
+
db = db_for_key(key)
|
45
|
+
db.get_int(key)
|
46
|
+
end
|
47
|
+
|
48
|
+
def add_double(key, i = 1.0)
|
49
|
+
db = db_for_key(key)
|
50
|
+
db.add_double(key, i)
|
51
|
+
end
|
52
|
+
alias :adddouble :add_double
|
53
|
+
|
54
|
+
def get_double(key)
|
55
|
+
db = db_for_key(key)
|
56
|
+
db.get_double(key)
|
57
|
+
end
|
58
|
+
|
59
|
+
def put(key, value)
|
60
|
+
db = db_for_key(key)
|
61
|
+
db.put(key, value)
|
62
|
+
end
|
63
|
+
alias :[]= :put
|
64
|
+
|
65
|
+
def putkeep(key, value)
|
66
|
+
db = db_for_key(key)
|
67
|
+
db.putkeep(key, value)
|
68
|
+
end
|
69
|
+
|
70
|
+
def putcat(key, value)
|
71
|
+
db = db_for_key(key)
|
72
|
+
db.putcat(key, value)
|
73
|
+
end
|
74
|
+
|
75
|
+
def putshl(key, value, width)
|
76
|
+
db = db_for_key(key)
|
77
|
+
db.putshl(key, value, width)
|
78
|
+
end
|
79
|
+
|
80
|
+
def putnr(key, value)
|
81
|
+
db = db_for_key(key)
|
82
|
+
db.putnr(key, value)
|
83
|
+
end
|
84
|
+
|
85
|
+
def vsiz(key)
|
86
|
+
db = db_for_key(key)
|
87
|
+
db.vsiz(key)
|
88
|
+
end
|
89
|
+
|
90
|
+
def fetch(key, &block)
|
91
|
+
db = db_for_key(key)
|
92
|
+
db.fetch(key, &block)
|
93
|
+
end
|
94
|
+
|
95
|
+
def out(key)
|
96
|
+
db = db_for_key(key)
|
97
|
+
db.out(key)
|
98
|
+
end
|
99
|
+
alias :delete :out
|
100
|
+
|
101
|
+
# Aggregate Methods
|
102
|
+
def close
|
103
|
+
@servers.all?{ |server| server.close }
|
104
|
+
end
|
105
|
+
|
106
|
+
def rnum
|
107
|
+
@servers.collect{ |server| server.rnum }.inject(nil){ |sum,x| sum ? sum+x : x }
|
108
|
+
end
|
109
|
+
alias :count :rnum
|
110
|
+
alias :size :rnum
|
111
|
+
alias :length :rnum
|
112
|
+
|
113
|
+
def empty?
|
114
|
+
@servers.all?{ |server| server.empty? }
|
115
|
+
end
|
116
|
+
|
117
|
+
def vanish
|
118
|
+
@servers.all?{ |server| server.vanish }
|
119
|
+
end
|
120
|
+
alias :clear :vanish
|
121
|
+
|
122
|
+
def sync
|
123
|
+
@servers.each{ |server| server.sync }
|
124
|
+
end
|
125
|
+
|
126
|
+
def optimize(*args)
|
127
|
+
@servers.all?{ |server| server.optimize(*args) }
|
128
|
+
end
|
129
|
+
|
130
|
+
def check(key)
|
131
|
+
@servers.any?{ |server| server.check(key) }
|
132
|
+
end
|
133
|
+
alias :has_key? :check
|
134
|
+
alias :key? :check
|
135
|
+
alias :include? :check
|
136
|
+
alias :member? :check
|
137
|
+
|
138
|
+
def set_index(name, type)
|
139
|
+
@servers.all?{ |server| server.set_index(name, type) }
|
140
|
+
end
|
141
|
+
|
142
|
+
def fwmkeys(prefix, max = -1)
|
143
|
+
@servers.collect{ |server| server.fwmkeys(prefix, max) }.flatten
|
144
|
+
end
|
145
|
+
|
146
|
+
def delete_keys_with_prefix(prefix, max = -1)
|
147
|
+
@servers.each{ |server| server.delete_keys_with_prefix(prefix, max) }
|
148
|
+
nil
|
149
|
+
end
|
150
|
+
alias :dfwmkeys :delete_keys_with_prefix
|
151
|
+
|
152
|
+
def keys
|
153
|
+
@servers.collect{ |server| server.keys }.flatten.uniq
|
154
|
+
end
|
155
|
+
|
156
|
+
def values
|
157
|
+
@servers.collect{ |server| server.values }.flatten.uniq
|
158
|
+
end
|
159
|
+
end
|
160
|
+
end
|
161
|
+
end
|
162
|
+
|
163
|
+
module TokyoMessenger
|
164
|
+
module Balancer
|
165
|
+
class DB < Base
|
166
|
+
def klass
|
167
|
+
TokyoMessenger::DB
|
168
|
+
end
|
169
|
+
end
|
170
|
+
end
|
171
|
+
end
|
172
|
+
|
173
|
+
module TokyoMessenger
|
174
|
+
module Balancer
|
175
|
+
class Table < Base
|
176
|
+
def klass
|
177
|
+
TokyoMessenger::Table
|
178
|
+
end
|
179
|
+
|
180
|
+
def find(&block)
|
181
|
+
queries = @servers.collect{ |server|
|
182
|
+
server.prepare_query(&block)
|
183
|
+
}
|
184
|
+
TokyoMessenger::Query.parallel_search(*queries)
|
185
|
+
end
|
186
|
+
end
|
187
|
+
end
|
188
|
+
end
|
data/spec/ext.lua
ADDED
data/spec/plu_db.rb
ADDED
@@ -0,0 +1,538 @@
|
|
1
|
+
$codes = {
|
2
|
+
'3000' => { :code => '3000', :type => 'Apple', :variety => 'Alkmene' },
|
3
|
+
'3001' => { :code => '3001', :type => 'Apple', :variety => 'Aurora / Southern Rose, small' },
|
4
|
+
'3002' => { :code => '3002', :type => 'Apple', :variety => 'Cantared' },
|
5
|
+
'3003' => { :code => '3003', :type => 'Apple', :variety => 'D\'Estivale' },
|
6
|
+
'3004' => { :code => '3004', :type => 'Apple', :variety => 'Discovery' },
|
7
|
+
'3005' => { :code => '3005', :type => 'Apple', :variety => 'Golden Delicious Blush' },
|
8
|
+
'3006' => { :code => '3006', :type => 'Apple', :variety => 'Ingrid Marie' },
|
9
|
+
'3007' => { :code => '3007', :type => 'Apple', :variety => 'Lochbuie' },
|
10
|
+
'3008' => { :code => '3008', :type => 'Apple', :variety => 'Rubinette' },
|
11
|
+
'3009' => { :code => '3009', :type => 'Apple', :variety => 'Russet' },
|
12
|
+
'3011' => { :code => '3011', :type => 'Apple', :variety => 'Worcester' },
|
13
|
+
'3012' => { :code => '3012', :type => 'Pear', :variety => 'Abate Fetel' },
|
14
|
+
'3013' => { :code => '3013', :type => 'Pear', :variety => 'Beurre Hardy' },
|
15
|
+
'3014' => { :code => '3014', :type => 'Pear', :variety => 'Bon Rouge' },
|
16
|
+
'3015' => { :code => '3015', :type => 'Pear', :variety => 'Clara Friis' },
|
17
|
+
'3016' => { :code => '3016', :type => 'Pear', :variety => 'Concorde' },
|
18
|
+
'3017' => { :code => '3017', :type => 'Pear', :variety => 'Conference' },
|
19
|
+
'3018' => { :code => '3018', :type => 'Pear', :variety => 'Durondeau' },
|
20
|
+
'3019' => { :code => '3019', :type => 'Pear', :variety => 'Flamingo' },
|
21
|
+
'3020' => { :code => '3020', :type => 'Pear', :variety => 'General Leclerc' },
|
22
|
+
'3021' => { :code => '3021', :type => 'Pear', :variety => 'Guyot' },
|
23
|
+
'3022' => { :code => '3022', :type => 'Pear', :variety => 'Josephine' },
|
24
|
+
'3024' => { :code => '3024', :type => 'Pear', :variety => 'Rocha' },
|
25
|
+
'3025' => { :code => '3025', :type => 'Pear', :variety => 'Rosemarie' },
|
26
|
+
'3026' => { :code => '3026', :type => 'Pear', :variety => 'Triumph de Vienne' },
|
27
|
+
'3027' => { :code => '3027', :type => 'Orange', :variety => 'Shamouti' },
|
28
|
+
'3030' => { :code => '3030', :type => 'Tangerine / Mandarin', :variety => 'Nova' },
|
29
|
+
'3031' => { :code => '3031', :type => 'Tangerine / Mandarin', :variety => 'Jamaican Tangor' },
|
30
|
+
'3037' => { :code => '3037', :type => 'Pineapple', :variety => 'Queen' },
|
31
|
+
'3038' => { :code => '3038', :type => 'Passion Fruit', :variety => 'Granadilla / Grenadilla Orange' },
|
32
|
+
'3039' => { :code => '3039', :type => 'Berries', :variety => 'Gooseberry / Ground Cherry / Physalis / Cape' },
|
33
|
+
'3041' => { :code => '3041', :type => 'Rambutan', :variety => '' },
|
34
|
+
'3042' => { :code => '3042', :type => 'Mangosteen', :variety => '' },
|
35
|
+
'3043' => { :code => '3043', :type => 'Grape', :variety => 'Italian, seeded' },
|
36
|
+
'3046' => { :code => '3046', :type => 'Date', :variety => 'Fresh / Frozen' },
|
37
|
+
'3047' => { :code => '3047', :type => 'Date', :variety => 'Medjool' },
|
38
|
+
'3048' => { :code => '3048', :type => 'Bean', :variety => 'Helda / Flat' },
|
39
|
+
'3049' => { :code => '3049', :type => 'Bean', :variety => 'Fine' },
|
40
|
+
'3050' => { :code => '3050', :type => 'Cabbage', :variety => 'Dutch White / Winter White' },
|
41
|
+
'3051' => { :code => '3051', :type => 'Cabbage', :variety => 'Spring Cabbage / Spring Greens' },
|
42
|
+
'3052' => { :code => '3052', :type => 'Garlic', :variety => 'String' },
|
43
|
+
'3053' => { :code => '3053', :type => 'Parsnip', :variety => 'Baby' },
|
44
|
+
'3059' => { :code => '3059', :type => 'Squash', :variety => 'Crown Prince' },
|
45
|
+
'3060' => { :code => '3060', :type => 'Squash', :variety => 'Vegetable Marrow' },
|
46
|
+
'3061' => { :code => '3061', :type => 'Tomato', :variety => 'Beef / Beefsteak' },
|
47
|
+
'3062' => { :code => '3062', :type => 'Herbs', :variety => 'Bay Leaves' },
|
48
|
+
'3063' => { :code => '3063', :type => 'Herbs', :variety => 'Fennel Leaves' },
|
49
|
+
'3064' => { :code => '3064', :type => 'Herbs', :variety => 'Aloe Vera Leaves' },
|
50
|
+
'3072' => { :code => '3072', :type => 'Apple', :variety => 'Lady' },
|
51
|
+
'3073' => { :code => '3073', :type => 'Apple', :variety => 'Macoun' },
|
52
|
+
'3074' => { :code => '3074', :type => 'Apple', :variety => 'Greening / Rhode Island' },
|
53
|
+
'3075' => { :code => '3075', :type => 'Apple', :variety => 'Baldwin' },
|
54
|
+
'3076' => { :code => '3076', :type => 'Apple', :variety => 'Melrose' },
|
55
|
+
'3077' => { :code => '3077', :type => 'Apple', :variety => 'Northern Spy' },
|
56
|
+
'3078' => { :code => '3078', :type => 'Apple', :variety => 'Liberty' },
|
57
|
+
'3080' => { :code => '3080', :type => 'Avocado', :variety => 'Pinkerton' },
|
58
|
+
'3081' => { :code => '3081', :type => 'Berries', :variety => 'Saskatoons' },
|
59
|
+
'3082' => { :code => '3082', :type => 'Broccoli', :variety => 'Crowns' },
|
60
|
+
'3083' => { :code => '3083', :type => 'Brussels Sprout', :variety => 'Stalk' },
|
61
|
+
'3084' => { :code => '3084', :type => 'Herbs', :variety => 'Chervil' },
|
62
|
+
'3088' => { :code => '3088', :type => 'Currant', :variety => 'Red' },
|
63
|
+
'3089' => { :code => '3089', :type => 'Eggplant', :variety => 'Chinese' },
|
64
|
+
'3090' => { :code => '3090', :type => 'Eggplant', :variety => 'Thai' },
|
65
|
+
'3091' => { :code => '3091', :type => 'Gobo Root', :variety => 'Gobo Root / Burdock Root' },
|
66
|
+
'3092' => { :code => '3092', :type => 'Grapefruit', :variety => 'Blanco / Sweetie' },
|
67
|
+
'3099' => { :code => '3099', :type => 'Lotus Root', :variety => '' },
|
68
|
+
'3100' => { :code => '3100', :type => 'Melon', :variety => 'Gold Honeydew' },
|
69
|
+
'3101' => { :code => '3101', :type => 'Melon', :variety => 'Piel de Sapo' },
|
70
|
+
'3102' => { :code => '3102', :type => 'Mushroom', :variety => 'Morel' },
|
71
|
+
'3103' => { :code => '3103', :type => 'Mushroom', :variety => 'Enoki' },
|
72
|
+
'3105' => { :code => '3105', :type => 'Nuts', :variety => 'Cashews' },
|
73
|
+
'3106' => { :code => '3106', :type => 'Nuts', :variety => 'Macadamia' },
|
74
|
+
'3109' => { :code => '3109', :type => 'Orange', :variety => 'Seville / Marmalade type' },
|
75
|
+
'3111' => { :code => '3111', :type => 'Papaya / Pawpaw', :variety => 'Red-Fleshed / Solo Sunrise' },
|
76
|
+
'3112' => { :code => '3112', :type => 'Papaya / Pawpaw', :variety => 'Meridol' },
|
77
|
+
'3113' => { :code => '3113', :type => 'Peach', :variety => 'Donut / Flat Chinese' },
|
78
|
+
'3118' => { :code => '3118', :type => 'Pear', :variety => 'Starkrimson' },
|
79
|
+
'3125' => { :code => '3125', :type => 'Pepper', :variety => 'Habanero' },
|
80
|
+
'3126' => { :code => '3126', :type => 'Plumcot', :variety => '' },
|
81
|
+
'3130' => { :code => '3130', :type => 'Pumpkin', :variety => 'Jumbo' },
|
82
|
+
'3131' => { :code => '3131', :type => 'Pumpkin', :variety => 'Decorative / Painted' },
|
83
|
+
'3132' => { :code => '3132', :type => 'Pumpkin', :variety => 'White' },
|
84
|
+
'3134' => { :code => '3134', :type => 'Pumpkin', :variety => 'Pie Pumpkin' },
|
85
|
+
'3135' => { :code => '3135', :type => 'Pumpkin', :variety => 'Ornamental' },
|
86
|
+
'3136' => { :code => '3136', :type => 'Sapote', :variety => 'Sapodillo / Nispero' },
|
87
|
+
'3139' => { :code => '3139', :type => 'Herbs', :variety => 'Savory' },
|
88
|
+
'3140' => { :code => '3140', :type => 'Squash', :variety => 'Cucuzza' },
|
89
|
+
'3141' => { :code => '3141', :type => 'Squash', :variety => 'Opo' },
|
90
|
+
'3142' => { :code => '3142', :type => 'Squash', :variety => 'Carnival' },
|
91
|
+
'3144' => { :code => '3144', :type => 'Tangerine / Mandarin', :variety => 'Fall Glo' },
|
92
|
+
'3152' => { :code => '3152', :type => 'Grapefruit', :variety => 'Melogold' },
|
93
|
+
'3160' => { :code => '3160', :type => 'Choy', :variety => 'Gai Lan / Chinese Broccoli' },
|
94
|
+
'3162' => { :code => '3162', :type => 'Choy', :variety => 'On Choy / Water Spinach' },
|
95
|
+
'3163' => { :code => '3163', :type => 'Choy', :variety => 'Bok Choy / Pak Choy / Shanghai' },
|
96
|
+
'3164' => { :code => '3164', :type => 'Choy', :variety => 'Yu Choy' },
|
97
|
+
'3165' => { :code => '3165', :type => 'Radicchio', :variety => 'Treviso' },
|
98
|
+
'3166' => { :code => '3166', :type => 'Cabbage', :variety => 'Tuscan' },
|
99
|
+
'3167' => { :code => '3167', :type => 'Endive / Chicory', :variety => 'Frisee' },
|
100
|
+
'3168' => { :code => '3168', :type => 'Radicchio', :variety => 'Castlelfranco' },
|
101
|
+
'3169' => { :code => '3169', :type => 'Lettuce', :variety => 'Catalogna' },
|
102
|
+
'3271' => { :code => '3271', :type => 'Apple', :variety => 'Virginia Gold' },
|
103
|
+
'3272' => { :code => '3272', :type => 'Apple', :variety => 'Sommerfeld' },
|
104
|
+
'3273' => { :code => '3273', :type => 'Beet', :variety => 'Golden' },
|
105
|
+
'3277' => { :code => '3277', :type => 'Broccoli', :variety => 'Baby' },
|
106
|
+
'3278' => { :code => '3278', :type => 'Plum', :variety => 'InterSpecific' },
|
107
|
+
'3279' => { :code => '3279', :type => 'Kiwi Fruit', :variety => 'Golden' },
|
108
|
+
'3283' => { :code => '3283', :type => 'Apple', :variety => 'Honeycrisp' },
|
109
|
+
'3286' => { :code => '3286', :type => 'Onion', :variety => 'Sweet, red, Italian, [flat]' },
|
110
|
+
'3287' => { :code => '3287', :type => 'Banana', :variety => 'Hawaiian Plantain' },
|
111
|
+
'3289' => { :code => '3289', :type => 'Melon', :variety => 'Sprite' },
|
112
|
+
'3291' => { :code => '3291', :type => 'Apple', :variety => 'Boskoop / Belle de Boskoop, small' },
|
113
|
+
'3292' => { :code => '3292', :type => 'Apple', :variety => 'Boskoop / Belle de Boskoop, large' },
|
114
|
+
'3297' => { :code => '3297', :type => 'Apple', :variety => 'Scired / Pacific Queen' },
|
115
|
+
'3303' => { :code => '3303', :type => 'Papaya / Pawpaw', :variety => 'Babaco' },
|
116
|
+
'3304' => { :code => '3304', :type => 'Berries', :variety => 'Loganberries' },
|
117
|
+
'3305' => { :code => '3305', :type => 'Currant', :variety => 'Black' },
|
118
|
+
'3309' => { :code => '3309', :type => 'Orange', :variety => 'Lima' },
|
119
|
+
'3310' => { :code => '3310', :type => 'Orange', :variety => 'Pera' },
|
120
|
+
'3311' => { :code => '3311', :type => 'Passion Fruit', :variety => 'Curuba / Banana' },
|
121
|
+
'3312' => { :code => '3312', :type => 'Passion Fruit', :variety => 'Granadilla Yellow / Maracuya' },
|
122
|
+
'3320' => { :code => '3320', :type => 'Broccoli', :variety => 'Romanesco / Broccoflower / Caulibroc' },
|
123
|
+
'3325' => { :code => '3325', :type => 'Lettuce', :variety => 'Lollo Bionda / Coral Green' },
|
124
|
+
'3326' => { :code => '3326', :type => 'Lettuce', :variety => 'Lollo Rossa / Coral Red' },
|
125
|
+
'3327' => { :code => '3327', :type => 'Lettuce', :variety => 'Mignonette, compact red-tinged butterhead varieties' },
|
126
|
+
'3328' => { :code => '3328', :type => 'Lettuce', :variety => 'Mixed, small-leaf, salad [eg, Sucrine / Mesclun / Rocket / Arugula]' },
|
127
|
+
'3332' => { :code => '3332', :type => 'Spinach', :variety => 'Baby' },
|
128
|
+
'3336' => { :code => '3336', :type => 'Tomato', :variety => 'Cocktail / Intermediate Red / Plum / Italian / Saladette / Roma, on the vine [Truss]' },
|
129
|
+
'3337' => { :code => '3337', :type => 'Fig', :variety => 'dried' },
|
130
|
+
'3338' => { :code => '3338', :type => 'Herbs', :variety => 'Anise' },
|
131
|
+
'3339' => { :code => '3339', :type => 'Apple', :variety => 'Belchard / Chantecler' },
|
132
|
+
'3340' => { :code => '3340', :type => 'Apple', :variety => 'Bertanne / Golden Russet' },
|
133
|
+
'3341' => { :code => '3341', :type => 'Apple', :variety => 'Charles Ross' },
|
134
|
+
'3342' => { :code => '3342', :type => 'Apple', :variety => 'Delblush / Tentation' },
|
135
|
+
'3343' => { :code => '3343', :type => 'Apple', :variety => 'Dessert' },
|
136
|
+
'3346' => { :code => '3346', :type => 'Apple', :variety => 'Holstein' },
|
137
|
+
'3347' => { :code => '3347', :type => 'Apple', :variety => 'Laxtons Fortune' },
|
138
|
+
'3348' => { :code => '3348', :type => 'Apple', :variety => 'Lord Lambourne' },
|
139
|
+
'3349' => { :code => '3349', :type => 'Apple', :variety => 'Michaelmas Red' },
|
140
|
+
'3352' => { :code => '3352', :type => 'Apple', :variety => 'Reinettes and Heritage varieties' },
|
141
|
+
'3353' => { :code => '3353', :type => 'Apple', :variety => 'St. Edmunds Pippin' },
|
142
|
+
'3359' => { :code => '3359', :type => 'Grape', :variety => 'Chasselas' },
|
143
|
+
'3360' => { :code => '3360', :type => 'Grape', :variety => 'Muscat de Hambourg' },
|
144
|
+
'3363' => { :code => '3363', :type => 'Mango', :variety => 'Bowen & Kensington Pride, extra large' },
|
145
|
+
'3364' => { :code => '3364', :type => 'Mango', :variety => 'R2E2,ArtwoEetwo, extra large' },
|
146
|
+
'3366' => { :code => '3366', :type => 'Madro?a', :variety => '' },
|
147
|
+
'3368' => { :code => '3368', :type => 'Melon', :variety => 'Ogen' },
|
148
|
+
'3369' => { :code => '3369', :type => 'Nectarine', :variety => 'Nectavigne, red flesh' },
|
149
|
+
'3370' => { :code => '3370', :type => 'Orange', :variety => 'Maltaise' },
|
150
|
+
'3371' => { :code => '3371', :type => 'Orange', :variety => 'Salustiana' },
|
151
|
+
'3372' => { :code => '3372', :type => 'Orange', :variety => 'Navelate / other late Navel varieties' },
|
152
|
+
'3373' => { :code => '3373', :type => 'Orange', :variety => 'Navelina, including Newhall' },
|
153
|
+
'3375' => { :code => '3375', :type => 'Peach', :variety => 'Peche de Vigne / Sanguine, red flesh' },
|
154
|
+
'3376' => { :code => '3376', :type => 'Pear', :variety => 'Alexander Lucas' },
|
155
|
+
'3377' => { :code => '3377', :type => 'Pear', :variety => 'Louise Bonne' },
|
156
|
+
'3378' => { :code => '3378', :type => 'Pear', :variety => 'Santa Maria' },
|
157
|
+
'3379' => { :code => '3379', :type => 'Pineapple', :variety => 'Mini' },
|
158
|
+
'3380' => { :code => '3380', :type => 'Pineapple', :variety => 'Perola' },
|
159
|
+
'3381' => { :code => '3381', :type => 'Soursop', :variety => '' },
|
160
|
+
'3382' => { :code => '3382', :type => 'Apple', :variety => 'Sugar Apple' },
|
161
|
+
'3390' => { :code => '3390', :type => 'Arracach', :variety => '' },
|
162
|
+
'3391' => { :code => '3391', :type => 'Artichoke', :variety => 'Rouge Salambo, red' },
|
163
|
+
'3397' => { :code => '3397', :type => 'Cabbage', :variety => 'Summer, pointed type' },
|
164
|
+
'3398' => { :code => '3398', :type => 'Pea', :variety => 'Chick Pea / Garbanzo' },
|
165
|
+
'3401' => { :code => '3401', :type => 'Garlic', :variety => 'One-clove types' },
|
166
|
+
'3404' => { :code => '3404', :type => 'Mushroom', :variety => 'Cep' },
|
167
|
+
'3405' => { :code => '3405', :type => 'Mushroom', :variety => 'Fairy Ring Champignon' },
|
168
|
+
'3406' => { :code => '3406', :type => 'Mushroom', :variety => 'Grey Tricholoma' },
|
169
|
+
'3407' => { :code => '3407', :type => 'Mushroom', :variety => 'Grisette' },
|
170
|
+
'3408' => { :code => '3408', :type => 'Mushroom', :variety => 'Horn of Plenty / Black Trumpet' },
|
171
|
+
'3409' => { :code => '3409', :type => 'Mushroom', :variety => 'Pioppino' },
|
172
|
+
'3410' => { :code => '3410', :type => 'Mushroom', :variety => 'Saffron Milk-Cap' },
|
173
|
+
'3411' => { :code => '3411', :type => 'Mushroom', :variety => 'Sheep Polypore' },
|
174
|
+
'3413' => { :code => '3413', :type => 'Pepper', :variety => 'Tabasco' },
|
175
|
+
'3419' => { :code => '3419', :type => 'Herbs', :variety => 'Borage' },
|
176
|
+
'3421' => { :code => '3421', :type => 'Melon', :variety => 'Mini, seedless [3-7 pounds]' },
|
177
|
+
'3422' => { :code => '3422', :type => 'Apricot', :variety => 'InterSpecific' },
|
178
|
+
'3423' => { :code => '3423', :type => 'Tomato', :variety => 'Heirloom' },
|
179
|
+
'3424' => { :code => '3424', :type => 'Carrot', :variety => 'Purple / Red / Beta Sweet' },
|
180
|
+
'4033' => { :code => '4033', :type => 'LEMON', :variety => 'Lemons' },
|
181
|
+
'4034' => { :code => '4034', :type => 'MELON', :variety => 'Honeydew' },
|
182
|
+
'4035' => { :code => '4035', :type => 'CITRUS', :variety => 'Nectarines' },
|
183
|
+
'4036' => { :code => '4036', :type => 'NECTARINE', :variety => 'California Nectarines' },
|
184
|
+
'4040' => { :code => '4040', :type => 'PLUM', :variety => 'Black Plums' },
|
185
|
+
'4041' => { :code => '4041', :type => 'PLUM', :variety => 'Plums' },
|
186
|
+
'4042' => { :code => '4042', :type => 'PLUM', :variety => 'Large Plums' },
|
187
|
+
'4045' => { :code => '4045', :type => 'BERRIES', :variety => 'Cherries' },
|
188
|
+
'4048' => { :code => '4048', :type => 'MELON', :variety => 'Lime' },
|
189
|
+
'4050' => { :code => '4050', :type => 'MELON', :variety => 'Cantelope' },
|
190
|
+
'4051' => { :code => '4051', :type => 'MANGO', :variety => '' },
|
191
|
+
'4053' => { :code => '4053', :type => 'LEMON', :variety => 'lemons' },
|
192
|
+
'4054' => { :code => '4054', :type => 'Berries', :variety => 'Raspberries, red' },
|
193
|
+
'4055' => { :code => '4055', :type => 'Tangerine / Mandarin', :variety => '' },
|
194
|
+
'4060' => { :code => '4060', :type => 'BROCOLLI', :variety => 'Broccoli' },
|
195
|
+
'4061' => { :code => '4061', :type => 'LETTUCE', :variety => 'Iceberg lettuce' },
|
196
|
+
'4062' => { :code => '4062', :type => 'CUCUMBER', :variety => 'Cucumbers' },
|
197
|
+
'4064' => { :code => '4064', :type => 'TOMATO', :variety => 'Tomatoes' },
|
198
|
+
'4065' => { :code => '4065', :type => 'PEPPER', :variety => 'Green Peppers' },
|
199
|
+
'4066' => { :code => '4066', :type => 'BEAN', :variety => 'Green Beans' },
|
200
|
+
'4067' => { :code => '4067', :type => 'SQUASH', :variety => 'green squash' },
|
201
|
+
'4068' => { :code => '4068', :type => 'ONION', :variety => 'Green Scallions (bunch)' },
|
202
|
+
'4069' => { :code => '4069', :type => 'CABBAGE', :variety => 'Green Cabbage' },
|
203
|
+
'4070' => { :code => '4070', :type => 'CELERY', :variety => '' },
|
204
|
+
'4071' => { :code => '4071', :type => 'POTATO', :variety => 'Red Potatoes' },
|
205
|
+
'4072' => { :code => '4072', :type => 'POTATO', :variety => 'Russet Potatoes' },
|
206
|
+
'4075' => { :code => '4075', :type => 'LETTUCE', :variety => 'Red Leaf Lettuce' },
|
207
|
+
'4076' => { :code => '4076', :type => 'LETTUCE', :variety => 'Green Leaf Lettuce' },
|
208
|
+
'4078' => { :code => '4078', :type => 'CORN', :variety => '' },
|
209
|
+
'4079' => { :code => '4079', :type => 'Cauliflower', :variety => '' },
|
210
|
+
'4080' => { :code => '4080', :type => 'ASPARAGUS', :variety => '' },
|
211
|
+
'4081' => { :code => '4081', :type => 'EGGPLANT', :variety => '' },
|
212
|
+
'4082' => { :code => '4082', :type => 'ONION', :variety => 'Red Onions' },
|
213
|
+
'4084' => { :code => '4084', :type => 'Artichoke', :variety => 'Artichokes' },
|
214
|
+
'4086' => { :code => '4086', :type => 'Squash', :variety => 'Yellow Zucchini / Gold Bar / Yellow Courgette' },
|
215
|
+
'4087' => { :code => '4087', :type => 'TOMATO', :variety => 'Plum Tomatoes' },
|
216
|
+
'4088' => { :code => '4088', :type => 'PEPPER', :variety => 'Red peppers' },
|
217
|
+
'4089' => { :code => '4089', :type => 'RADISH', :variety => 'Radishes (bunch)' },
|
218
|
+
'4090' => { :code => '4090', :type => 'SPINICH', :variety => 'Spinach Bunch' },
|
219
|
+
'4092' => { :code => '4092', :type => 'Pea', :variety => 'Chinese Snow Pea / Pea Pod / Mange Tout' },
|
220
|
+
'4094' => { :code => '4094', :type => 'Carrot', :variety => 'Bunch' },
|
221
|
+
'4095' => { :code => '4095', :type => 'Turnip / Rutabaga / Swede', :variety => 'Yellow' },
|
222
|
+
'4098' => { :code => '4098', :type => 'Apple', :variety => 'Akane, small' },
|
223
|
+
'4099' => { :code => '4099', :type => 'Apple', :variety => 'Akane, large' },
|
224
|
+
'4101' => { :code => '4101', :type => 'Apple', :variety => 'Braeburn, small' },
|
225
|
+
'4103' => { :code => '4103', :type => 'APPLE', :variety => 'Braeburn Apples' },
|
226
|
+
'4105' => { :code => '4105', :type => 'Apple', :variety => 'Cox Orange Pippin' },
|
227
|
+
'4107' => { :code => '4107', :type => 'Apple', :variety => 'Crab' },
|
228
|
+
'4120' => { :code => '4120', :type => 'APPLE', :variety => 'Idared Apples/Fiesta' },
|
229
|
+
'4124' => { :code => '4124', :type => 'APPLE', :variety => 'Empire Apples' },
|
230
|
+
'4133' => { :code => '4133', :type => 'APPLE', :variety => 'Small Gala Apple' },
|
231
|
+
'4152' => { :code => '4152', :type => 'APPLE', :variety => 'Macintosh Apples' },
|
232
|
+
'4159' => { :code => '4159', :type => 'Onion', :variety => 'Vidalia' },
|
233
|
+
'4161' => { :code => '4161', :type => 'Onion', :variety => 'Texas Sweet' },
|
234
|
+
'4163' => { :code => '4163', :type => 'Onion', :variety => 'Walla Walla' },
|
235
|
+
'4164' => { :code => '4164', :type => 'Onion', :variety => 'Maui' },
|
236
|
+
'4165' => { :code => '4165', :type => 'Onion', :variety => 'California Sweet' },
|
237
|
+
'4166' => { :code => '4166', :type => 'Onion', :variety => 'Other Sweet' },
|
238
|
+
'4176' => { :code => '4176', :type => 'Apple', :variety => 'Southern Snap' },
|
239
|
+
'4182' => { :code => '4182', :type => 'Apple', :variety => 'Sturmer Pippin' },
|
240
|
+
'4218' => { :code => '4218', :type => 'APRICOT', :variety => 'Apricots' },
|
241
|
+
'4220' => { :code => '4220', :type => 'Atemoya', :variety => '' },
|
242
|
+
'4225' => { :code => '4225', :type => 'AVACADO', :variety => '' },
|
243
|
+
'4226' => { :code => '4226', :type => 'Avocado', :variety => 'Cocktail / Seedless' },
|
244
|
+
'4229' => { :code => '4229', :type => 'Banana', :variety => 'Burro' },
|
245
|
+
'4230' => { :code => '4230', :type => 'Banana', :variety => 'Dominique' },
|
246
|
+
'4231' => { :code => '4231', :type => 'Banana', :variety => 'Green' },
|
247
|
+
'4232' => { :code => '4232', :type => 'Banana', :variety => 'Banana Leaves' },
|
248
|
+
'4233' => { :code => '4233', :type => 'Banana', :variety => 'Manzano / Apple Banana' },
|
249
|
+
'4234' => { :code => '4234', :type => 'Banana', :variety => 'Nino' },
|
250
|
+
'4235' => { :code => '4235', :type => 'BANANA', :variety => 'Plantains/Macho' },
|
251
|
+
'4236' => { :code => '4236', :type => 'Banana', :variety => 'Red' },
|
252
|
+
'4239' => { :code => '4239', :type => 'Berries', :variety => 'Blackberries' },
|
253
|
+
'4240' => { :code => '4240', :type => 'Berries', :variety => 'Blueberries' },
|
254
|
+
'4241' => { :code => '4241', :type => 'Berries', :variety => 'Boysenberries' },
|
255
|
+
'4242' => { :code => '4242', :type => 'Berries', :variety => 'Cranberries' },
|
256
|
+
'4243' => { :code => '4243', :type => 'Berries', :variety => 'Gooseberries' },
|
257
|
+
'4244' => { :code => '4244', :type => 'Berries', :variety => 'Black Raspberries' },
|
258
|
+
'4245' => { :code => '4245', :type => 'Berries', :variety => 'Golden Raspberries' },
|
259
|
+
'4248' => { :code => '4248', :type => 'Berries', :variety => 'Quart' },
|
260
|
+
'4251' => { :code => '4251', :type => 'Berries', :variety => 'Long-stemmed' },
|
261
|
+
'4254' => { :code => '4254', :type => 'Breadfruit', :variety => '' },
|
262
|
+
'4255' => { :code => '4255', :type => 'Cactus', :variety => 'Cactus Pear / Prickly Pear' },
|
263
|
+
'4256' => { :code => '4256', :type => 'Carambola / Starfruit', :variety => '' },
|
264
|
+
'4257' => { :code => '4257', :type => 'Cherimoya', :variety => '' },
|
265
|
+
'4258' => { :code => '4258', :type => 'Cherry', :variety => 'Golden / Ranier / White' },
|
266
|
+
'4260' => { :code => '4260', :type => 'Coconut', :variety => 'In Husk / Waternut' },
|
267
|
+
'4261' => { :code => '4261', :type => 'Coconut', :variety => 'Husked' },
|
268
|
+
'4265' => { :code => '4265', :type => 'Feijoa', :variety => '' },
|
269
|
+
'4266' => { :code => '4266', :type => 'Fig', :variety => 'Black' },
|
270
|
+
'4267' => { :code => '4267', :type => 'Fig', :variety => 'Brown' },
|
271
|
+
'4268' => { :code => '4268', :type => 'Fig', :variety => 'White / Green' },
|
272
|
+
'4271' => { :code => '4271', :type => 'Grape', :variety => 'Champagne' },
|
273
|
+
'4272' => { :code => '4272', :type => 'Grape', :variety => 'Concord' },
|
274
|
+
'4299' => { :code => '4299', :type => 'Guava', :variety => '' },
|
275
|
+
'4300' => { :code => '4300', :type => 'Homli Fruit', :variety => '' },
|
276
|
+
'4302' => { :code => '4302', :type => 'Melon', :variety => 'Horned Melon / Kiwano' },
|
277
|
+
'4303' => { :code => '4303', :type => 'Kumquat', :variety => '' },
|
278
|
+
'4305' => { :code => '4305', :type => 'Lime', :variety => 'Key, including Mexican / West Indian' },
|
279
|
+
'4307' => { :code => '4307', :type => 'Longan', :variety => '' },
|
280
|
+
'4308' => { :code => '4308', :type => 'Loquat', :variety => '' },
|
281
|
+
'4309' => { :code => '4309', :type => 'Lychee', :variety => '' },
|
282
|
+
'4310' => { :code => '4310', :type => 'Mamey', :variety => '' },
|
283
|
+
'4311' => { :code => '4311', :type => 'Mango', :variety => 'Green' },
|
284
|
+
'4312' => { :code => '4312', :type => 'Mango', :variety => 'Yellow' },
|
285
|
+
'4317' => { :code => '4317', :type => 'Melon', :variety => 'Canary / Yellow Honeydew' },
|
286
|
+
'4320' => { :code => '4320', :type => 'Melon', :variety => 'Casaba' },
|
287
|
+
'4321' => { :code => '4321', :type => 'Melon', :variety => 'Cinnabar' },
|
288
|
+
'4322' => { :code => '4322', :type => 'Melon', :variety => 'Crenshaw' },
|
289
|
+
'4324' => { :code => '4324', :type => 'Melon', :variety => 'French Afternoon' },
|
290
|
+
'4325' => { :code => '4325', :type => 'Melon', :variety => 'French Breakfast' },
|
291
|
+
'4326' => { :code => '4326', :type => 'Melon', :variety => 'Galia' },
|
292
|
+
'4327' => { :code => '4327', :type => 'Melon', :variety => 'Orange Flesh / Cantaline' },
|
293
|
+
'4328' => { :code => '4328', :type => 'Limequat', :variety => '' },
|
294
|
+
'4329' => { :code => '4329', :type => 'MELON', :variety => 'Honeydew Melon' },
|
295
|
+
'4330' => { :code => '4330', :type => 'Melon', :variety => 'Mayan' },
|
296
|
+
'4331' => { :code => '4331', :type => 'Melon', :variety => 'Mickey Lee / Sugarbaby' },
|
297
|
+
'4332' => { :code => '4332', :type => 'Melon', :variety => 'Muskmelon' },
|
298
|
+
'4333' => { :code => '4333', :type => 'Melon', :variety => 'Pepino' },
|
299
|
+
'4334' => { :code => '4334', :type => 'Melon', :variety => 'Persian' },
|
300
|
+
'4335' => { :code => '4335', :type => 'Melon', :variety => 'Prince' },
|
301
|
+
'4336' => { :code => '4336', :type => 'Melon', :variety => 'Santa Claus' },
|
302
|
+
'4337' => { :code => '4337', :type => 'Melon', :variety => 'Saticoy' },
|
303
|
+
'4338' => { :code => '4338', :type => 'Melon', :variety => 'Sharlin' },
|
304
|
+
'4339' => { :code => '4339', :type => 'Melon', :variety => 'Spanish / Tendral' },
|
305
|
+
'4381' => { :code => '4381', :type => 'Orange', :variety => 'Blood' },
|
306
|
+
'4382' => { :code => '4382', :type => 'Orange', :variety => 'Juice' },
|
307
|
+
'4383' => { :code => '4383', :type => 'Orange', :variety => 'Tangelo Minneola' },
|
308
|
+
'4395' => { :code => '4395', :type => 'Papaya / Pawpaw', :variety => 'Cooking / Mexican' },
|
309
|
+
'4397' => { :code => '4397', :type => 'Passion Fruit', :variety => 'Purple' },
|
310
|
+
'4399' => { :code => '4399', :type => 'Peach', :variety => 'Indian' },
|
311
|
+
'4401' => { :code => '4401', :type => 'PEACH', :variety => 'White Peaches' },
|
312
|
+
'4402' => { :code => '4402', :type => 'PEACH', :variety => 'Peaches' },
|
313
|
+
'4409' => { :code => '4409', :type => 'PEAR', :variety => 'Bartlett Pears' },
|
314
|
+
'4410' => { :code => '4410', :type => 'Pear', :variety => 'Bartlett Red / Red Sensation' },
|
315
|
+
'4412' => { :code => '4412', :type => 'PEAR', :variety => 'Bosc Pears' },
|
316
|
+
'4415' => { :code => '4415', :type => 'Pear', :variety => 'Red' },
|
317
|
+
'4418' => { :code => '4418', :type => 'Pear', :variety => 'Forelle / Corella' },
|
318
|
+
'4419' => { :code => '4419', :type => 'Pear', :variety => 'French' },
|
319
|
+
'4420' => { :code => '4420', :type => 'Pear', :variety => 'King Royal' },
|
320
|
+
'4422' => { :code => '4422', :type => 'Pear', :variety => 'Seckel' },
|
321
|
+
'4423' => { :code => '4423', :type => 'Pear', :variety => 'Tree Ripened' },
|
322
|
+
'4424' => { :code => '4424', :type => 'Pear', :variety => 'Winter Nelis / Honey' },
|
323
|
+
'4427' => { :code => '4427', :type => 'Persimmon', :variety => 'Regular / American Persimmon' },
|
324
|
+
'4428' => { :code => '4428', :type => 'Persimmon', :variety => 'Japanese / Sharonfruit [Kaki]' },
|
325
|
+
'4436' => { :code => '4436', :type => 'Plum', :variety => 'Italian Prune / Sugar' },
|
326
|
+
'4447' => { :code => '4447', :type => 'Quince', :variety => '' },
|
327
|
+
'4448' => { :code => '4448', :type => 'Tamarindo', :variety => '' },
|
328
|
+
'4449' => { :code => '4449', :type => 'Tangerine / Mandarin', :variety => 'Sunburst' },
|
329
|
+
'4451' => { :code => '4451', :type => 'Tangerine / Mandarin', :variety => 'Dancy' },
|
330
|
+
'4452' => { :code => '4452', :type => 'Tangerine / Mandarin', :variety => 'Fairchild' },
|
331
|
+
'4454' => { :code => '4454', :type => 'Tangerine / Mandarin', :variety => 'Kinnow' },
|
332
|
+
'4455' => { :code => '4455', :type => 'Tangerine / Mandarin', :variety => 'Mandarin / Royal' },
|
333
|
+
'4470' => { :code => '4470', :type => 'Salad Bar', :variety => '' },
|
334
|
+
'4497' => { :code => '4497', :type => 'Grape', :variety => 'Sugarone / Autumn, seedless' },
|
335
|
+
'4499' => { :code => '4499', :type => 'Grape', :variety => 'Crimson / Majestic' },
|
336
|
+
'4514' => { :code => '4514', :type => 'Alfalfa Sprouts', :variety => '' },
|
337
|
+
'4515' => { :code => '4515', :type => 'ANISE', :variety => 'Fennel / Florence / Sweet Fennel / Fennel Bulb' },
|
338
|
+
'4519' => { :code => '4519', :type => 'Artichoke', :variety => 'Baby / Cocktail' },
|
339
|
+
'4524' => { :code => '4524', :type => 'Asparagus', :variety => 'Tips' },
|
340
|
+
'4527' => { :code => '4527', :type => 'Bean', :variety => 'Chinese Long / Snake' },
|
341
|
+
'4528' => { :code => '4528', :type => 'Bean', :variety => 'Fava / Broad' },
|
342
|
+
'4529' => { :code => '4529', :type => 'Bean', :variety => 'Lima' },
|
343
|
+
'4530' => { :code => '4530', :type => 'Bean', :variety => 'Pole / Runner / Stick' },
|
344
|
+
'4531' => { :code => '4531', :type => 'Bean', :variety => 'Purple Hull' },
|
345
|
+
'4532' => { :code => '4532', :type => 'Bean', :variety => 'Shell' },
|
346
|
+
'4533' => { :code => '4533', :type => 'Bean', :variety => 'Wax / Yellow' },
|
347
|
+
'4534' => { :code => '4534', :type => 'Bean', :variety => 'Winged' },
|
348
|
+
'4536' => { :code => '4536', :type => 'Bean', :variety => 'Bean Sprouts / Mung Bean Sprouts' },
|
349
|
+
'4537' => { :code => '4537', :type => 'Beet', :variety => 'Baby Golden' },
|
350
|
+
'4538' => { :code => '4538', :type => 'Beet', :variety => 'Baby Red' },
|
351
|
+
'4539' => { :code => '4539', :type => 'Beet', :variety => 'Bunch' },
|
352
|
+
'4540' => { :code => '4540', :type => 'Beet', :variety => 'Loose' },
|
353
|
+
'4542' => { :code => '4542', :type => 'Beet', :variety => 'Beet Greens' },
|
354
|
+
'4543' => { :code => '4543', :type => 'ENDIVE', :variety => 'Belgium endive' },
|
355
|
+
'4545' => { :code => '4545', :type => 'CHOY', :variety => 'Bok Choy' },
|
356
|
+
'4546' => { :code => '4546', :type => 'Potato', :variety => 'Boniato / Sweet Potato' },
|
357
|
+
'4547' => { :code => '4547', :type => 'Broccoli', :variety => 'Broccoli Rabe / Italian Rapini / Chinese Broccoli / Gai Lan' },
|
358
|
+
'4548' => { :code => '4548', :type => 'BROCOLLI', :variety => 'Broccoli Crowns' },
|
359
|
+
'4550' => { :code => '4550', :type => 'Brussels Sprout', :variety => '' },
|
360
|
+
'4552' => { :code => '4552', :type => 'Cabbage', :variety => 'Chinese / Napa / Wong Bok' },
|
361
|
+
'4553' => { :code => '4553', :type => 'Pear', :variety => 'Taylors Gold' },
|
362
|
+
'4554' => { :code => '4554', :type => 'Cabbage', :variety => 'Red' },
|
363
|
+
'4558' => { :code => '4558', :type => 'Cactus', :variety => 'Cactus Leaves / Nopales / Cactus Pads' },
|
364
|
+
'4559' => { :code => '4559', :type => 'Cardoon / Cardoni', :variety => '' },
|
365
|
+
'4560' => { :code => '4560', :type => 'Carrot', :variety => 'Baby' },
|
366
|
+
'4561' => { :code => '4561', :type => 'Carrot', :variety => 'French' },
|
367
|
+
'4562' => { :code => '4562', :type => 'Carrot', :variety => 'Loose' },
|
368
|
+
'4563' => { :code => '4563', :type => 'Carrot', :variety => 'Carrot Sticks' },
|
369
|
+
'4566' => { :code => '4566', :type => 'Cauliflower', :variety => 'Florettes' },
|
370
|
+
'4567' => { :code => '4567', :type => 'Cauliflower', :variety => 'Green' },
|
371
|
+
'4568' => { :code => '4568', :type => 'Cauliflower', :variety => 'Purple' },
|
372
|
+
'4573' => { :code => '4573', :type => 'Cauliflower', :variety => 'Baby' },
|
373
|
+
'4575' => { :code => '4575', :type => 'Celery', :variety => 'Hearts' },
|
374
|
+
'4576' => { :code => '4576', :type => 'CELERY', :variety => 'Celery Sticks' },
|
375
|
+
'4592' => { :code => '4592', :type => 'Cucumber', :variety => 'Armenian' },
|
376
|
+
'4593' => { :code => '4593', :type => 'Cucumber', :variety => 'English / Hot House / Long Seedless / Telegraph / Continental' },
|
377
|
+
'4594' => { :code => '4594', :type => 'Cucumber', :variety => 'Japanese / White' },
|
378
|
+
'4595' => { :code => '4595', :type => 'Cucumber', :variety => 'Lemon' },
|
379
|
+
'4596' => { :code => '4596', :type => 'Cucumber', :variety => 'Pickling / Gherkin' },
|
380
|
+
'4598' => { :code => '4598', :type => 'RADISH', :variety => 'Daikon / Radish' },
|
381
|
+
'4599' => { :code => '4599', :type => 'KUMQUAT', :variety => '' },
|
382
|
+
'4601' => { :code => '4601', :type => 'Eggplant', :variety => 'Japanese' },
|
383
|
+
'4602' => { :code => '4602', :type => 'Eggplant', :variety => 'White' },
|
384
|
+
'4604' => { :code => '4604', :type => 'ENDIVE', :variety => 'Endive / Chicory' },
|
385
|
+
'4606' => { :code => '4606', :type => 'Fiddlehead Ferns', :variety => '' },
|
386
|
+
'4608' => { :code => '4608', :type => 'GARLIC', :variety => 'Loose Garlic' },
|
387
|
+
'4609' => { :code => '4609', :type => 'Garlic', :variety => 'Elephant' },
|
388
|
+
'4612' => { :code => '4612', :type => 'GINGER', :variety => 'Ginger Root' },
|
389
|
+
'4614' => { :code => '4614', :type => 'Greens', :variety => 'Collards' },
|
390
|
+
'4615' => { :code => '4615', :type => 'Greens', :variety => 'Dandelion' },
|
391
|
+
'4616' => { :code => '4616', :type => 'Greens', :variety => 'Mustard' },
|
392
|
+
'4617' => { :code => '4617', :type => 'Greens', :variety => 'Polk Greens' },
|
393
|
+
'4618' => { :code => '4618', :type => 'Greens', :variety => 'Texas Mustard' },
|
394
|
+
'4619' => { :code => '4619', :type => 'Greens', :variety => 'Turnip' },
|
395
|
+
'4625' => { :code => '4625', :type => 'Horseradish Root', :variety => '' },
|
396
|
+
'4626' => { :code => '4626', :type => 'Jicama / Yam Bean', :variety => '' },
|
397
|
+
'4631' => { :code => '4631', :type => 'Lettuce', :variety => 'Bibb / Flat / Round' },
|
398
|
+
'4632' => { :code => '4632', :type => 'LETTUCE', :variety => 'Boston Lettuce' },
|
399
|
+
'4633' => { :code => '4633', :type => 'Lettuce', :variety => 'Hydroponic' },
|
400
|
+
'4636' => { :code => '4636', :type => 'GRAPES', :variety => 'Red Globe Grapes' },
|
401
|
+
'4638' => { :code => '4638', :type => 'Grape', :variety => 'Fantasy / Marroo' },
|
402
|
+
'4639' => { :code => '4639', :type => 'Lettuce', :variety => 'Mache' },
|
403
|
+
'4640' => { :code => '4640', :type => 'LETTUCE', :variety => 'Romaine Lettuce' },
|
404
|
+
'4644' => { :code => '4644', :type => 'Malanga', :variety => '' },
|
405
|
+
'4645' => { :code => '4645', :type => 'MUSHROOM', :variety => 'Mushrooms' },
|
406
|
+
'4646' => { :code => '4646', :type => 'Mushroom', :variety => 'Black Forest' },
|
407
|
+
'4647' => { :code => '4647', :type => 'Mushroom', :variety => 'Chanterelle' },
|
408
|
+
'4648' => { :code => '4648', :type => 'Mushroom', :variety => 'Cremini / Brown / Swiss Brown' },
|
409
|
+
'4649' => { :code => '4649', :type => 'Mushroom', :variety => 'Oyster' },
|
410
|
+
'4650' => { :code => '4650', :type => 'MUSHROOM', :variety => 'Portabello Mushrooms' },
|
411
|
+
'4651' => { :code => '4651', :type => 'Mushroom', :variety => 'Shiitake' },
|
412
|
+
'4652' => { :code => '4652', :type => 'Mushroom', :variety => 'Wood Ear' },
|
413
|
+
'4655' => { :code => '4655', :type => 'Okra', :variety => 'Regular, green' },
|
414
|
+
'4656' => { :code => '4656', :type => 'Okra', :variety => 'Chinese' },
|
415
|
+
'4657' => { :code => '4657', :type => 'Okra', :variety => 'Red' },
|
416
|
+
'4658' => { :code => '4658', :type => 'Onion', :variety => 'Boiling' },
|
417
|
+
'4659' => { :code => '4659', :type => 'Onion', :variety => 'Bulb' },
|
418
|
+
'4660' => { :code => '4660', :type => 'Onion', :variety => 'Pearl' },
|
419
|
+
'4661' => { :code => '4661', :type => 'Onion', :variety => 'Pickling, white' },
|
420
|
+
'4662' => { :code => '4662', :type => 'Onion', :variety => 'Shallots' },
|
421
|
+
'4663' => { :code => '4663', :type => 'ONION', :variety => 'White Onions' },
|
422
|
+
'4664' => { :code => '4664', :type => 'TOMATO', :variety => 'Tomatoes on a Vine' },
|
423
|
+
'4665' => { :code => '4665', :type => 'ONION', :variety => 'Yellow Cooking Onions' },
|
424
|
+
'4671' => { :code => '4671', :type => 'Herbs', :variety => 'Parsley Root / Hamburg Parsley' },
|
425
|
+
'4672' => { :code => '4672', :type => 'Parsnip', :variety => 'Parsnips' },
|
426
|
+
'4673' => { :code => '4673', :type => 'Pea', :variety => 'Blackeyed' },
|
427
|
+
'4674' => { :code => '4674', :type => 'Pea', :variety => 'Green' },
|
428
|
+
'4675' => { :code => '4675', :type => 'Pea', :variety => 'Sugar Snap' },
|
429
|
+
'4677' => { :code => '4677', :type => 'Pepper', :variety => 'Anaheim, green, red' },
|
430
|
+
'4678' => { :code => '4678', :type => 'Pepper', :variety => 'Banana, yellow, long' },
|
431
|
+
'4681' => { :code => '4681', :type => 'PEPPER', :variety => 'Green Peppers' },
|
432
|
+
'4687' => { :code => '4687', :type => 'PEPPER', :variety => 'Cubenelle Peppers' },
|
433
|
+
'4688' => { :code => '4688', :type => 'PEPPER', :variety => 'Red Sweet Peppers' },
|
434
|
+
'4690' => { :code => '4690', :type => 'Pepper', :variety => 'Hot / Hungarian Hot' },
|
435
|
+
'4691' => { :code => '4691', :type => 'Pepper', :variety => 'Hot Mixed' },
|
436
|
+
'4692' => { :code => '4692', :type => 'Pepper', :variety => 'Hungarian Wax' },
|
437
|
+
'4693' => { :code => '4693', :type => 'PEPPER', :variety => 'Jalapeno Peppers' },
|
438
|
+
'4695' => { :code => '4695', :type => 'Pepper', :variety => 'Japanese, red' },
|
439
|
+
'4698' => { :code => '4698', :type => 'Pepper', :variety => 'Morita Chili' },
|
440
|
+
'4699' => { :code => '4699', :type => 'Pepper', :variety => 'Negro' },
|
441
|
+
'4700' => { :code => '4700', :type => 'Pepper', :variety => 'New Mexico' },
|
442
|
+
'4704' => { :code => '4704', :type => 'Pepper', :variety => 'Pinole' },
|
443
|
+
'4705' => { :code => '4705', :type => 'Pepper', :variety => 'Poblano' },
|
444
|
+
'4706' => { :code => '4706', :type => 'Pepper', :variety => 'Red Cheese' },
|
445
|
+
'4707' => { :code => '4707', :type => 'Pepper', :variety => 'Red Finger' },
|
446
|
+
'4708' => { :code => '4708', :type => 'Pepper', :variety => 'Red Pimiento / Red, sweet, long' },
|
447
|
+
'4709' => { :code => '4709', :type => 'Pepper', :variety => 'Serrano' },
|
448
|
+
'4726' => { :code => '4726', :type => 'Potato', :variety => 'Long, white' },
|
449
|
+
'4727' => { :code => '4727', :type => 'POTATO', :variety => 'Yukon Potato' },
|
450
|
+
'4735' => { :code => '4735', :type => 'Pumpkin', :variety => 'Regular' },
|
451
|
+
'4738' => { :code => '4738', :type => 'RADICCHIO', :variety => '' },
|
452
|
+
'4739' => { :code => '4739', :type => 'Radish', :variety => 'Black' },
|
453
|
+
'4741' => { :code => '4741', :type => 'Radish', :variety => 'Italian, red' },
|
454
|
+
'4742' => { :code => '4742', :type => 'Radish', :variety => 'Red' },
|
455
|
+
'4743' => { :code => '4743', :type => 'Radish', :variety => 'White / Icicle' },
|
456
|
+
'4747' => { :code => '4747', :type => 'RUTABAGA', :variety => '' },
|
457
|
+
'4753' => { :code => '4753', :type => 'Squash', :variety => 'Australian Blue' },
|
458
|
+
'4755' => { :code => '4755', :type => 'Squash', :variety => 'Summer, green, baby' },
|
459
|
+
'4757' => { :code => '4757', :type => 'Squash', :variety => 'Banana' },
|
460
|
+
'4758' => { :code => '4758', :type => 'Squash', :variety => 'Buttercup' },
|
461
|
+
'4759' => { :code => '4759', :type => 'Squash', :variety => 'Butternut' },
|
462
|
+
'4760' => { :code => '4760', :type => 'Squash', :variety => 'Calabaza' },
|
463
|
+
'4761' => { :code => '4761', :type => 'Squash', :variety => 'Chayote / Choko' },
|
464
|
+
'4763' => { :code => '4763', :type => 'Squash', :variety => 'Delicata / Sweet Potato Squash' },
|
465
|
+
'4764' => { :code => '4764', :type => 'Squash', :variety => 'Sweet Dumpling' },
|
466
|
+
'4765' => { :code => '4765', :type => 'Squash', :variety => 'Gem' },
|
467
|
+
'4766' => { :code => '4766', :type => 'Squash', :variety => 'Golden Delicious' },
|
468
|
+
'4767' => { :code => '4767', :type => 'Squash', :variety => 'Golden Nugget' },
|
469
|
+
'4768' => { :code => '4768', :type => 'Squash', :variety => 'Hubbard' },
|
470
|
+
'4769' => { :code => '4769', :type => 'Squash', :variety => 'Kabocha' },
|
471
|
+
'4771' => { :code => '4771', :type => 'AVACADO', :variety => '' },
|
472
|
+
'4773' => { :code => '4773', :type => 'Squash', :variety => 'Patty Pan / Summer' },
|
473
|
+
'4774' => { :code => '4774', :type => 'Squash', :variety => 'Red Kuri' },
|
474
|
+
'4776' => { :code => '4776', :type => 'Squash', :variety => 'Spaghetti / Vegetable Spaghetti' },
|
475
|
+
'4777' => { :code => '4777', :type => 'Squash', :variety => 'Sunburst, yellow' },
|
476
|
+
'4779' => { :code => '4779', :type => 'Squash', :variety => 'Sweet Mama' },
|
477
|
+
'4780' => { :code => '4780', :type => 'Squash', :variety => 'Turban' },
|
478
|
+
'4781' => { :code => '4781', :type => 'Squash', :variety => 'White' },
|
479
|
+
'4782' => { :code => '4782', :type => 'PEPPER', :variety => 'Yellow Straigtneck Peppers' },
|
480
|
+
'4783' => { :code => '4783', :type => 'Squash', :variety => 'Bitter Melon / Bitter Gourd / Foo Qua' },
|
481
|
+
'4784' => { :code => '4784', :type => 'Squash', :variety => 'Yellow Crookneck' },
|
482
|
+
'4790' => { :code => '4790', :type => 'Sugar Cane', :variety => '' },
|
483
|
+
'4791' => { :code => '4791', :type => 'Artichoke', :variety => 'Sunchokes / Jerusalem Artichokes' },
|
484
|
+
'4792' => { :code => '4792', :type => 'Tamarillo', :variety => 'Golden' },
|
485
|
+
'4793' => { :code => '4793', :type => 'Tamarillo', :variety => 'Red' },
|
486
|
+
'4799' => { :code => '4799', :type => 'TOMATO', :variety => '' },
|
487
|
+
'4800' => { :code => '4800', :type => 'Tomato', :variety => 'Native / Home Grown' },
|
488
|
+
'4801' => { :code => '4801', :type => 'Tomato', :variety => 'Tomatillos / Husk Tomatoes' },
|
489
|
+
'4802' => { :code => '4802', :type => 'Tomato', :variety => 'dried' },
|
490
|
+
'4809' => { :code => '4809', :type => 'Turnip / Rutabaga / Swede', :variety => 'Baby' },
|
491
|
+
'4810' => { :code => '4810', :type => 'Turnip / Rutabaga / Swede', :variety => 'Bunch / Banded' },
|
492
|
+
'4811' => { :code => '4811', :type => 'Turnip / Rutabaga / Swede', :variety => 'Purple Top' },
|
493
|
+
'4812' => { :code => '4812', :type => 'Turnip / Rutabaga / Swede', :variety => 'White' },
|
494
|
+
'4814' => { :code => '4814', :type => 'Waterchestnuts', :variety => '' },
|
495
|
+
'4815' => { :code => '4815', :type => 'Herbs', :variety => 'Watercress' },
|
496
|
+
'4816' => { :code => '4816', :type => 'POTATO', :variety => 'Yams' },
|
497
|
+
'4819' => { :code => '4819', :type => 'Yucca Root', :variety => '' },
|
498
|
+
'4860' => { :code => '4860', :type => 'Apple', :variety => 'dried apple slices' },
|
499
|
+
'4861' => { :code => '4861', :type => 'Apricot', :variety => 'dried' },
|
500
|
+
'4862' => { :code => '4862', :type => 'Date', :variety => 'dried' },
|
501
|
+
'4864' => { :code => '4864', :type => 'Pineapple', :variety => 'dried' },
|
502
|
+
'4884' => { :code => '4884', :type => 'Greens', :variety => 'Arugula / Rocket' },
|
503
|
+
'4888' => { :code => '4888', :type => 'Herbs', :variety => 'Chives' },
|
504
|
+
'4889' => { :code => '4889', :type => 'HERBS', :variety => 'Cilantro / Coriander / Chinese Parsley' },
|
505
|
+
'4890' => { :code => '4890', :type => 'Pear', :variety => 'Chinese Yali' },
|
506
|
+
'4891' => { :code => '4891', :type => 'HERBS', :variety => 'Dill' },
|
507
|
+
'4892' => { :code => '4892', :type => 'Herbs', :variety => 'Baby Dill' },
|
508
|
+
'4893' => { :code => '4893', :type => 'Herbs', :variety => 'Pickling Dill' },
|
509
|
+
'4894' => { :code => '4894', :type => 'Herbs', :variety => 'Lemon Grass' },
|
510
|
+
'4895' => { :code => '4895', :type => 'Herbs', :variety => 'Marjoram' },
|
511
|
+
'4896' => { :code => '4896', :type => 'Herbs', :variety => 'Mint' },
|
512
|
+
'4897' => { :code => '4897', :type => 'Herbs', :variety => 'Oregano' },
|
513
|
+
'4898' => { :code => '4898', :type => 'Herbs', :variety => 'Oyster Plant / Salsify' },
|
514
|
+
'4900' => { :code => '4900', :type => 'HERBS', :variety => 'Parsley' },
|
515
|
+
'4901' => { :code => '4901', :type => 'HERBS', :variety => 'Italian Parsley' },
|
516
|
+
'4903' => { :code => '4903', :type => 'Herbs', :variety => 'Rosemary' },
|
517
|
+
'4904' => { :code => '4904', :type => 'Herbs', :variety => 'Sage' },
|
518
|
+
'4905' => { :code => '4905', :type => 'Herbs', :variety => 'Sorrel' },
|
519
|
+
'4906' => { :code => '4906', :type => 'Herbs', :variety => 'Tarragon' },
|
520
|
+
'4907' => { :code => '4907', :type => 'Herbs', :variety => 'Thyme' },
|
521
|
+
'4908' => { :code => '4908', :type => 'Herbs', :variety => 'Vanilla Bean' },
|
522
|
+
'4924' => { :code => '4924', :type => 'Nuts', :variety => 'Almonds' },
|
523
|
+
'4926' => { :code => '4926', :type => 'Nuts', :variety => 'Brazil nuts' },
|
524
|
+
'4927' => { :code => '4927', :type => 'Nuts', :variety => 'Chestnuts' },
|
525
|
+
'4928' => { :code => '4928', :type => 'Nuts', :variety => 'Filberts / Cobnut / Hazelnut' },
|
526
|
+
'4929' => { :code => '4929', :type => 'Nuts', :variety => 'Mixed' },
|
527
|
+
'4936' => { :code => '4936', :type => 'Nuts', :variety => 'Pecans' },
|
528
|
+
'4938' => { :code => '4938', :type => 'Nuts', :variety => 'Pine Nuts / Pignoli' },
|
529
|
+
'4942' => { :code => '4942', :type => 'Nuts', :variety => 'Sunflower Seeds' },
|
530
|
+
'4948' => { :code => '4948', :type => 'LIMES', :variety => '' },
|
531
|
+
'33543' => { :code => '33543', :type => 'Avocado', :variety => 'Ripe, ready-to-eat' },
|
532
|
+
'33653' => { :code => '33653', :type => 'Mango', :variety => 'Ripe, ready-to-eat' },
|
533
|
+
'33673' => { :code => '33673', :type => 'Melon', :variety => 'Glasshouse, netted varieties' },
|
534
|
+
'34173' => { :code => '34173', :type => 'Spinach', :variety => 'New Zealand' },
|
535
|
+
'42461' => { :code => '42461', :type => 'Berries', :variety => 'Pint' },
|
536
|
+
'46341' => { :code => '46341', :type => 'Lettuce', :variety => 'Iceberg' },
|
537
|
+
'47251' => { :code => '47251', :type => 'Potato', :variety => 'Russet' }
|
538
|
+
}
|