]> git.openstreetmap.org Git - nominatim.git/blobdiff - utils/tigerAddressImport.py
Merge pull request #994 from mtmail/bugfix-when-calling-debug-printDebugArray
[nominatim.git] / utils / tigerAddressImport.py
index a784b93bfc4f0804d5ecb34a23e6b4d422a21d73..b1e2eb0cec8984813a2eacec1686d3a837b06af7 100755 (executable)
@@ -7,13 +7,6 @@
 # On very tight curves, a loop may be generated in the address way.
 # It would be nice if the ends of the address ways were not pulled back from dead ends
 
-VERSION="0.3"
-# Version 0.3 is optimized for the tiger road conversion
-
-# Tag Source  = iSource + _import_v + version + _ + date and time
-iSource="tiger"
-# Tag Attribution = iAttrib
-iAttrib="tiger"
 
 # Ways that include these mtfccs should not be uploaded
 # H1100 Connector
@@ -26,23 +19,15 @@ iAttrib="tiger"
 # P0002 Perennial Shoreline
 # P0003 Intermittent Shoreline
 # P0004 Other non-visible bounding Edge (e.g., Census water boundary, boundary of an areal feature)
-
-
 ignoremtfcc = [ "H1100", "H3010", "H3013", "H3020", "L4130", "L4140", "P0001", "P0002", "P0003", "P0004" ]
 
-#Files will be split when longer than this number of nodes
-maxNodes = 300000
-
-# Set the maximum length of a way (in nodes) before it is split into
-# shorter ways
-Max_Waylength = 500
-
 # Sets the distance that the address ways should be from the main way, in feet.
 address_distance = 30
 
 # Sets the distance that the ends of the address ways should be pulled back from the ends of the main way, in feet
 address_pullback = 45
 
+import sys, os.path, json
 try:
     from osgeo import ogr
     from osgeo import osr
@@ -50,3317 +35,14 @@ except:
     import ogr
     import osr
 
-# ====================================
-# Edit parse_shp_for_osm section to fit your data!
-# change poFeature.GetField("    ") to contain only the shape column names for the data you want
-# and  tags["   "] to match the osm tag names you wish to use for that data.
-# some tags will require changing a number to a meaningful value like the Highway tag.  See the metadata for the meaning of these tags.
-# For any measurements be sure to check the unit value of the original data, and convert if needed to the expected unit for osm.
-# ====================================
+# https://www.census.gov/geo/reference/codes/cou.html 
+# tiger_county_fips.json was generated from the following:
+# wget https://www2.census.gov/geo/docs/reference/codes/files/national_county.txt
+# cat national_county.txt | perl -F, -naE'($F[0] ne 'AS') && $F[3] =~ s/ ((city|City|County|District|Borough|City and Borough|Municipio|Municipality|Parish|Island|Census Area)(?:, |\Z))+//; say qq(  "$F[1]$F[2]": "$F[3], $F[0]",)'
+json_fh = open(os.path.dirname(sys.argv[0]) + "/tiger_county_fips.json")
+county_fips_data = json.load(json_fh)
 
-# Long name, short name, ISO-3166-1 alpha-2
-# from http://www.census.gov/geo/www/ansi/statetables.html
-fipscodes = {
-    '01' : ('Alabama', 'AL', 'US'),
-    '02' : ('Alaska', 'AK', 'US'),
-    '04' : ('Arizona', 'AZ', 'US'),
-    '05' : ('Arkansas', 'AR', 'US'),
-    '06' : ('California', 'CA', 'US'),
-    '08' : ('Colorado', 'CO', 'US'),
-    '09' : ('Connecticut', 'CT', 'US'),
-    '10' : ('Delaware', 'DE', 'US'),
-    '11' : ('District of Columbia', 'DC', 'US'),
-    '12' : ('Florida', 'FL', 'US'),
-    '13' : ('Georgia', 'GA', 'US'),
-    '15' : ('Hawaii', 'HI', 'US'),
-    '16' : ('Idaho', 'ID', 'US'),
-    '17' : ('Illinois', 'IL', 'US'),
-    '18' : ('Indiana', 'IN', 'US'),
-    '19' : ('Iowa', 'IA', 'US'),
-    '20' : ('Kansas', 'KS', 'US'),
-    '21' : ('Kentucky', 'KY', 'US'),
-    '22' : ('Louisiana', 'LA', 'US'),
-    '23' : ('Maine', 'ME', 'US'),
-    '24' : ('Maryland', 'MD', 'US'),
-    '25' : ('Massachusetts', 'MA', 'US'),
-    '26' : ('Michigan', 'MI', 'US'),
-    '27' : ('Minnesota', 'MN', 'US'),
-    '28' : ('Mississippi', 'MS', 'US'),
-    '29' : ('Missouri', 'MO', 'US'),
-    '30' : ('Montana', 'MT', 'US'),
-    '31' : ('Nebraska', 'NE', 'US'),
-    '32' : ('Nevada', 'NV', 'US'),
-    '33' : ('New Hampshire', 'NH', 'US'),
-    '34' : ('New Jersey', 'NJ', 'US'),
-    '35' : ('New Mexico', 'NM', 'US'),
-    '36' : ('New York', 'NY', 'US'),
-    '37' : ('North Carolina', 'NC', 'US'),
-    '38' : ('North Dakota', 'ND', 'US'),
-    '39' : ('Ohio', 'OH', 'US'),
-    '40' : ('Oklahoma', 'OK', 'US'),
-    '41' : ('Oregon', 'OR', 'US'),
-    '42' : ('Pennsylvania', 'PA', 'US'),
-    '44' : ('Rhode Island', 'RI', 'US'),
-    '45' : ('South Carolina', 'SC', 'US'),
-    '46' : ('South Dakota', 'SD', 'US'),
-    '47' : ('Tennessee', 'TN', 'US'),
-    '48' : ('Texas', 'TX', 'US'),
-    '49' : ('Utah', 'UT', 'US'),
-    '50' : ('Vermont', 'VT', 'US'),
-    '51' : ('Virginia', 'VA', 'US'),
-    '53' : ('Washington', 'WA', 'US'),
-    '54' : ('West Virginia', 'WV', 'US'),
-    '55' : ('Wisconsin', 'WI', 'US'),
-    '56' : ('Wyoming', 'WY', 'US'),
-    # Outlying areas w/census data
-    '60' : ('American Samoa', 'AS', 'AS'),
-    '66' : ('Guam', 'GU', 'GU'),
-    '69' : ('Commonwealth of the Northern Mariana Islands', 'MP', 'MP'),
-    '72' : ('Puerto Rico', 'PR', 'PR'),
-    '78' : ('U.S. Virgin Islands', 'VI', 'VI'),
-    }
-
-# This was generated with the following:
-# wget http://www.census.gov/datamap/fipslist/AllSt.txt
-# cat AllSt.txt  | grep '^                [0-9]' | awk "{printf \"'%s' : '%s' ,\\n\", \$1, substr(\$0, 31)}" | > countyfips.py
-
-county_fips = {
-'01000' : 'ALABAMA' ,
-'01001' : 'Autauga, AL' ,
-'01003' : 'Baldwin, AL' ,
-'01005' : 'Barbour, AL' ,
-'01007' : 'Bibb, AL' ,
-'01009' : 'Blount, AL' ,
-'01011' : 'Bullock, AL' ,
-'01013' : 'Butler, AL' ,
-'01015' : 'Calhoun, AL' ,
-'01017' : 'Chambers, AL' ,
-'01019' : 'Cherokee, AL' ,
-'01021' : 'Chilton, AL' ,
-'01023' : 'Choctaw, AL' ,
-'01025' : 'Clarke, AL' ,
-'01027' : 'Clay, AL' ,
-'01029' : 'Cleburne, AL' ,
-'01031' : 'Coffee, AL' ,
-'01033' : 'Colbert, AL' ,
-'01035' : 'Conecuh, AL' ,
-'01037' : 'Coosa, AL' ,
-'01039' : 'Covington, AL' ,
-'01041' : 'Crenshaw, AL' ,
-'01043' : 'Cullman, AL' ,
-'01045' : 'Dale, AL' ,
-'01047' : 'Dallas, AL' ,
-'01049' : 'De Kalb, AL' ,
-'01051' : 'Elmore, AL' ,
-'01053' : 'Escambia, AL' ,
-'01055' : 'Etowah, AL' ,
-'01057' : 'Fayette, AL' ,
-'01059' : 'Franklin, AL' ,
-'01061' : 'Geneva, AL' ,
-'01063' : 'Greene, AL' ,
-'01065' : 'Hale, AL' ,
-'01067' : 'Henry, AL' ,
-'01069' : 'Houston, AL' ,
-'01071' : 'Jackson, AL' ,
-'01073' : 'Jefferson, AL' ,
-'01075' : 'Lamar, AL' ,
-'01077' : 'Lauderdale, AL' ,
-'01079' : 'Lawrence, AL' ,
-'01081' : 'Lee, AL' ,
-'01083' : 'Limestone, AL' ,
-'01085' : 'Lowndes, AL' ,
-'01087' : 'Macon, AL' ,
-'01089' : 'Madison, AL' ,
-'01091' : 'Marengo, AL' ,
-'01093' : 'Marion, AL' ,
-'01095' : 'Marshall, AL' ,
-'01097' : 'Mobile, AL' ,
-'01099' : 'Monroe, AL' ,
-'01101' : 'Montgomery, AL' ,
-'01103' : 'Morgan, AL' ,
-'01105' : 'Perry, AL' ,
-'01107' : 'Pickens, AL' ,
-'01109' : 'Pike, AL' ,
-'01111' : 'Randolph, AL' ,
-'01113' : 'Russell, AL' ,
-'01115' : 'St. Clair, AL' ,
-'01117' : 'Shelby, AL' ,
-'01119' : 'Sumter, AL' ,
-'01121' : 'Talladega, AL' ,
-'01123' : 'Tallapoosa, AL' ,
-'01125' : 'Tuscaloosa, AL' ,
-'01127' : 'Walker, AL' ,
-'01129' : 'Washington, AL' ,
-'01131' : 'Wilcox, AL' ,
-'01133' : 'Winston, AL' ,
-'02000' : 'ALASKA' ,
-'02013' : 'Aleutians East, AK' ,
-'02016' : 'Aleutians West, AK' ,
-'02020' : 'Anchorage, AK' ,
-'02230' : 'Skagway Municipality' ,
-'02050' : 'Bethel, AK' ,
-'02060' : 'Bristol Bay, AK' ,
-'02068' : 'Denali, AK' ,
-'02070' : 'Dillingham, AK' ,
-'02090' : 'Fairbanks North Star, AK' ,
-'02100' : 'Haines, AK' ,
-'02105' : 'Hoonah-Angoon Census Area' ,
-'02110' : 'Juneau, AK' ,
-'02122' : 'Kenai Peninsula, AK' ,
-'02130' : 'Ketchikan Gateway, AK' ,
-'02150' : 'Kodiak Island, AK' ,
-'02164' : 'Lake and Peninsula, AK' ,
-'02170' : 'Matanuska-Susitna, AK' ,
-'02180' : 'Nome, AK' ,
-'02185' : 'North Slope, AK' ,
-'02188' : 'Northwest Arctic, AK' ,
-'02195' : 'Petersburg Census Area' , 
-'02198' : 'Prince of Wales-Hyder Census Area' ,
-'02201' : 'Prince of Wales-Outer Ketchikan, AK' ,
-'02220' : 'Sitka, AK' ,
-'02232' : 'Skagway-Hoonah-Angoon, AK' ,
-'02240' : 'Southeast Fairbanks, AK' ,
-'02261' : 'Valdez-Cordova, AK' ,
-'02270' : 'Wade Hampton, AK' ,
-'02275' : 'Wrangell City and Borough' ,
-'02280' : 'Wrangell-Petersburg, AK' ,
-'02282' : 'Yakutat, AK' ,
-'02290' : 'Yukon-Koyukuk, AK' ,
-'04001' : 'Apache, AZ' ,
-'04003' : 'Cochise, AZ' ,
-'04005' : 'Coconino, AZ' ,
-'04007' : 'Gila, AZ' ,
-'04009' : 'Graham, AZ' ,
-'04011' : 'Greenlee, AZ' ,
-'04012' : 'La Paz, AZ' ,
-'04013' : 'Maricopa, AZ' ,
-'04015' : 'Mohave, AZ' ,
-'04017' : 'Navajo, AZ' ,
-'04019' : 'Pima, AZ' ,
-'04021' : 'Pinal, AZ' ,
-'04023' : 'Santa Cruz, AZ' ,
-'04025' : 'Yavapai, AZ' ,
-'04027' : 'Yuma, AZ' ,
-'05000' : 'ARKANSAS' ,
-'05001' : 'Arkansas, AR' ,
-'05003' : 'Ashley, AR' ,
-'05005' : 'Baxter, AR' ,
-'05007' : 'Benton, AR' ,
-'05009' : 'Boone, AR' ,
-'05011' : 'Bradley, AR' ,
-'05013' : 'Calhoun, AR' ,
-'05015' : 'Carroll, AR' ,
-'05017' : 'Chicot, AR' ,
-'05019' : 'Clark, AR' ,
-'05021' : 'Clay, AR' ,
-'05023' : 'Cleburne, AR' ,
-'05025' : 'Cleveland, AR' ,
-'05027' : 'Columbia, AR' ,
-'05029' : 'Conway, AR' ,
-'05031' : 'Craighead, AR' ,
-'05033' : 'Crawford, AR' ,
-'05035' : 'Crittenden, AR' ,
-'05037' : 'Cross, AR' ,
-'05039' : 'Dallas, AR' ,
-'05041' : 'Desha, AR' ,
-'05043' : 'Drew, AR' ,
-'05045' : 'Faulkner, AR' ,
-'05047' : 'Franklin, AR' ,
-'05049' : 'Fulton, AR' ,
-'05051' : 'Garland, AR' ,
-'05053' : 'Grant, AR' ,
-'05055' : 'Greene, AR' ,
-'05057' : 'Hempstead, AR' ,
-'05059' : 'Hot Spring, AR' ,
-'05061' : 'Howard, AR' ,
-'05063' : 'Independence, AR' ,
-'05065' : 'Izard, AR' ,
-'05067' : 'Jackson, AR' ,
-'05069' : 'Jefferson, AR' ,
-'05071' : 'Johnson, AR' ,
-'05073' : 'Lafayette, AR' ,
-'05075' : 'Lawrence, AR' ,
-'05077' : 'Lee, AR' ,
-'05079' : 'Lincoln, AR' ,
-'05081' : 'Little River, AR' ,
-'05083' : 'Logan, AR' ,
-'05085' : 'Lonoke, AR' ,
-'05087' : 'Madison, AR' ,
-'05089' : 'Marion, AR' ,
-'05091' : 'Miller, AR' ,
-'05093' : 'Mississippi, AR' ,
-'05095' : 'Monroe, AR' ,
-'05097' : 'Montgomery, AR' ,
-'05099' : 'Nevada, AR' ,
-'05101' : 'Newton, AR' ,
-'05103' : 'Ouachita, AR' ,
-'05105' : 'Perry, AR' ,
-'05107' : 'Phillips, AR' ,
-'05109' : 'Pike, AR' ,
-'05111' : 'Poinsett, AR' ,
-'05113' : 'Polk, AR' ,
-'05115' : 'Pope, AR' ,
-'05117' : 'Prairie, AR' ,
-'05119' : 'Pulaski, AR' ,
-'05121' : 'Randolph, AR' ,
-'05123' : 'St. Francis, AR' ,
-'05125' : 'Saline, AR' ,
-'05127' : 'Scott, AR' ,
-'05129' : 'Searcy, AR' ,
-'05131' : 'Sebastian, AR' ,
-'05133' : 'Sevier, AR' ,
-'05135' : 'Sharp, AR' ,
-'05137' : 'Stone, AR' ,
-'05139' : 'Union, AR' ,
-'05141' : 'Van Buren, AR' ,
-'05143' : 'Washington, AR' ,
-'05145' : 'White, AR' ,
-'05147' : 'Woodruff, AR' ,
-'05149' : 'Yell, AR' ,
-'06000' : 'CALIFORNIA' ,
-'06001' : 'Alameda, CA' ,
-'06003' : 'Alpine, CA' ,
-'06005' : 'Amador, CA' ,
-'06007' : 'Butte, CA' ,
-'06009' : 'Calaveras, CA' ,
-'06011' : 'Colusa, CA' ,
-'06013' : 'Contra Costa, CA' ,
-'06015' : 'Del Norte, CA' ,
-'06017' : 'El Dorado, CA' ,
-'06019' : 'Fresno, CA' ,
-'06021' : 'Glenn, CA' ,
-'06023' : 'Humboldt, CA' ,
-'06025' : 'Imperial, CA' ,
-'06027' : 'Inyo, CA' ,
-'06029' : 'Kern, CA' ,
-'06031' : 'Kings, CA' ,
-'06033' : 'Lake, CA' ,
-'06035' : 'Lassen, CA' ,
-'06037' : 'Los Angeles, CA' ,
-'06039' : 'Madera, CA' ,
-'06041' : 'Marin, CA' ,
-'06043' : 'Mariposa, CA' ,
-'06045' : 'Mendocino, CA' ,
-'06047' : 'Merced, CA' ,
-'06049' : 'Modoc, CA' ,
-'06051' : 'Mono, CA' ,
-'06053' : 'Monterey, CA' ,
-'06055' : 'Napa, CA' ,
-'06057' : 'Nevada, CA' ,
-'06059' : 'Orange, CA' ,
-'06061' : 'Placer, CA' ,
-'06063' : 'Plumas, CA' ,
-'06065' : 'Riverside, CA' ,
-'06067' : 'Sacramento, CA' ,
-'06069' : 'San Benito, CA' ,
-'06071' : 'San Bernardino, CA' ,
-'06073' : 'San Diego, CA' ,
-'06075' : 'San Francisco, CA' ,
-'06077' : 'San Joaquin, CA' ,
-'06079' : 'San Luis Obispo, CA' ,
-'06081' : 'San Mateo, CA' ,
-'06083' : 'Santa Barbara, CA' ,
-'06085' : 'Santa Clara, CA' ,
-'06087' : 'Santa Cruz, CA' ,
-'06089' : 'Shasta, CA' ,
-'06091' : 'Sierra, CA' ,
-'06093' : 'Siskiyou, CA' ,
-'06095' : 'Solano, CA' ,
-'06097' : 'Sonoma, CA' ,
-'06099' : 'Stanislaus, CA' ,
-'06101' : 'Sutter, CA' ,
-'06103' : 'Tehama, CA' ,
-'06105' : 'Trinity, CA' ,
-'06107' : 'Tulare, CA' ,
-'06109' : 'Tuolumne, CA' ,
-'06111' : 'Ventura, CA' ,
-'06113' : 'Yolo, CA' ,
-'06115' : 'Yuba, CA' ,
-'08000' : 'COLORADO' ,
-'08001' : 'Adams, CO' ,
-'08003' : 'Alamosa, CO' ,
-'08005' : 'Arapahoe, CO' ,
-'08007' : 'Archuleta, CO' ,
-'08009' : 'Baca, CO' ,
-'08011' : 'Bent, CO' ,
-'08013' : 'Boulder, CO' ,
-'08015' : 'Chaffee, CO' ,
-'08014' : 'Broomfield, CO',
-'08017' : 'Cheyenne, CO' ,
-'08019' : 'Clear Creek, CO' ,
-'08021' : 'Conejos, CO' ,
-'08023' : 'Costilla, CO' ,
-'08025' : 'Crowley, CO' ,
-'08027' : 'Custer, CO' ,
-'08029' : 'Delta, CO' ,
-'08031' : 'Denver, CO' ,
-'08033' : 'Dolores, CO' ,
-'08035' : 'Douglas, CO' ,
-'08037' : 'Eagle, CO' ,
-'08039' : 'Elbert, CO' ,
-'08041' : 'El Paso, CO' ,
-'08043' : 'Fremont, CO' ,
-'08045' : 'Garfield, CO' ,
-'08047' : 'Gilpin, CO' ,
-'08049' : 'Grand, CO' ,
-'08051' : 'Gunnison, CO' ,
-'08053' : 'Hinsdale, CO' ,
-'08055' : 'Huerfano, CO' ,
-'08057' : 'Jackson, CO' ,
-'08059' : 'Jefferson, CO' ,
-'08061' : 'Kiowa, CO' ,
-'08063' : 'Kit Carson, CO' ,
-'08065' : 'Lake, CO' ,
-'08067' : 'La Plata, CO' ,
-'08069' : 'Larimer, CO' ,
-'08071' : 'Las Animas, CO' ,
-'08073' : 'Lincoln, CO' ,
-'08075' : 'Logan, CO' ,
-'08077' : 'Mesa, CO' ,
-'08079' : 'Mineral, CO' ,
-'08081' : 'Moffat, CO' ,
-'08083' : 'Montezuma, CO' ,
-'08085' : 'Montrose, CO' ,
-'08087' : 'Morgan, CO' ,
-'08089' : 'Otero, CO' ,
-'08091' : 'Ouray, CO' ,
-'08093' : 'Park, CO' ,
-'08095' : 'Phillips, CO' ,
-'08097' : 'Pitkin, CO' ,
-'08099' : 'Prowers, CO' ,
-'08101' : 'Pueblo, CO' ,
-'08103' : 'Rio Blanco, CO' ,
-'08105' : 'Rio Grande, CO' ,
-'08107' : 'Routt, CO' ,
-'08109' : 'Saguache, CO' ,
-'08111' : 'San Juan, CO' ,
-'08113' : 'San Miguel, CO' ,
-'08115' : 'Sedgwick, CO' ,
-'08117' : 'Summit, CO' ,
-'08119' : 'Teller, CO' ,
-'08121' : 'Washington, CO' ,
-'08123' : 'Weld, CO' ,
-'08125' : 'Yuma, CO' ,
-'09000' : 'CONNECTICUT' ,
-'09001' : 'Fairfield, CT' ,
-'09003' : 'Hartford, CT' ,
-'09005' : 'Litchfield, CT' ,
-'09007' : 'Middlesex, CT' ,
-'09009' : 'New Haven, CT' ,
-'09011' : 'New London, CT' ,
-'09013' : 'Tolland, CT' ,
-'09015' : 'Windham, CT' ,
-'10000' : 'DELAWARE' ,
-'10001' : 'Kent, DE' ,
-'10003' : 'New Castle, DE' ,
-'10005' : 'Sussex, DE' ,
-'11000' : 'DISTRICT OF COLUMBIA' ,
-'11001' : 'District of Columbia' ,
-'12000' : 'FLORIDA' ,
-'12001' : 'Alachua, FL' ,
-'12003' : 'Baker, FL' ,
-'12005' : 'Bay, FL' ,
-'12007' : 'Bradford, FL' ,
-'12009' : 'Brevard, FL' ,
-'12011' : 'Broward, FL' ,
-'12013' : 'Calhoun, FL' ,
-'12015' : 'Charlotte, FL' ,
-'12017' : 'Citrus, FL' ,
-'12019' : 'Clay, FL' ,
-'12021' : 'Collier, FL' ,
-'12023' : 'Columbia, FL' ,
-'12025' : 'Dade, FL' ,
-'12027' : 'De Soto, FL' ,
-'12029' : 'Dixie, FL' ,
-'12031' : 'Duval, FL' ,
-'12033' : 'Escambia, FL' ,
-'12035' : 'Flagler, FL' ,
-'12037' : 'Franklin, FL' ,
-'12039' : 'Gadsden, FL' ,
-'12041' : 'Gilchrist, FL' ,
-'12043' : 'Glades, FL' ,
-'12045' : 'Gulf, FL' ,
-'12047' : 'Hamilton, FL' ,
-'12049' : 'Hardee, FL' ,
-'12051' : 'Hendry, FL' ,
-'12053' : 'Hernando, FL' ,
-'12055' : 'Highlands, FL' ,
-'12057' : 'Hillsborough, FL' ,
-'12059' : 'Holmes, FL' ,
-'12061' : 'Indian River, FL' ,
-'12063' : 'Jackson, FL' ,
-'12065' : 'Jefferson, FL' ,
-'12067' : 'Lafayette, FL' ,
-'12069' : 'Lake, FL' ,
-'12071' : 'Lee, FL' ,
-'12073' : 'Leon, FL' ,
-'12075' : 'Levy, FL' ,
-'12077' : 'Liberty, FL' ,
-'12079' : 'Madison, FL' ,
-'12081' : 'Manatee, FL' ,
-'12083' : 'Marion, FL' ,
-'12085' : 'Martin, FL' ,
-'12086' : 'Miami-Dade, FL' ,
-'12087' : 'Monroe, FL' ,
-'12089' : 'Nassau, FL' ,
-'12091' : 'Okaloosa, FL' ,
-'12093' : 'Okeechobee, FL' ,
-'12095' : 'Orange, FL' ,
-'12097' : 'Osceola, FL' ,
-'12099' : 'Palm Beach, FL' ,
-'12101' : 'Pasco, FL' ,
-'12103' : 'Pinellas, FL' ,
-'12105' : 'Polk, FL' ,
-'12107' : 'Putnam, FL' ,
-'12109' : 'St. Johns, FL' ,
-'12111' : 'St. Lucie, FL' ,
-'12113' : 'Santa Rosa, FL' ,
-'12115' : 'Sarasota, FL' ,
-'12117' : 'Seminole, FL' ,
-'12119' : 'Sumter, FL' ,
-'12121' : 'Suwannee, FL' ,
-'12123' : 'Taylor, FL' ,
-'12125' : 'Union, FL' ,
-'12127' : 'Volusia, FL' ,
-'12129' : 'Wakulla, FL' ,
-'12131' : 'Walton, FL' ,
-'12133' : 'Washington, FL' ,
-'13000' : 'GEORGIA' ,
-'13001' : 'Appling, GA' ,
-'13003' : 'Atkinson, GA' ,
-'13005' : 'Bacon, GA' ,
-'13007' : 'Baker, GA' ,
-'13009' : 'Baldwin, GA' ,
-'13011' : 'Banks, GA' ,
-'13013' : 'Barrow, GA' ,
-'13015' : 'Bartow, GA' ,
-'13017' : 'Ben Hill, GA' ,
-'13019' : 'Berrien, GA' ,
-'13021' : 'Bibb, GA' ,
-'13023' : 'Bleckley, GA' ,
-'13025' : 'Brantley, GA' ,
-'13027' : 'Brooks, GA' ,
-'13029' : 'Bryan, GA' ,
-'13031' : 'Bulloch, GA' ,
-'13033' : 'Burke, GA' ,
-'13035' : 'Butts, GA' ,
-'13037' : 'Calhoun, GA' ,
-'13039' : 'Camden, GA' ,
-'13043' : 'Candler, GA' ,
-'13045' : 'Carroll, GA' ,
-'13047' : 'Catoosa, GA' ,
-'13049' : 'Charlton, GA' ,
-'13051' : 'Chatham, GA' ,
-'13053' : 'Chattahoochee, GA' ,
-'13055' : 'Chattooga, GA' ,
-'13057' : 'Cherokee, GA' ,
-'13059' : 'Clarke, GA' ,
-'13061' : 'Clay, GA' ,
-'13063' : 'Clayton, GA' ,
-'13065' : 'Clinch, GA' ,
-'13067' : 'Cobb, GA' ,
-'13069' : 'Coffee, GA' ,
-'13071' : 'Colquitt, GA' ,
-'13073' : 'Columbia, GA' ,
-'13075' : 'Cook, GA' ,
-'13077' : 'Coweta, GA' ,
-'13079' : 'Crawford, GA' ,
-'13081' : 'Crisp, GA' ,
-'13083' : 'Dade, GA' ,
-'13085' : 'Dawson, GA' ,
-'13087' : 'Decatur, GA' ,
-'13089' : 'De Kalb, GA' ,
-'13091' : 'Dodge, GA' ,
-'13093' : 'Dooly, GA' ,
-'13095' : 'Dougherty, GA' ,
-'13097' : 'Douglas, GA' ,
-'13099' : 'Early, GA' ,
-'13101' : 'Echols, GA' ,
-'13103' : 'Effingham, GA' ,
-'13105' : 'Elbert, GA' ,
-'13107' : 'Emanuel, GA' ,
-'13109' : 'Evans, GA' ,
-'13111' : 'Fannin, GA' ,
-'13113' : 'Fayette, GA' ,
-'13115' : 'Floyd, GA' ,
-'13117' : 'Forsyth, GA' ,
-'13119' : 'Franklin, GA' ,
-'13121' : 'Fulton, GA' ,
-'13123' : 'Gilmer, GA' ,
-'13125' : 'Glascock, GA' ,
-'13127' : 'Glynn, GA' ,
-'13129' : 'Gordon, GA' ,
-'13131' : 'Grady, GA' ,
-'13133' : 'Greene, GA' ,
-'13135' : 'Gwinnett, GA' ,
-'13137' : 'Habersham, GA' ,
-'13139' : 'Hall, GA' ,
-'13141' : 'Hancock, GA' ,
-'13143' : 'Haralson, GA' ,
-'13145' : 'Harris, GA' ,
-'13147' : 'Hart, GA' ,
-'13149' : 'Heard, GA' ,
-'13151' : 'Henry, GA' ,
-'13153' : 'Houston, GA' ,
-'13155' : 'Irwin, GA' ,
-'13157' : 'Jackson, GA' ,
-'13159' : 'Jasper, GA' ,
-'13161' : 'Jeff Davis, GA' ,
-'13163' : 'Jefferson, GA' ,
-'13165' : 'Jenkins, GA' ,
-'13167' : 'Johnson, GA' ,
-'13169' : 'Jones, GA' ,
-'13171' : 'Lamar, GA' ,
-'13173' : 'Lanier, GA' ,
-'13175' : 'Laurens, GA' ,
-'13177' : 'Lee, GA' ,
-'13179' : 'Liberty, GA' ,
-'13181' : 'Lincoln, GA' ,
-'13183' : 'Long, GA' ,
-'13185' : 'Lowndes, GA' ,
-'13187' : 'Lumpkin, GA' ,
-'13189' : 'McDuffie, GA' ,
-'13191' : 'McIntosh, GA' ,
-'13193' : 'Macon, GA' ,
-'13195' : 'Madison, GA' ,
-'13197' : 'Marion, GA' ,
-'13199' : 'Meriwether, GA' ,
-'13201' : 'Miller, GA' ,
-'13205' : 'Mitchell, GA' ,
-'13207' : 'Monroe, GA' ,
-'13209' : 'Montgomery, GA' ,
-'13211' : 'Morgan, GA' ,
-'13213' : 'Murray, GA' ,
-'13215' : 'Muscogee, GA' ,
-'13217' : 'Newton, GA' ,
-'13219' : 'Oconee, GA' ,
-'13221' : 'Oglethorpe, GA' ,
-'13223' : 'Paulding, GA' ,
-'13225' : 'Peach, GA' ,
-'13227' : 'Pickens, GA' ,
-'13229' : 'Pierce, GA' ,
-'13231' : 'Pike, GA' ,
-'13233' : 'Polk, GA' ,
-'13235' : 'Pulaski, GA' ,
-'13237' : 'Putnam, GA' ,
-'13239' : 'Quitman, GA' ,
-'13241' : 'Rabun, GA' ,
-'13243' : 'Randolph, GA' ,
-'13245' : 'Richmond, GA' ,
-'13247' : 'Rockdale, GA' ,
-'13249' : 'Schley, GA' ,
-'13251' : 'Screven, GA' ,
-'13253' : 'Seminole, GA' ,
-'13255' : 'Spalding, GA' ,
-'13257' : 'Stephens, GA' ,
-'13259' : 'Stewart, GA' ,
-'13261' : 'Sumter, GA' ,
-'13263' : 'Talbot, GA' ,
-'13265' : 'Taliaferro, GA' ,
-'13267' : 'Tattnall, GA' ,
-'13269' : 'Taylor, GA' ,
-'13271' : 'Telfair, GA' ,
-'13273' : 'Terrell, GA' ,
-'13275' : 'Thomas, GA' ,
-'13277' : 'Tift, GA' ,
-'13279' : 'Toombs, GA' ,
-'13281' : 'Towns, GA' ,
-'13283' : 'Treutlen, GA' ,
-'13285' : 'Troup, GA' ,
-'13287' : 'Turner, GA' ,
-'13289' : 'Twiggs, GA' ,
-'13291' : 'Union, GA' ,
-'13293' : 'Upson, GA' ,
-'13295' : 'Walker, GA' ,
-'13297' : 'Walton, GA' ,
-'13299' : 'Ware, GA' ,
-'13301' : 'Warren, GA' ,
-'13303' : 'Washington, GA' ,
-'13305' : 'Wayne, GA' ,
-'13307' : 'Webster, GA' ,
-'13309' : 'Wheeler, GA' ,
-'13311' : 'White, GA' ,
-'13313' : 'Whitfield, GA' ,
-'13315' : 'Wilcox, GA' ,
-'13317' : 'Wilkes, GA' ,
-'13319' : 'Wilkinson, GA' ,
-'13321' : 'Worth, GA' ,
-'15000' : 'HAWAII' ,
-'15001' : 'Hawaii, HI' ,
-'15003' : 'Honolulu, HI' ,
-'15005' : 'Kalawao, HI' ,
-'15007' : 'Kauai, HI' ,
-'15009' : 'Maui, HI' ,
-'16000' : 'IDAHO' ,
-'16001' : 'Ada, ID' ,
-'16003' : 'Adams, ID' ,
-'16005' : 'Bannock, ID' ,
-'16007' : 'Bear Lake, ID' ,
-'16009' : 'Benewah, ID' ,
-'16011' : 'Bingham, ID' ,
-'16013' : 'Blaine, ID' ,
-'16015' : 'Boise, ID' ,
-'16017' : 'Bonner, ID' ,
-'16019' : 'Bonneville, ID' ,
-'16021' : 'Boundary, ID' ,
-'16023' : 'Butte, ID' ,
-'16025' : 'Camas, ID' ,
-'16027' : 'Canyon, ID' ,
-'16029' : 'Caribou, ID' ,
-'16031' : 'Cassia, ID' ,
-'16033' : 'Clark, ID' ,
-'16035' : 'Clearwater, ID' ,
-'16037' : 'Custer, ID' ,
-'16039' : 'Elmore, ID' ,
-'16041' : 'Franklin, ID' ,
-'16043' : 'Fremont, ID' ,
-'16045' : 'Gem, ID' ,
-'16047' : 'Gooding, ID' ,
-'16049' : 'Idaho, ID' ,
-'16051' : 'Jefferson, ID' ,
-'16053' : 'Jerome, ID' ,
-'16055' : 'Kootenai, ID' ,
-'16057' : 'Latah, ID' ,
-'16059' : 'Lemhi, ID' ,
-'16061' : 'Lewis, ID' ,
-'16063' : 'Lincoln, ID' ,
-'16065' : 'Madison, ID' ,
-'16067' : 'Minidoka, ID' ,
-'16069' : 'Nez Perce, ID' ,
-'16071' : 'Oneida, ID' ,
-'16073' : 'Owyhee, ID' ,
-'16075' : 'Payette, ID' ,
-'16077' : 'Power, ID' ,
-'16079' : 'Shoshone, ID' ,
-'16081' : 'Teton, ID' ,
-'16083' : 'Twin Falls, ID' ,
-'16085' : 'Valley, ID' ,
-'16087' : 'Washington, ID' ,
-'17000' : 'ILLINOIS' ,
-'17001' : 'Adams, IL' ,
-'17003' : 'Alexander, IL' ,
-'17005' : 'Bond, IL' ,
-'17007' : 'Boone, IL' ,
-'17009' : 'Brown, IL' ,
-'17011' : 'Bureau, IL' ,
-'17013' : 'Calhoun, IL' ,
-'17015' : 'Carroll, IL' ,
-'17017' : 'Cass, IL' ,
-'17019' : 'Champaign, IL' ,
-'17021' : 'Christian, IL' ,
-'17023' : 'Clark, IL' ,
-'17025' : 'Clay, IL' ,
-'17027' : 'Clinton, IL' ,
-'17029' : 'Coles, IL' ,
-'17031' : 'Cook, IL' ,
-'17033' : 'Crawford, IL' ,
-'17035' : 'Cumberland, IL' ,
-'17037' : 'DeKalb, IL' ,
-'17039' : 'De Witt, IL' ,
-'17041' : 'Douglas, IL' ,
-'17043' : 'DuPage, IL' ,
-'17045' : 'Edgar, IL' ,
-'17047' : 'Edwards, IL' ,
-'17049' : 'Effingham, IL' ,
-'17051' : 'Fayette, IL' ,
-'17053' : 'Ford, IL' ,
-'17055' : 'Franklin, IL' ,
-'17057' : 'Fulton, IL' ,
-'17059' : 'Gallatin, IL' ,
-'17061' : 'Greene, IL' ,
-'17063' : 'Grundy, IL' ,
-'17065' : 'Hamilton, IL' ,
-'17067' : 'Hancock, IL' ,
-'17069' : 'Hardin, IL' ,
-'17071' : 'Henderson, IL' ,
-'17073' : 'Henry, IL' ,
-'17075' : 'Iroquois, IL' ,
-'17077' : 'Jackson, IL' ,
-'17079' : 'Jasper, IL' ,
-'17081' : 'Jefferson, IL' ,
-'17083' : 'Jersey, IL' ,
-'17085' : 'Jo Daviess, IL' ,
-'17087' : 'Johnson, IL' ,
-'17089' : 'Kane, IL' ,
-'17091' : 'Kankakee, IL' ,
-'17093' : 'Kendall, IL' ,
-'17095' : 'Knox, IL' ,
-'17097' : 'Lake, IL' ,
-'17099' : 'La Salle, IL' ,
-'17101' : 'Lawrence, IL' ,
-'17103' : 'Lee, IL' ,
-'17105' : 'Livingston, IL' ,
-'17107' : 'Logan, IL' ,
-'17109' : 'McDonough, IL' ,
-'17111' : 'McHenry, IL' ,
-'17113' : 'McLean, IL' ,
-'17115' : 'Macon, IL' ,
-'17117' : 'Macoupin, IL' ,
-'17119' : 'Madison, IL' ,
-'17121' : 'Marion, IL' ,
-'17123' : 'Marshall, IL' ,
-'17125' : 'Mason, IL' ,
-'17127' : 'Massac, IL' ,
-'17129' : 'Menard, IL' ,
-'17131' : 'Mercer, IL' ,
-'17133' : 'Monroe, IL' ,
-'17135' : 'Montgomery, IL' ,
-'17137' : 'Morgan, IL' ,
-'17139' : 'Moultrie, IL' ,
-'17141' : 'Ogle, IL' ,
-'17143' : 'Peoria, IL' ,
-'17145' : 'Perry, IL' ,
-'17147' : 'Piatt, IL' ,
-'17149' : 'Pike, IL' ,
-'17151' : 'Pope, IL' ,
-'17153' : 'Pulaski, IL' ,
-'17155' : 'Putnam, IL' ,
-'17157' : 'Randolph, IL' ,
-'17159' : 'Richland, IL' ,
-'17161' : 'Rock Island, IL' ,
-'17163' : 'St. Clair, IL' ,
-'17165' : 'Saline, IL' ,
-'17167' : 'Sangamon, IL' ,
-'17169' : 'Schuyler, IL' ,
-'17171' : 'Scott, IL' ,
-'17173' : 'Shelby, IL' ,
-'17175' : 'Stark, IL' ,
-'17177' : 'Stephenson, IL' ,
-'17179' : 'Tazewell, IL' ,
-'17181' : 'Union, IL' ,
-'17183' : 'Vermilion, IL' ,
-'17185' : 'Wabash, IL' ,
-'17187' : 'Warren, IL' ,
-'17189' : 'Washington, IL' ,
-'17191' : 'Wayne, IL' ,
-'17193' : 'White, IL' ,
-'17195' : 'Whiteside, IL' ,
-'17197' : 'Will, IL' ,
-'17199' : 'Williamson, IL' ,
-'17201' : 'Winnebago, IL' ,
-'17203' : 'Woodford, IL' ,
-'18000' : 'INDIANA' ,
-'18001' : 'Adams, IN' ,
-'18003' : 'Allen, IN' ,
-'18005' : 'Bartholomew, IN' ,
-'18007' : 'Benton, IN' ,
-'18009' : 'Blackford, IN' ,
-'18011' : 'Boone, IN' ,
-'18013' : 'Brown, IN' ,
-'18015' : 'Carroll, IN' ,
-'18017' : 'Cass, IN' ,
-'18019' : 'Clark, IN' ,
-'18021' : 'Clay, IN' ,
-'18023' : 'Clinton, IN' ,
-'18025' : 'Crawford, IN' ,
-'18027' : 'Daviess, IN' ,
-'18029' : 'Dearborn, IN' ,
-'18031' : 'Decatur, IN' ,
-'18033' : 'De Kalb, IN' ,
-'18035' : 'Delaware, IN' ,
-'18037' : 'Dubois, IN' ,
-'18039' : 'Elkhart, IN' ,
-'18041' : 'Fayette, IN' ,
-'18043' : 'Floyd, IN' ,
-'18045' : 'Fountain, IN' ,
-'18047' : 'Franklin, IN' ,
-'18049' : 'Fulton, IN' ,
-'18051' : 'Gibson, IN' ,
-'18053' : 'Grant, IN' ,
-'18055' : 'Greene, IN' ,
-'18057' : 'Hamilton, IN' ,
-'18059' : 'Hancock, IN' ,
-'18061' : 'Harrison, IN' ,
-'18063' : 'Hendricks, IN' ,
-'18065' : 'Henry, IN' ,
-'18067' : 'Howard, IN' ,
-'18069' : 'Huntington, IN' ,
-'18071' : 'Jackson, IN' ,
-'18073' : 'Jasper, IN' ,
-'18075' : 'Jay, IN' ,
-'18077' : 'Jefferson, IN' ,
-'18079' : 'Jennings, IN' ,
-'18081' : 'Johnson, IN' ,
-'18083' : 'Knox, IN' ,
-'18085' : 'Kosciusko, IN' ,
-'18087' : 'Lagrange, IN' ,
-'18089' : 'Lake, IN' ,
-'18091' : 'La Porte, IN' ,
-'18093' : 'Lawrence, IN' ,
-'18095' : 'Madison, IN' ,
-'18097' : 'Marion, IN' ,
-'18099' : 'Marshall, IN' ,
-'18101' : 'Martin, IN' ,
-'18103' : 'Miami, IN' ,
-'18105' : 'Monroe, IN' ,
-'18107' : 'Montgomery, IN' ,
-'18109' : 'Morgan, IN' ,
-'18111' : 'Newton, IN' ,
-'18113' : 'Noble, IN' ,
-'18115' : 'Ohio, IN' ,
-'18117' : 'Orange, IN' ,
-'18119' : 'Owen, IN' ,
-'18121' : 'Parke, IN' ,
-'18123' : 'Perry, IN' ,
-'18125' : 'Pike, IN' ,
-'18127' : 'Porter, IN' ,
-'18129' : 'Posey, IN' ,
-'18131' : 'Pulaski, IN' ,
-'18133' : 'Putnam, IN' ,
-'18135' : 'Randolph, IN' ,
-'18137' : 'Ripley, IN' ,
-'18139' : 'Rush, IN' ,
-'18141' : 'St. Joseph, IN' ,
-'18143' : 'Scott, IN' ,
-'18145' : 'Shelby, IN' ,
-'18147' : 'Spencer, IN' ,
-'18149' : 'Starke, IN' ,
-'18151' : 'Steuben, IN' ,
-'18153' : 'Sullivan, IN' ,
-'18155' : 'Switzerland, IN' ,
-'18157' : 'Tippecanoe, IN' ,
-'18159' : 'Tipton, IN' ,
-'18161' : 'Union, IN' ,
-'18163' : 'Vanderburgh, IN' ,
-'18165' : 'Vermillion, IN' ,
-'18167' : 'Vigo, IN' ,
-'18169' : 'Wabash, IN' ,
-'18171' : 'Warren, IN' ,
-'18173' : 'Warrick, IN' ,
-'18175' : 'Washington, IN' ,
-'18177' : 'Wayne, IN' ,
-'18179' : 'Wells, IN' ,
-'18181' : 'White, IN' ,
-'18183' : 'Whitley, IN' ,
-'19000' : 'IOWA' ,
-'19001' : 'Adair, IA' ,
-'19003' : 'Adams, IA' ,
-'19005' : 'Allamakee, IA' ,
-'19007' : 'Appanoose, IA' ,
-'19009' : 'Audubon, IA' ,
-'19011' : 'Benton, IA' ,
-'19013' : 'Black Hawk, IA' ,
-'19015' : 'Boone, IA' ,
-'19017' : 'Bremer, IA' ,
-'19019' : 'Buchanan, IA' ,
-'19021' : 'Buena Vista, IA' ,
-'19023' : 'Butler, IA' ,
-'19025' : 'Calhoun, IA' ,
-'19027' : 'Carroll, IA' ,
-'19029' : 'Cass, IA' ,
-'19031' : 'Cedar, IA' ,
-'19033' : 'Cerro Gordo, IA' ,
-'19035' : 'Cherokee, IA' ,
-'19037' : 'Chickasaw, IA' ,
-'19039' : 'Clarke, IA' ,
-'19041' : 'Clay, IA' ,
-'19043' : 'Clayton, IA' ,
-'19045' : 'Clinton, IA' ,
-'19047' : 'Crawford, IA' ,
-'19049' : 'Dallas, IA' ,
-'19051' : 'Davis, IA' ,
-'19053' : 'Decatur, IA' ,
-'19055' : 'Delaware, IA' ,
-'19057' : 'Des Moines, IA' ,
-'19059' : 'Dickinson, IA' ,
-'19061' : 'Dubuque, IA' ,
-'19063' : 'Emmet, IA' ,
-'19065' : 'Fayette, IA' ,
-'19067' : 'Floyd, IA' ,
-'19069' : 'Franklin, IA' ,
-'19071' : 'Fremont, IA' ,
-'19073' : 'Greene, IA' ,
-'19075' : 'Grundy, IA' ,
-'19077' : 'Guthrie, IA' ,
-'19079' : 'Hamilton, IA' ,
-'19081' : 'Hancock, IA' ,
-'19083' : 'Hardin, IA' ,
-'19085' : 'Harrison, IA' ,
-'19087' : 'Henry, IA' ,
-'19089' : 'Howard, IA' ,
-'19091' : 'Humboldt, IA' ,
-'19093' : 'Ida, IA' ,
-'19095' : 'Iowa, IA' ,
-'19097' : 'Jackson, IA' ,
-'19099' : 'Jasper, IA' ,
-'19101' : 'Jefferson, IA' ,
-'19103' : 'Johnson, IA' ,
-'19105' : 'Jones, IA' ,
-'19107' : 'Keokuk, IA' ,
-'19109' : 'Kossuth, IA' ,
-'19111' : 'Lee, IA' ,
-'19113' : 'Linn, IA' ,
-'19115' : 'Louisa, IA' ,
-'19117' : 'Lucas, IA' ,
-'19119' : 'Lyon, IA' ,
-'19121' : 'Madison, IA' ,
-'19123' : 'Mahaska, IA' ,
-'19125' : 'Marion, IA' ,
-'19127' : 'Marshall, IA' ,
-'19129' : 'Mills, IA' ,
-'19131' : 'Mitchell, IA' ,
-'19133' : 'Monona, IA' ,
-'19135' : 'Monroe, IA' ,
-'19137' : 'Montgomery, IA' ,
-'19139' : 'Muscatine, IA' ,
-'19141' : 'O\'Brien, IA' ,
-'19143' : 'Osceola, IA' ,
-'19145' : 'Page, IA' ,
-'19147' : 'Palo Alto, IA' ,
-'19149' : 'Plymouth, IA' ,
-'19151' : 'Pocahontas, IA' ,
-'19153' : 'Polk, IA' ,
-'19155' : 'Pottawattamie, IA' ,
-'19157' : 'Poweshiek, IA' ,
-'19159' : 'Ringgold, IA' ,
-'19161' : 'Sac, IA' ,
-'19163' : 'Scott, IA' ,
-'19165' : 'Shelby, IA' ,
-'19167' : 'Sioux, IA' ,
-'19169' : 'Story, IA' ,
-'19171' : 'Tama, IA' ,
-'19173' : 'Taylor, IA' ,
-'19175' : 'Union, IA' ,
-'19177' : 'Van Buren, IA' ,
-'19179' : 'Wapello, IA' ,
-'19181' : 'Warren, IA' ,
-'19183' : 'Washington, IA' ,
-'19185' : 'Wayne, IA' ,
-'19187' : 'Webster, IA' ,
-'19189' : 'Winnebago, IA' ,
-'19191' : 'Winneshiek, IA' ,
-'19193' : 'Woodbury, IA' ,
-'19195' : 'Worth, IA' ,
-'19197' : 'Wright, IA' ,
-'20000' : 'KANSAS' ,
-'20001' : 'Allen, KS' ,
-'20003' : 'Anderson, KS' ,
-'20005' : 'Atchison, KS' ,
-'20007' : 'Barber, KS' ,
-'20009' : 'Barton, KS' ,
-'20011' : 'Bourbon, KS' ,
-'20013' : 'Brown, KS' ,
-'20015' : 'Butler, KS' ,
-'20017' : 'Chase, KS' ,
-'20019' : 'Chautauqua, KS' ,
-'20021' : 'Cherokee, KS' ,
-'20023' : 'Cheyenne, KS' ,
-'20025' : 'Clark, KS' ,
-'20027' : 'Clay, KS' ,
-'20029' : 'Cloud, KS' ,
-'20031' : 'Coffey, KS' ,
-'20033' : 'Comanche, KS' ,
-'20035' : 'Cowley, KS' ,
-'20037' : 'Crawford, KS' ,
-'20039' : 'Decatur, KS' ,
-'20041' : 'Dickinson, KS' ,
-'20043' : 'Doniphan, KS' ,
-'20045' : 'Douglas, KS' ,
-'20047' : 'Edwards, KS' ,
-'20049' : 'Elk, KS' ,
-'20051' : 'Ellis, KS' ,
-'20053' : 'Ellsworth, KS' ,
-'20055' : 'Finney, KS' ,
-'20057' : 'Ford, KS' ,
-'20059' : 'Franklin, KS' ,
-'20061' : 'Geary, KS' ,
-'20063' : 'Gove, KS' ,
-'20065' : 'Graham, KS' ,
-'20067' : 'Grant, KS' ,
-'20069' : 'Gray, KS' ,
-'20071' : 'Greeley, KS' ,
-'20073' : 'Greenwood, KS' ,
-'20075' : 'Hamilton, KS' ,
-'20077' : 'Harper, KS' ,
-'20079' : 'Harvey, KS' ,
-'20081' : 'Haskell, KS' ,
-'20083' : 'Hodgeman, KS' ,
-'20085' : 'Jackson, KS' ,
-'20087' : 'Jefferson, KS' ,
-'20089' : 'Jewell, KS' ,
-'20091' : 'Johnson, KS' ,
-'20093' : 'Kearny, KS' ,
-'20095' : 'Kingman, KS' ,
-'20097' : 'Kiowa, KS' ,
-'20099' : 'Labette, KS' ,
-'20101' : 'Lane, KS' ,
-'20103' : 'Leavenworth, KS' ,
-'20105' : 'Lincoln, KS' ,
-'20107' : 'Linn, KS' ,
-'20109' : 'Logan, KS' ,
-'20111' : 'Lyon, KS' ,
-'20113' : 'McPherson, KS' ,
-'20115' : 'Marion, KS' ,
-'20117' : 'Marshall, KS' ,
-'20119' : 'Meade, KS' ,
-'20121' : 'Miami, KS' ,
-'20123' : 'Mitchell, KS' ,
-'20125' : 'Montgomery, KS' ,
-'20127' : 'Morris, KS' ,
-'20129' : 'Morton, KS' ,
-'20131' : 'Nemaha, KS' ,
-'20133' : 'Neosho, KS' ,
-'20135' : 'Ness, KS' ,
-'20137' : 'Norton, KS' ,
-'20139' : 'Osage, KS' ,
-'20141' : 'Osborne, KS' ,
-'20143' : 'Ottawa, KS' ,
-'20145' : 'Pawnee, KS' ,
-'20147' : 'Phillips, KS' ,
-'20149' : 'Pottawatomie, KS' ,
-'20151' : 'Pratt, KS' ,
-'20153' : 'Rawlins, KS' ,
-'20155' : 'Reno, KS' ,
-'20157' : 'Republic, KS' ,
-'20159' : 'Rice, KS' ,
-'20161' : 'Riley, KS' ,
-'20163' : 'Rooks, KS' ,
-'20165' : 'Rush, KS' ,
-'20167' : 'Russell, KS' ,
-'20169' : 'Saline, KS' ,
-'20171' : 'Scott, KS' ,
-'20173' : 'Sedgwick, KS' ,
-'20175' : 'Seward, KS' ,
-'20177' : 'Shawnee, KS' ,
-'20179' : 'Sheridan, KS' ,
-'20181' : 'Sherman, KS' ,
-'20183' : 'Smith, KS' ,
-'20185' : 'Stafford, KS' ,
-'20187' : 'Stanton, KS' ,
-'20189' : 'Stevens, KS' ,
-'20191' : 'Sumner, KS' ,
-'20193' : 'Thomas, KS' ,
-'20195' : 'Trego, KS' ,
-'20197' : 'Wabaunsee, KS' ,
-'20199' : 'Wallace, KS' ,
-'20201' : 'Washington, KS' ,
-'20203' : 'Wichita, KS' ,
-'20205' : 'Wilson, KS' ,
-'20207' : 'Woodson, KS' ,
-'20209' : 'Wyandotte, KS' ,
-'21000' : 'KENTUCKY' ,
-'21001' : 'Adair, KY' ,
-'21003' : 'Allen, KY' ,
-'21005' : 'Anderson, KY' ,
-'21007' : 'Ballard, KY' ,
-'21009' : 'Barren, KY' ,
-'21011' : 'Bath, KY' ,
-'21013' : 'Bell, KY' ,
-'21015' : 'Boone, KY' ,
-'21017' : 'Bourbon, KY' ,
-'21019' : 'Boyd, KY' ,
-'21021' : 'Boyle, KY' ,
-'21023' : 'Bracken, KY' ,
-'21025' : 'Breathitt, KY' ,
-'21027' : 'Breckinridge, KY' ,
-'21029' : 'Bullitt, KY' ,
-'21031' : 'Butler, KY' ,
-'21033' : 'Caldwell, KY' ,
-'21035' : 'Calloway, KY' ,
-'21037' : 'Campbell, KY' ,
-'21039' : 'Carlisle, KY' ,
-'21041' : 'Carroll, KY' ,
-'21043' : 'Carter, KY' ,
-'21045' : 'Casey, KY' ,
-'21047' : 'Christian, KY' ,
-'21049' : 'Clark, KY' ,
-'21051' : 'Clay, KY' ,
-'21053' : 'Clinton, KY' ,
-'21055' : 'Crittenden, KY' ,
-'21057' : 'Cumberland, KY' ,
-'21059' : 'Daviess, KY' ,
-'21061' : 'Edmonson, KY' ,
-'21063' : 'Elliott, KY' ,
-'21065' : 'Estill, KY' ,
-'21067' : 'Fayette, KY' ,
-'21069' : 'Fleming, KY' ,
-'21071' : 'Floyd, KY' ,
-'21073' : 'Franklin, KY' ,
-'21075' : 'Fulton, KY' ,
-'21077' : 'Gallatin, KY' ,
-'21079' : 'Garrard, KY' ,
-'21081' : 'Grant, KY' ,
-'21083' : 'Graves, KY' ,
-'21085' : 'Grayson, KY' ,
-'21087' : 'Green, KY' ,
-'21089' : 'Greenup, KY' ,
-'21091' : 'Hancock, KY' ,
-'21093' : 'Hardin, KY' ,
-'21095' : 'Harlan, KY' ,
-'21097' : 'Harrison, KY' ,
-'21099' : 'Hart, KY' ,
-'21101' : 'Henderson, KY' ,
-'21103' : 'Henry, KY' ,
-'21105' : 'Hickman, KY' ,
-'21107' : 'Hopkins, KY' ,
-'21109' : 'Jackson, KY' ,
-'21111' : 'Jefferson, KY' ,
-'21113' : 'Jessamine, KY' ,
-'21115' : 'Johnson, KY' ,
-'21117' : 'Kenton, KY' ,
-'21119' : 'Knott, KY' ,
-'21121' : 'Knox, KY' ,
-'21123' : 'Larue, KY' ,
-'21125' : 'Laurel, KY' ,
-'21127' : 'Lawrence, KY' ,
-'21129' : 'Lee, KY' ,
-'21131' : 'Leslie, KY' ,
-'21133' : 'Letcher, KY' ,
-'21135' : 'Lewis, KY' ,
-'21137' : 'Lincoln, KY' ,
-'21139' : 'Livingston, KY' ,
-'21141' : 'Logan, KY' ,
-'21143' : 'Lyon, KY' ,
-'21145' : 'McCracken, KY' ,
-'21147' : 'McCreary, KY' ,
-'21149' : 'McLean, KY' ,
-'21151' : 'Madison, KY' ,
-'21153' : 'Magoffin, KY' ,
-'21155' : 'Marion, KY' ,
-'21157' : 'Marshall, KY' ,
-'21159' : 'Martin, KY' ,
-'21161' : 'Mason, KY' ,
-'21163' : 'Meade, KY' ,
-'21165' : 'Menifee, KY' ,
-'21167' : 'Mercer, KY' ,
-'21169' : 'Metcalfe, KY' ,
-'21171' : 'Monroe, KY' ,
-'21173' : 'Montgomery, KY' ,
-'21175' : 'Morgan, KY' ,
-'21177' : 'Muhlenberg, KY' ,
-'21179' : 'Nelson, KY' ,
-'21181' : 'Nicholas, KY' ,
-'21183' : 'Ohio, KY' ,
-'21185' : 'Oldham, KY' ,
-'21187' : 'Owen, KY' ,
-'21189' : 'Owsley, KY' ,
-'21191' : 'Pendleton, KY' ,
-'21193' : 'Perry, KY' ,
-'21195' : 'Pike, KY' ,
-'21197' : 'Powell, KY' ,
-'21199' : 'Pulaski, KY' ,
-'21201' : 'Robertson, KY' ,
-'21203' : 'Rockcastle, KY' ,
-'21205' : 'Rowan, KY' ,
-'21207' : 'Russell, KY' ,
-'21209' : 'Scott, KY' ,
-'21211' : 'Shelby, KY' ,
-'21213' : 'Simpson, KY' ,
-'21215' : 'Spencer, KY' ,
-'21217' : 'Taylor, KY' ,
-'21219' : 'Todd, KY' ,
-'21221' : 'Trigg, KY' ,
-'21223' : 'Trimble, KY' ,
-'21225' : 'Union, KY' ,
-'21227' : 'Warren, KY' ,
-'21229' : 'Washington, KY' ,
-'21231' : 'Wayne, KY' ,
-'21233' : 'Webster, KY' ,
-'21235' : 'Whitley, KY' ,
-'21237' : 'Wolfe, KY' ,
-'21239' : 'Woodford, KY' ,
-'22000' : 'LOUISIANA' ,
-'22001' : 'Acadia, LA' ,
-'22003' : 'Allen, LA' ,
-'22005' : 'Ascension, LA' ,
-'22007' : 'Assumption, LA' ,
-'22009' : 'Avoyelles, LA' ,
-'22011' : 'Beauregard, LA' ,
-'22013' : 'Bienville, LA' ,
-'22015' : 'Bossier, LA' ,
-'22017' : 'Caddo, LA' ,
-'22019' : 'Calcasieu, LA' ,
-'22021' : 'Caldwell, LA' ,
-'22023' : 'Cameron, LA' ,
-'22025' : 'Catahoula, LA' ,
-'22027' : 'Claiborne, LA' ,
-'22029' : 'Concordia, LA' ,
-'22031' : 'De Soto, LA' ,
-'22033' : 'East Baton Rouge, LA' ,
-'22035' : 'East Carroll, LA' ,
-'22037' : 'East Feliciana, LA' ,
-'22039' : 'Evangeline, LA' ,
-'22041' : 'Franklin, LA' ,
-'22043' : 'Grant, LA' ,
-'22045' : 'Iberia, LA' ,
-'22047' : 'Iberville, LA' ,
-'22049' : 'Jackson, LA' ,
-'22051' : 'Jefferson, LA' ,
-'22053' : 'Jefferson Davis, LA' ,
-'22055' : 'Lafayette, LA' ,
-'22057' : 'Lafourche, LA' ,
-'22059' : 'La Salle, LA' ,
-'22061' : 'Lincoln, LA' ,
-'22063' : 'Livingston, LA' ,
-'22065' : 'Madison, LA' ,
-'22067' : 'Morehouse, LA' ,
-'22069' : 'Natchitoches, LA' ,
-'22071' : 'Orleans, LA' ,
-'22073' : 'Ouachita, LA' ,
-'22075' : 'Plaquemines, LA' ,
-'22077' : 'Pointe Coupee, LA' ,
-'22079' : 'Rapides, LA' ,
-'22081' : 'Red River, LA' ,
-'22083' : 'Richland, LA' ,
-'22085' : 'Sabine, LA' ,
-'22087' : 'St. Bernard, LA' ,
-'22089' : 'St. Charles, LA' ,
-'22091' : 'St. Helena, LA' ,
-'22093' : 'St. James, LA' ,
-'22095' : 'St. John the Baptist, LA' ,
-'22097' : 'St. Landry, LA' ,
-'22099' : 'St. Martin, LA' ,
-'22101' : 'St. Mary, LA' ,
-'22103' : 'St. Tammany, LA' ,
-'22105' : 'Tangipahoa, LA' ,
-'22107' : 'Tensas, LA' ,
-'22109' : 'Terrebonne, LA' ,
-'22111' : 'Union, LA' ,
-'22113' : 'Vermilion, LA' ,
-'22115' : 'Vernon, LA' ,
-'22117' : 'Washington, LA' ,
-'22119' : 'Webster, LA' ,
-'22121' : 'West Baton Rouge, LA' ,
-'22123' : 'West Carroll, LA' ,
-'22125' : 'West Feliciana, LA' ,
-'22127' : 'Winn, LA' ,
-'23000' : 'MAINE' ,
-'23001' : 'Androscoggin, ME' ,
-'23003' : 'Aroostook, ME' ,
-'23005' : 'Cumberland, ME' ,
-'23007' : 'Franklin, ME' ,
-'23009' : 'Hancock, ME' ,
-'23011' : 'Kennebec, ME' ,
-'23013' : 'Knox, ME' ,
-'23015' : 'Lincoln, ME' ,
-'23017' : 'Oxford, ME' ,
-'23019' : 'Penobscot, ME' ,
-'23021' : 'Piscataquis, ME' ,
-'23023' : 'Sagadahoc, ME' ,
-'23025' : 'Somerset, ME' ,
-'23027' : 'Waldo, ME' ,
-'23029' : 'Washington, ME' ,
-'23031' : 'York, ME' ,
-'24000' : 'MARYLAND' ,
-'24001' : 'Allegany, MD' ,
-'24003' : 'Anne Arundel, MD' ,
-'24005' : 'Baltimore, MD' ,
-'24009' : 'Calvert, MD' ,
-'24011' : 'Caroline, MD' ,
-'24013' : 'Carroll, MD' ,
-'24015' : 'Cecil, MD' ,
-'24017' : 'Charles, MD' ,
-'24019' : 'Dorchester, MD' ,
-'24021' : 'Frederick, MD' ,
-'24023' : 'Garrett, MD' ,
-'24025' : 'Harford, MD' ,
-'24027' : 'Howard, MD' ,
-'24029' : 'Kent, MD' ,
-'24031' : 'Montgomery, MD' ,
-'24033' : 'Prince George\'s, MD' ,
-'24035' : 'Queen Anne\'s, MD' ,
-'24037' : 'St. Mary\'s, MD' ,
-'24039' : 'Somerset, MD' ,
-'24041' : 'Talbot, MD' ,
-'24043' : 'Washington, MD' ,
-'24045' : 'Wicomico, MD' ,
-'24047' : 'Worcester, MD' ,
-'24510' : 'Baltimore city, MD' ,
-'25000' : 'MASSACHUSETTS' ,
-'25001' : 'Barnstable, MA' ,
-'25003' : 'Berkshire, MA' ,
-'25005' : 'Bristol, MA' ,
-'25007' : 'Dukes, MA' ,
-'25009' : 'Essex, MA' ,
-'25011' : 'Franklin, MA' ,
-'25013' : 'Hampden, MA' ,
-'25015' : 'Hampshire, MA' ,
-'25017' : 'Middlesex, MA' ,
-'25019' : 'Nantucket, MA' ,
-'25021' : 'Norfolk, MA' ,
-'25023' : 'Plymouth, MA' ,
-'25025' : 'Suffolk, MA' ,
-'25027' : 'Worcester, MA' ,
-'26000' : 'MICHIGAN' ,
-'26001' : 'Alcona, MI' ,
-'26003' : 'Alger, MI' ,
-'26005' : 'Allegan, MI' ,
-'26007' : 'Alpena, MI' ,
-'26009' : 'Antrim, MI' ,
-'26011' : 'Arenac, MI' ,
-'26013' : 'Baraga, MI' ,
-'26015' : 'Barry, MI' ,
-'26017' : 'Bay, MI' ,
-'26019' : 'Benzie, MI' ,
-'26021' : 'Berrien, MI' ,
-'26023' : 'Branch, MI' ,
-'26025' : 'Calhoun, MI' ,
-'26027' : 'Cass, MI' ,
-'26029' : 'Charlevoix, MI' ,
-'26031' : 'Cheboygan, MI' ,
-'26033' : 'Chippewa, MI' ,
-'26035' : 'Clare, MI' ,
-'26037' : 'Clinton, MI' ,
-'26039' : 'Crawford, MI' ,
-'26041' : 'Delta, MI' ,
-'26043' : 'Dickinson, MI' ,
-'26045' : 'Eaton, MI' ,
-'26047' : 'Emmet, MI' ,
-'26049' : 'Genesee, MI' ,
-'26051' : 'Gladwin, MI' ,
-'26053' : 'Gogebic, MI' ,
-'26055' : 'Grand Traverse, MI' ,
-'26057' : 'Gratiot, MI' ,
-'26059' : 'Hillsdale, MI' ,
-'26061' : 'Houghton, MI' ,
-'26063' : 'Huron, MI' ,
-'26065' : 'Ingham, MI' ,
-'26067' : 'Ionia, MI' ,
-'26069' : 'Iosco, MI' ,
-'26071' : 'Iron, MI' ,
-'26073' : 'Isabella, MI' ,
-'26075' : 'Jackson, MI' ,
-'26077' : 'Kalamazoo, MI' ,
-'26079' : 'Kalkaska, MI' ,
-'26081' : 'Kent, MI' ,
-'26083' : 'Keweenaw, MI' ,
-'26085' : 'Lake, MI' ,
-'26087' : 'Lapeer, MI' ,
-'26089' : 'Leelanau, MI' ,
-'26091' : 'Lenawee, MI' ,
-'26093' : 'Livingston, MI' ,
-'26095' : 'Luce, MI' ,
-'26097' : 'Mackinac, MI' ,
-'26099' : 'Macomb, MI' ,
-'26101' : 'Manistee, MI' ,
-'26103' : 'Marquette, MI' ,
-'26105' : 'Mason, MI' ,
-'26107' : 'Mecosta, MI' ,
-'26109' : 'Menominee, MI' ,
-'26111' : 'Midland, MI' ,
-'26113' : 'Missaukee, MI' ,
-'26115' : 'Monroe, MI' ,
-'26117' : 'Montcalm, MI' ,
-'26119' : 'Montmorency, MI' ,
-'26121' : 'Muskegon, MI' ,
-'26123' : 'Newaygo, MI' ,
-'26125' : 'Oakland, MI' ,
-'26127' : 'Oceana, MI' ,
-'26129' : 'Ogemaw, MI' ,
-'26131' : 'Ontonagon, MI' ,
-'26133' : 'Osceola, MI' ,
-'26135' : 'Oscoda, MI' ,
-'26137' : 'Otsego, MI' ,
-'26139' : 'Ottawa, MI' ,
-'26141' : 'Presque Isle, MI' ,
-'26143' : 'Roscommon, MI' ,
-'26145' : 'Saginaw, MI' ,
-'26147' : 'St. Clair, MI' ,
-'26149' : 'St. Joseph, MI' ,
-'26151' : 'Sanilac, MI' ,
-'26153' : 'Schoolcraft, MI' ,
-'26155' : 'Shiawassee, MI' ,
-'26157' : 'Tuscola, MI' ,
-'26159' : 'Van Buren, MI' ,
-'26161' : 'Washtenaw, MI' ,
-'26163' : 'Wayne, MI' ,
-'26165' : 'Wexford, MI' ,
-'27000' : 'MINNESOTA' ,
-'27001' : 'Aitkin, MN' ,
-'27003' : 'Anoka, MN' ,
-'27005' : 'Becker, MN' ,
-'27007' : 'Beltrami, MN' ,
-'27009' : 'Benton, MN' ,
-'27011' : 'Big Stone, MN' ,
-'27013' : 'Blue Earth, MN' ,
-'27015' : 'Brown, MN' ,
-'27017' : 'Carlton, MN' ,
-'27019' : 'Carver, MN' ,
-'27021' : 'Cass, MN' ,
-'27023' : 'Chippewa, MN' ,
-'27025' : 'Chisago, MN' ,
-'27027' : 'Clay, MN' ,
-'27029' : 'Clearwater, MN' ,
-'27031' : 'Cook, MN' ,
-'27033' : 'Cottonwood, MN' ,
-'27035' : 'Crow Wing, MN' ,
-'27037' : 'Dakota, MN' ,
-'27039' : 'Dodge, MN' ,
-'27041' : 'Douglas, MN' ,
-'27043' : 'Faribault, MN' ,
-'27045' : 'Fillmore, MN' ,
-'27047' : 'Freeborn, MN' ,
-'27049' : 'Goodhue, MN' ,
-'27051' : 'Grant, MN' ,
-'27053' : 'Hennepin, MN' ,
-'27055' : 'Houston, MN' ,
-'27057' : 'Hubbard, MN' ,
-'27059' : 'Isanti, MN' ,
-'27061' : 'Itasca, MN' ,
-'27063' : 'Jackson, MN' ,
-'27065' : 'Kanabec, MN' ,
-'27067' : 'Kandiyohi, MN' ,
-'27069' : 'Kittson, MN' ,
-'27071' : 'Koochiching, MN' ,
-'27073' : 'Lac qui Parle, MN' ,
-'27075' : 'Lake, MN' ,
-'27077' : 'Lake of the Woods, MN' ,
-'27079' : 'Le Sueur, MN' ,
-'27081' : 'Lincoln, MN' ,
-'27083' : 'Lyon, MN' ,
-'27085' : 'McLeod, MN' ,
-'27087' : 'Mahnomen, MN' ,
-'27089' : 'Marshall, MN' ,
-'27091' : 'Martin, MN' ,
-'27093' : 'Meeker, MN' ,
-'27095' : 'Mille Lacs, MN' ,
-'27097' : 'Morrison, MN' ,
-'27099' : 'Mower, MN' ,
-'27101' : 'Murray, MN' ,
-'27103' : 'Nicollet, MN' ,
-'27105' : 'Nobles, MN' ,
-'27107' : 'Norman, MN' ,
-'27109' : 'Olmsted, MN' ,
-'27111' : 'Otter Tail, MN' ,
-'27113' : 'Pennington, MN' ,
-'27115' : 'Pine, MN' ,
-'27117' : 'Pipestone, MN' ,
-'27119' : 'Polk, MN' ,
-'27121' : 'Pope, MN' ,
-'27123' : 'Ramsey, MN' ,
-'27125' : 'Red Lake, MN' ,
-'27127' : 'Redwood, MN' ,
-'27129' : 'Renville, MN' ,
-'27131' : 'Rice, MN' ,
-'27133' : 'Rock, MN' ,
-'27135' : 'Roseau, MN' ,
-'27137' : 'St. Louis, MN' ,
-'27139' : 'Scott, MN' ,
-'27141' : 'Sherburne, MN' ,
-'27143' : 'Sibley, MN' ,
-'27145' : 'Stearns, MN' ,
-'27147' : 'Steele, MN' ,
-'27149' : 'Stevens, MN' ,
-'27151' : 'Swift, MN' ,
-'27153' : 'Todd, MN' ,
-'27155' : 'Traverse, MN' ,
-'27157' : 'Wabasha, MN' ,
-'27159' : 'Wadena, MN' ,
-'27161' : 'Waseca, MN' ,
-'27163' : 'Washington, MN' ,
-'27165' : 'Watonwan, MN' ,
-'27167' : 'Wilkin, MN' ,
-'27169' : 'Winona, MN' ,
-'27171' : 'Wright, MN' ,
-'27173' : 'Yellow Medicine, MN' ,
-'28000' : 'MISSISSIPPI' ,
-'28001' : 'Adams, MS' ,
-'28003' : 'Alcorn, MS' ,
-'28005' : 'Amite, MS' ,
-'28007' : 'Attala, MS' ,
-'28009' : 'Benton, MS' ,
-'28011' : 'Bolivar, MS' ,
-'28013' : 'Calhoun, MS' ,
-'28015' : 'Carroll, MS' ,
-'28017' : 'Chickasaw, MS' ,
-'28019' : 'Choctaw, MS' ,
-'28021' : 'Claiborne, MS' ,
-'28023' : 'Clarke, MS' ,
-'28025' : 'Clay, MS' ,
-'28027' : 'Coahoma, MS' ,
-'28029' : 'Copiah, MS' ,
-'28031' : 'Covington, MS' ,
-'28033' : 'DeSoto, MS' ,
-'28035' : 'Forrest, MS' ,
-'28037' : 'Franklin, MS' ,
-'28039' : 'George, MS' ,
-'28041' : 'Greene, MS' ,
-'28043' : 'Grenada, MS' ,
-'28045' : 'Hancock, MS' ,
-'28047' : 'Harrison, MS' ,
-'28049' : 'Hinds, MS' ,
-'28051' : 'Holmes, MS' ,
-'28053' : 'Humphreys, MS' ,
-'28055' : 'Issaquena, MS' ,
-'28057' : 'Itawamba, MS' ,
-'28059' : 'Jackson, MS' ,
-'28061' : 'Jasper, MS' ,
-'28063' : 'Jefferson, MS' ,
-'28065' : 'Jefferson Davis, MS' ,
-'28067' : 'Jones, MS' ,
-'28069' : 'Kemper, MS' ,
-'28071' : 'Lafayette, MS' ,
-'28073' : 'Lamar, MS' ,
-'28075' : 'Lauderdale, MS' ,
-'28077' : 'Lawrence, MS' ,
-'28079' : 'Leake, MS' ,
-'28081' : 'Lee, MS' ,
-'28083' : 'Leflore, MS' ,
-'28085' : 'Lincoln, MS' ,
-'28087' : 'Lowndes, MS' ,
-'28089' : 'Madison, MS' ,
-'28091' : 'Marion, MS' ,
-'28093' : 'Marshall, MS' ,
-'28095' : 'Monroe, MS' ,
-'28097' : 'Montgomery, MS' ,
-'28099' : 'Neshoba, MS' ,
-'28101' : 'Newton, MS' ,
-'28103' : 'Noxubee, MS' ,
-'28105' : 'Oktibbeha, MS' ,
-'28107' : 'Panola, MS' ,
-'28109' : 'Pearl River, MS' ,
-'28111' : 'Perry, MS' ,
-'28113' : 'Pike, MS' ,
-'28115' : 'Pontotoc, MS' ,
-'28117' : 'Prentiss, MS' ,
-'28119' : 'Quitman, MS' ,
-'28121' : 'Rankin, MS' ,
-'28123' : 'Scott, MS' ,
-'28125' : 'Sharkey, MS' ,
-'28127' : 'Simpson, MS' ,
-'28129' : 'Smith, MS' ,
-'28131' : 'Stone, MS' ,
-'28133' : 'Sunflower, MS' ,
-'28135' : 'Tallahatchie, MS' ,
-'28137' : 'Tate, MS' ,
-'28139' : 'Tippah, MS' ,
-'28141' : 'Tishomingo, MS' ,
-'28143' : 'Tunica, MS' ,
-'28145' : 'Union, MS' ,
-'28147' : 'Walthall, MS' ,
-'28149' : 'Warren, MS' ,
-'28151' : 'Washington, MS' ,
-'28153' : 'Wayne, MS' ,
-'28155' : 'Webster, MS' ,
-'28157' : 'Wilkinson, MS' ,
-'28159' : 'Winston, MS' ,
-'28161' : 'Yalobusha, MS' ,
-'28163' : 'Yazoo, MS' ,
-'29000' : 'MISSOURI' ,
-'29001' : 'Adair, MO' ,
-'29003' : 'Andrew, MO' ,
-'29005' : 'Atchison, MO' ,
-'29007' : 'Audrain, MO' ,
-'29009' : 'Barry, MO' ,
-'29011' : 'Barton, MO' ,
-'29013' : 'Bates, MO' ,
-'29015' : 'Benton, MO' ,
-'29017' : 'Bollinger, MO' ,
-'29019' : 'Boone, MO' ,
-'29021' : 'Buchanan, MO' ,
-'29023' : 'Butler, MO' ,
-'29025' : 'Caldwell, MO' ,
-'29027' : 'Callaway, MO' ,
-'29029' : 'Camden, MO' ,
-'29031' : 'Cape Girardeau, MO' ,
-'29033' : 'Carroll, MO' ,
-'29035' : 'Carter, MO' ,
-'29037' : 'Cass, MO' ,
-'29039' : 'Cedar, MO' ,
-'29041' : 'Chariton, MO' ,
-'29043' : 'Christian, MO' ,
-'29045' : 'Clark, MO' ,
-'29047' : 'Clay, MO' ,
-'29049' : 'Clinton, MO' ,
-'29051' : 'Cole, MO' ,
-'29053' : 'Cooper, MO' ,
-'29055' : 'Crawford, MO' ,
-'29057' : 'Dade, MO' ,
-'29059' : 'Dallas, MO' ,
-'29061' : 'Daviess, MO' ,
-'29063' : 'De Kalb, MO' ,
-'29065' : 'Dent, MO' ,
-'29067' : 'Douglas, MO' ,
-'29069' : 'Dunklin, MO' ,
-'29071' : 'Franklin, MO' ,
-'29073' : 'Gasconade, MO' ,
-'29075' : 'Gentry, MO' ,
-'29077' : 'Greene, MO' ,
-'29079' : 'Grundy, MO' ,
-'29081' : 'Harrison, MO' ,
-'29083' : 'Henry, MO' ,
-'29085' : 'Hickory, MO' ,
-'29087' : 'Holt, MO' ,
-'29089' : 'Howard, MO' ,
-'29091' : 'Howell, MO' ,
-'29093' : 'Iron, MO' ,
-'29095' : 'Jackson, MO' ,
-'29097' : 'Jasper, MO' ,
-'29099' : 'Jefferson, MO' ,
-'29101' : 'Johnson, MO' ,
-'29103' : 'Knox, MO' ,
-'29105' : 'Laclede, MO' ,
-'29107' : 'Lafayette, MO' ,
-'29109' : 'Lawrence, MO' ,
-'29111' : 'Lewis, MO' ,
-'29113' : 'Lincoln, MO' ,
-'29115' : 'Linn, MO' ,
-'29117' : 'Livingston, MO' ,
-'29119' : 'McDonald, MO' ,
-'29121' : 'Macon, MO' ,
-'29123' : 'Madison, MO' ,
-'29125' : 'Maries, MO' ,
-'29127' : 'Marion, MO' ,
-'29129' : 'Mercer, MO' ,
-'29131' : 'Miller, MO' ,
-'29133' : 'Mississippi, MO' ,
-'29135' : 'Moniteau, MO' ,
-'29137' : 'Monroe, MO' ,
-'29139' : 'Montgomery, MO' ,
-'29141' : 'Morgan, MO' ,
-'29143' : 'New Madrid, MO' ,
-'29145' : 'Newton, MO' ,
-'29147' : 'Nodaway, MO' ,
-'29149' : 'Oregon, MO' ,
-'29151' : 'Osage, MO' ,
-'29153' : 'Ozark, MO' ,
-'29155' : 'Pemiscot, MO' ,
-'29157' : 'Perry, MO' ,
-'29159' : 'Pettis, MO' ,
-'29161' : 'Phelps, MO' ,
-'29163' : 'Pike, MO' ,
-'29165' : 'Platte, MO' ,
-'29167' : 'Polk, MO' ,
-'29169' : 'Pulaski, MO' ,
-'29171' : 'Putnam, MO' ,
-'29173' : 'Ralls, MO' ,
-'29175' : 'Randolph, MO' ,
-'29177' : 'Ray, MO' ,
-'29179' : 'Reynolds, MO' ,
-'29181' : 'Ripley, MO' ,
-'29183' : 'St. Charles, MO' ,
-'29185' : 'St. Clair, MO' ,
-'29186' : 'Ste. Genevieve, MO' ,
-'29187' : 'St. Francois, MO' ,
-'29189' : 'St. Louis, MO' ,
-'29195' : 'Saline, MO' ,
-'29197' : 'Schuyler, MO' ,
-'29199' : 'Scotland, MO' ,
-'29201' : 'Scott, MO' ,
-'29203' : 'Shannon, MO' ,
-'29205' : 'Shelby, MO' ,
-'29207' : 'Stoddard, MO' ,
-'29209' : 'Stone, MO' ,
-'29211' : 'Sullivan, MO' ,
-'29213' : 'Taney, MO' ,
-'29215' : 'Texas, MO' ,
-'29217' : 'Vernon, MO' ,
-'29219' : 'Warren, MO' ,
-'29221' : 'Washington, MO' ,
-'29223' : 'Wayne, MO' ,
-'29225' : 'Webster, MO' ,
-'29227' : 'Worth, MO' ,
-'29229' : 'Wright, MO' ,
-'29510' : 'St. Louis city, MO' ,
-'30000' : 'MONTANA' ,
-'30001' : 'Beaverhead, MT' ,
-'30003' : 'Big Horn, MT' ,
-'30005' : 'Blaine, MT' ,
-'30007' : 'Broadwater, MT' ,
-'30009' : 'Carbon, MT' ,
-'30011' : 'Carter, MT' ,
-'30013' : 'Cascade, MT' ,
-'30015' : 'Chouteau, MT' ,
-'30017' : 'Custer, MT' ,
-'30019' : 'Daniels, MT' ,
-'30021' : 'Dawson, MT' ,
-'30023' : 'Deer Lodge, MT' ,
-'30025' : 'Fallon, MT' ,
-'30027' : 'Fergus, MT' ,
-'30029' : 'Flathead, MT' ,
-'30031' : 'Gallatin, MT' ,
-'30033' : 'Garfield, MT' ,
-'30035' : 'Glacier, MT' ,
-'30037' : 'Golden Valley, MT' ,
-'30039' : 'Granite, MT' ,
-'30041' : 'Hill, MT' ,
-'30043' : 'Jefferson, MT' ,
-'30045' : 'Judith Basin, MT' ,
-'30047' : 'Lake, MT' ,
-'30049' : 'Lewis and Clark, MT' ,
-'30051' : 'Liberty, MT' ,
-'30053' : 'Lincoln, MT' ,
-'30055' : 'McCone, MT' ,
-'30057' : 'Madison, MT' ,
-'30059' : 'Meagher, MT' ,
-'30061' : 'Mineral, MT' ,
-'30063' : 'Missoula, MT' ,
-'30065' : 'Musselshell, MT' ,
-'30067' : 'Park, MT' ,
-'30069' : 'Petroleum, MT' ,
-'30071' : 'Phillips, MT' ,
-'30073' : 'Pondera, MT' ,
-'30075' : 'Powder River, MT' ,
-'30077' : 'Powell, MT' ,
-'30079' : 'Prairie, MT' ,
-'30081' : 'Ravalli, MT' ,
-'30083' : 'Richland, MT' ,
-'30085' : 'Roosevelt, MT' ,
-'30087' : 'Rosebud, MT' ,
-'30089' : 'Sanders, MT' ,
-'30091' : 'Sheridan, MT' ,
-'30093' : 'Silver Bow, MT' ,
-'30095' : 'Stillwater, MT' ,
-'30097' : 'Sweet Grass, MT' ,
-'30099' : 'Teton, MT' ,
-'30101' : 'Toole, MT' ,
-'30103' : 'Treasure, MT' ,
-'30105' : 'Valley, MT' ,
-'30107' : 'Wheatland, MT' ,
-'30109' : 'Wibaux, MT' ,
-'30111' : 'Yellowstone, MT' ,
-'30113' : 'Yellowstone National Park, MT' ,
-'31000' : 'NEBRASKA' ,
-'31001' : 'Adams, NE' ,
-'31003' : 'Antelope, NE' ,
-'31005' : 'Arthur, NE' ,
-'31007' : 'Banner, NE' ,
-'31009' : 'Blaine, NE' ,
-'31011' : 'Boone, NE' ,
-'31013' : 'Box Butte, NE' ,
-'31015' : 'Boyd, NE' ,
-'31017' : 'Brown, NE' ,
-'31019' : 'Buffalo, NE' ,
-'31021' : 'Burt, NE' ,
-'31023' : 'Butler, NE' ,
-'31025' : 'Cass, NE' ,
-'31027' : 'Cedar, NE' ,
-'31029' : 'Chase, NE' ,
-'31031' : 'Cherry, NE' ,
-'31033' : 'Cheyenne, NE' ,
-'31035' : 'Clay, NE' ,
-'31037' : 'Colfax, NE' ,
-'31039' : 'Cuming, NE' ,
-'31041' : 'Custer, NE' ,
-'31043' : 'Dakota, NE' ,
-'31045' : 'Dawes, NE' ,
-'31047' : 'Dawson, NE' ,
-'31049' : 'Deuel, NE' ,
-'31051' : 'Dixon, NE' ,
-'31053' : 'Dodge, NE' ,
-'31055' : 'Douglas, NE' ,
-'31057' : 'Dundy, NE' ,
-'31059' : 'Fillmore, NE' ,
-'31061' : 'Franklin, NE' ,
-'31063' : 'Frontier, NE' ,
-'31065' : 'Furnas, NE' ,
-'31067' : 'Gage, NE' ,
-'31069' : 'Garden, NE' ,
-'31071' : 'Garfield, NE' ,
-'31073' : 'Gosper, NE' ,
-'31075' : 'Grant, NE' ,
-'31077' : 'Greeley, NE' ,
-'31079' : 'Hall, NE' ,
-'31081' : 'Hamilton, NE' ,
-'31083' : 'Harlan, NE' ,
-'31085' : 'Hayes, NE' ,
-'31087' : 'Hitchcock, NE' ,
-'31089' : 'Holt, NE' ,
-'31091' : 'Hooker, NE' ,
-'31093' : 'Howard, NE' ,
-'31095' : 'Jefferson, NE' ,
-'31097' : 'Johnson, NE' ,
-'31099' : 'Kearney, NE' ,
-'31101' : 'Keith, NE' ,
-'31103' : 'Keya Paha, NE' ,
-'31105' : 'Kimball, NE' ,
-'31107' : 'Knox, NE' ,
-'31109' : 'Lancaster, NE' ,
-'31111' : 'Lincoln, NE' ,
-'31113' : 'Logan, NE' ,
-'31115' : 'Loup, NE' ,
-'31117' : 'McPherson, NE' ,
-'31119' : 'Madison, NE' ,
-'31121' : 'Merrick, NE' ,
-'31123' : 'Morrill, NE' ,
-'31125' : 'Nance, NE' ,
-'31127' : 'Nemaha, NE' ,
-'31129' : 'Nuckolls, NE' ,
-'31131' : 'Otoe, NE' ,
-'31133' : 'Pawnee, NE' ,
-'31135' : 'Perkins, NE' ,
-'31137' : 'Phelps, NE' ,
-'31139' : 'Pierce, NE' ,
-'31141' : 'Platte, NE' ,
-'31143' : 'Polk, NE' ,
-'31145' : 'Red Willow, NE' ,
-'31147' : 'Richardson, NE' ,
-'31149' : 'Rock, NE' ,
-'31151' : 'Saline, NE' ,
-'31153' : 'Sarpy, NE' ,
-'31155' : 'Saunders, NE' ,
-'31157' : 'Scotts Bluff, NE' ,
-'31159' : 'Seward, NE' ,
-'31161' : 'Sheridan, NE' ,
-'31163' : 'Sherman, NE' ,
-'31165' : 'Sioux, NE' ,
-'31167' : 'Stanton, NE' ,
-'31169' : 'Thayer, NE' ,
-'31171' : 'Thomas, NE' ,
-'31173' : 'Thurston, NE' ,
-'31175' : 'Valley, NE' ,
-'31177' : 'Washington, NE' ,
-'31179' : 'Wayne, NE' ,
-'31181' : 'Webster, NE' ,
-'31183' : 'Wheeler, NE' ,
-'31185' : 'York, NE' ,
-'32000' : 'NEVADA' ,
-'32001' : 'Churchill, NV' ,
-'32003' : 'Clark, NV' ,
-'32005' : 'Douglas, NV' ,
-'32007' : 'Elko, NV' ,
-'32009' : 'Esmeralda, NV' ,
-'32011' : 'Eureka, NV' ,
-'32013' : 'Humboldt, NV' ,
-'32015' : 'Lander, NV' ,
-'32017' : 'Lincoln, NV' ,
-'32019' : 'Lyon, NV' ,
-'32021' : 'Mineral, NV' ,
-'32023' : 'Nye, NV' ,
-'32027' : 'Pershing, NV' ,
-'32029' : 'Storey, NV' ,
-'32031' : 'Washoe, NV' ,
-'32033' : 'White Pine, NV' ,
-'32510' : 'Carson City city, NV' ,
-'33000' : 'NEW HAMPSHIRE' ,
-'33001' : 'Belknap, NH' ,
-'33003' : 'Carroll, NH' ,
-'33005' : 'Cheshire, NH' ,
-'33007' : 'Coos, NH' ,
-'33009' : 'Grafton, NH' ,
-'33011' : 'Hillsborough, NH' ,
-'33013' : 'Merrimack, NH' ,
-'33015' : 'Rockingham, NH' ,
-'33017' : 'Strafford, NH' ,
-'33019' : 'Sullivan, NH' ,
-'34000' : 'NEW JERSEY' ,
-'34001' : 'Atlantic, NJ' ,
-'34003' : 'Bergen, NJ' ,
-'34005' : 'Burlington, NJ' ,
-'34007' : 'Camden, NJ' ,
-'34009' : 'Cape May, NJ' ,
-'34011' : 'Cumberland, NJ' ,
-'34013' : 'Essex, NJ' ,
-'34015' : 'Gloucester, NJ' ,
-'34017' : 'Hudson, NJ' ,
-'34019' : 'Hunterdon, NJ' ,
-'34021' : 'Mercer, NJ' ,
-'34023' : 'Middlesex, NJ' ,
-'34025' : 'Monmouth, NJ' ,
-'34027' : 'Morris, NJ' ,
-'34029' : 'Ocean, NJ' ,
-'34031' : 'Passaic, NJ' ,
-'34033' : 'Salem, NJ' ,
-'34035' : 'Somerset, NJ' ,
-'34037' : 'Sussex, NJ' ,
-'34039' : 'Union, NJ' ,
-'34041' : 'Warren, NJ' ,
-'35000' : 'NEW MEXICO' ,
-'35001' : 'Bernalillo, NM' ,
-'35003' : 'Catron, NM' ,
-'35005' : 'Chaves, NM' ,
-'35006' : 'Cibola, NM' ,
-'35007' : 'Colfax, NM' ,
-'35009' : 'Curry, NM' ,
-'35011' : 'De Baca, NM' ,
-'35013' : 'Dona Ana, NM' ,
-'35015' : 'Eddy, NM' ,
-'35017' : 'Grant, NM' ,
-'35019' : 'Guadalupe, NM' ,
-'35021' : 'Harding, NM' ,
-'35023' : 'Hidalgo, NM' ,
-'35025' : 'Lea, NM' ,
-'35027' : 'Lincoln, NM' ,
-'35028' : 'Los Alamos, NM' ,
-'35029' : 'Luna, NM' ,
-'35031' : 'McKinley, NM' ,
-'35033' : 'Mora, NM' ,
-'35035' : 'Otero, NM' ,
-'35037' : 'Quay, NM' ,
-'35039' : 'Rio Arriba, NM' ,
-'35041' : 'Roosevelt, NM' ,
-'35043' : 'Sandoval, NM' ,
-'35045' : 'San Juan, NM' ,
-'35047' : 'San Miguel, NM' ,
-'35049' : 'Santa Fe, NM' ,
-'35051' : 'Sierra, NM' ,
-'35053' : 'Socorro, NM' ,
-'35055' : 'Taos, NM' ,
-'35057' : 'Torrance, NM' ,
-'35059' : 'Union, NM' ,
-'35061' : 'Valencia, NM' ,
-'36000' : 'NEW YORK' ,
-'36001' : 'Albany, NY' ,
-'36003' : 'Allegany, NY' ,
-'36005' : 'Bronx, NY' ,
-'36007' : 'Broome, NY' ,
-'36009' : 'Cattaraugus, NY' ,
-'36011' : 'Cayuga, NY' ,
-'36013' : 'Chautauqua, NY' ,
-'36015' : 'Chemung, NY' ,
-'36017' : 'Chenango, NY' ,
-'36019' : 'Clinton, NY' ,
-'36021' : 'Columbia, NY' ,
-'36023' : 'Cortland, NY' ,
-'36025' : 'Delaware, NY' ,
-'36027' : 'Dutchess, NY' ,
-'36029' : 'Erie, NY' ,
-'36031' : 'Essex, NY' ,
-'36033' : 'Franklin, NY' ,
-'36035' : 'Fulton, NY' ,
-'36037' : 'Genesee, NY' ,
-'36039' : 'Greene, NY' ,
-'36041' : 'Hamilton, NY' ,
-'36043' : 'Herkimer, NY' ,
-'36045' : 'Jefferson, NY' ,
-'36047' : 'Kings, NY' ,
-'36049' : 'Lewis, NY' ,
-'36051' : 'Livingston, NY' ,
-'36053' : 'Madison, NY' ,
-'36055' : 'Monroe, NY' ,
-'36057' : 'Montgomery, NY' ,
-'36059' : 'Nassau, NY' ,
-'36061' : 'New York, NY' ,
-'36063' : 'Niagara, NY' ,
-'36065' : 'Oneida, NY' ,
-'36067' : 'Onondaga, NY' ,
-'36069' : 'Ontario, NY' ,
-'36071' : 'Orange, NY' ,
-'36073' : 'Orleans, NY' ,
-'36075' : 'Oswego, NY' ,
-'36077' : 'Otsego, NY' ,
-'36079' : 'Putnam, NY' ,
-'36081' : 'Queens, NY' ,
-'36083' : 'Rensselaer, NY' ,
-'36085' : 'Richmond, NY' ,
-'36087' : 'Rockland, NY' ,
-'36089' : 'St. Lawrence, NY' ,
-'36091' : 'Saratoga, NY' ,
-'36093' : 'Schenectady, NY' ,
-'36095' : 'Schoharie, NY' ,
-'36097' : 'Schuyler, NY' ,
-'36099' : 'Seneca, NY' ,
-'36101' : 'Steuben, NY' ,
-'36103' : 'Suffolk, NY' ,
-'36105' : 'Sullivan, NY' ,
-'36107' : 'Tioga, NY' ,
-'36109' : 'Tompkins, NY' ,
-'36111' : 'Ulster, NY' ,
-'36113' : 'Warren, NY' ,
-'36115' : 'Washington, NY' ,
-'36117' : 'Wayne, NY' ,
-'36119' : 'Westchester, NY' ,
-'36121' : 'Wyoming, NY' ,
-'36123' : 'Yates, NY' ,
-'37000' : 'NORTH CAROLINA' ,
-'37001' : 'Alamance, NC' ,
-'37003' : 'Alexander, NC' ,
-'37005' : 'Alleghany, NC' ,
-'37007' : 'Anson, NC' ,
-'37009' : 'Ashe, NC' ,
-'37011' : 'Avery, NC' ,
-'37013' : 'Beaufort, NC' ,
-'37015' : 'Bertie, NC' ,
-'37017' : 'Bladen, NC' ,
-'37019' : 'Brunswick, NC' ,
-'37021' : 'Buncombe, NC' ,
-'37023' : 'Burke, NC' ,
-'37025' : 'Cabarrus, NC' ,
-'37027' : 'Caldwell, NC' ,
-'37029' : 'Camden, NC' ,
-'37031' : 'Carteret, NC' ,
-'37033' : 'Caswell, NC' ,
-'37035' : 'Catawba, NC' ,
-'37037' : 'Chatham, NC' ,
-'37039' : 'Cherokee, NC' ,
-'37041' : 'Chowan, NC' ,
-'37043' : 'Clay, NC' ,
-'37045' : 'Cleveland, NC' ,
-'37047' : 'Columbus, NC' ,
-'37049' : 'Craven, NC' ,
-'37051' : 'Cumberland, NC' ,
-'37053' : 'Currituck, NC' ,
-'37055' : 'Dare, NC' ,
-'37057' : 'Davidson, NC' ,
-'37059' : 'Davie, NC' ,
-'37061' : 'Duplin, NC' ,
-'37063' : 'Durham, NC' ,
-'37065' : 'Edgecombe, NC' ,
-'37067' : 'Forsyth, NC' ,
-'37069' : 'Franklin, NC' ,
-'37071' : 'Gaston, NC' ,
-'37073' : 'Gates, NC' ,
-'37075' : 'Graham, NC' ,
-'37077' : 'Granville, NC' ,
-'37079' : 'Greene, NC' ,
-'37081' : 'Guilford, NC' ,
-'37083' : 'Halifax, NC' ,
-'37085' : 'Harnett, NC' ,
-'37087' : 'Haywood, NC' ,
-'37089' : 'Henderson, NC' ,
-'37091' : 'Hertford, NC' ,
-'37093' : 'Hoke, NC' ,
-'37095' : 'Hyde, NC' ,
-'37097' : 'Iredell, NC' ,
-'37099' : 'Jackson, NC' ,
-'37101' : 'Johnston, NC' ,
-'37103' : 'Jones, NC' ,
-'37105' : 'Lee, NC' ,
-'37107' : 'Lenoir, NC' ,
-'37109' : 'Lincoln, NC' ,
-'37111' : 'McDowell, NC' ,
-'37113' : 'Macon, NC' ,
-'37115' : 'Madison, NC' ,
-'37117' : 'Martin, NC' ,
-'37119' : 'Mecklenburg, NC' ,
-'37121' : 'Mitchell, NC' ,
-'37123' : 'Montgomery, NC' ,
-'37125' : 'Moore, NC' ,
-'37127' : 'Nash, NC' ,
-'37129' : 'New Hanover, NC' ,
-'37131' : 'Northampton, NC' ,
-'37133' : 'Onslow, NC' ,
-'37135' : 'Orange, NC' ,
-'37137' : 'Pamlico, NC' ,
-'37139' : 'Pasquotank, NC' ,
-'37141' : 'Pender, NC' ,
-'37143' : 'Perquimans, NC' ,
-'37145' : 'Person, NC' ,
-'37147' : 'Pitt, NC' ,
-'37149' : 'Polk, NC' ,
-'37151' : 'Randolph, NC' ,
-'37153' : 'Richmond, NC' ,
-'37155' : 'Robeson, NC' ,
-'37157' : 'Rockingham, NC' ,
-'37159' : 'Rowan, NC' ,
-'37161' : 'Rutherford, NC' ,
-'37163' : 'Sampson, NC' ,
-'37165' : 'Scotland, NC' ,
-'37167' : 'Stanly, NC' ,
-'37169' : 'Stokes, NC' ,
-'37171' : 'Surry, NC' ,
-'37173' : 'Swain, NC' ,
-'37175' : 'Transylvania, NC' ,
-'37177' : 'Tyrrell, NC' ,
-'37179' : 'Union, NC' ,
-'37181' : 'Vance, NC' ,
-'37183' : 'Wake, NC' ,
-'37185' : 'Warren, NC' ,
-'37187' : 'Washington, NC' ,
-'37189' : 'Watauga, NC' ,
-'37191' : 'Wayne, NC' ,
-'37193' : 'Wilkes, NC' ,
-'37195' : 'Wilson, NC' ,
-'37197' : 'Yadkin, NC' ,
-'37199' : 'Yancey, NC' ,
-'38000' : 'NORTH DAKOTA' ,
-'38001' : 'Adams, ND' ,
-'38003' : 'Barnes, ND' ,
-'38005' : 'Benson, ND' ,
-'38007' : 'Billings, ND' ,
-'38009' : 'Bottineau, ND' ,
-'38011' : 'Bowman, ND' ,
-'38013' : 'Burke, ND' ,
-'38015' : 'Burleigh, ND' ,
-'38017' : 'Cass, ND' ,
-'38019' : 'Cavalier, ND' ,
-'38021' : 'Dickey, ND' ,
-'38023' : 'Divide, ND' ,
-'38025' : 'Dunn, ND' ,
-'38027' : 'Eddy, ND' ,
-'38029' : 'Emmons, ND' ,
-'38031' : 'Foster, ND' ,
-'38033' : 'Golden Valley, ND' ,
-'38035' : 'Grand Forks, ND' ,
-'38037' : 'Grant, ND' ,
-'38039' : 'Griggs, ND' ,
-'38041' : 'Hettinger, ND' ,
-'38043' : 'Kidder, ND' ,
-'38045' : 'La Moure, ND' ,
-'38047' : 'Logan, ND' ,
-'38049' : 'McHenry, ND' ,
-'38051' : 'McIntosh, ND' ,
-'38053' : 'McKenzie, ND' ,
-'38055' : 'McLean, ND' ,
-'38057' : 'Mercer, ND' ,
-'38059' : 'Morton, ND' ,
-'38061' : 'Mountrail, ND' ,
-'38063' : 'Nelson, ND' ,
-'38065' : 'Oliver, ND' ,
-'38067' : 'Pembina, ND' ,
-'38069' : 'Pierce, ND' ,
-'38071' : 'Ramsey, ND' ,
-'38073' : 'Ransom, ND' ,
-'38075' : 'Renville, ND' ,
-'38077' : 'Richland, ND' ,
-'38079' : 'Rolette, ND' ,
-'38081' : 'Sargent, ND' ,
-'38083' : 'Sheridan, ND' ,
-'38085' : 'Sioux, ND' ,
-'38087' : 'Slope, ND' ,
-'38089' : 'Stark, ND' ,
-'38091' : 'Steele, ND' ,
-'38093' : 'Stutsman, ND' ,
-'38095' : 'Towner, ND' ,
-'38097' : 'Traill, ND' ,
-'38099' : 'Walsh, ND' ,
-'38101' : 'Ward, ND' ,
-'38103' : 'Wells, ND' ,
-'38105' : 'Williams, ND' ,
-'39000' : 'OHIO' ,
-'39001' : 'Adams, OH' ,
-'39003' : 'Allen, OH' ,
-'39005' : 'Ashland, OH' ,
-'39007' : 'Ashtabula, OH' ,
-'39009' : 'Athens, OH' ,
-'39011' : 'Auglaize, OH' ,
-'39013' : 'Belmont, OH' ,
-'39015' : 'Brown, OH' ,
-'39017' : 'Butler, OH' ,
-'39019' : 'Carroll, OH' ,
-'39021' : 'Champaign, OH' ,
-'39023' : 'Clark, OH' ,
-'39025' : 'Clermont, OH' ,
-'39027' : 'Clinton, OH' ,
-'39029' : 'Columbiana, OH' ,
-'39031' : 'Coshocton, OH' ,
-'39033' : 'Crawford, OH' ,
-'39035' : 'Cuyahoga, OH' ,
-'39037' : 'Darke, OH' ,
-'39039' : 'Defiance, OH' ,
-'39041' : 'Delaware, OH' ,
-'39043' : 'Erie, OH' ,
-'39045' : 'Fairfield, OH' ,
-'39047' : 'Fayette, OH' ,
-'39049' : 'Franklin, OH' ,
-'39051' : 'Fulton, OH' ,
-'39053' : 'Gallia, OH' ,
-'39055' : 'Geauga, OH' ,
-'39057' : 'Greene, OH' ,
-'39059' : 'Guernsey, OH' ,
-'39061' : 'Hamilton, OH' ,
-'39063' : 'Hancock, OH' ,
-'39065' : 'Hardin, OH' ,
-'39067' : 'Harrison, OH' ,
-'39069' : 'Henry, OH' ,
-'39071' : 'Highland, OH' ,
-'39073' : 'Hocking, OH' ,
-'39075' : 'Holmes, OH' ,
-'39077' : 'Huron, OH' ,
-'39079' : 'Jackson, OH' ,
-'39081' : 'Jefferson, OH' ,
-'39083' : 'Knox, OH' ,
-'39085' : 'Lake, OH' ,
-'39087' : 'Lawrence, OH' ,
-'39089' : 'Licking, OH' ,
-'39091' : 'Logan, OH' ,
-'39093' : 'Lorain, OH' ,
-'39095' : 'Lucas, OH' ,
-'39097' : 'Madison, OH' ,
-'39099' : 'Mahoning, OH' ,
-'39101' : 'Marion, OH' ,
-'39103' : 'Medina, OH' ,
-'39105' : 'Meigs, OH' ,
-'39107' : 'Mercer, OH' ,
-'39109' : 'Miami, OH' ,
-'39111' : 'Monroe, OH' ,
-'39113' : 'Montgomery, OH' ,
-'39115' : 'Morgan, OH' ,
-'39117' : 'Morrow, OH' ,
-'39119' : 'Muskingum, OH' ,
-'39121' : 'Noble, OH' ,
-'39123' : 'Ottawa, OH' ,
-'39125' : 'Paulding, OH' ,
-'39127' : 'Perry, OH' ,
-'39129' : 'Pickaway, OH' ,
-'39131' : 'Pike, OH' ,
-'39133' : 'Portage, OH' ,
-'39135' : 'Preble, OH' ,
-'39137' : 'Putnam, OH' ,
-'39139' : 'Richland, OH' ,
-'39141' : 'Ross, OH' ,
-'39143' : 'Sandusky, OH' ,
-'39145' : 'Scioto, OH' ,
-'39147' : 'Seneca, OH' ,
-'39149' : 'Shelby, OH' ,
-'39151' : 'Stark, OH' ,
-'39153' : 'Summit, OH' ,
-'39155' : 'Trumbull, OH' ,
-'39157' : 'Tuscarawas, OH' ,
-'39159' : 'Union, OH' ,
-'39161' : 'Van Wert, OH' ,
-'39163' : 'Vinton, OH' ,
-'39165' : 'Warren, OH' ,
-'39167' : 'Washington, OH' ,
-'39169' : 'Wayne, OH' ,
-'39171' : 'Williams, OH' ,
-'39173' : 'Wood, OH' ,
-'39175' : 'Wyandot, OH' ,
-'40000' : 'OKLAHOMA' ,
-'40001' : 'Adair, OK' ,
-'40003' : 'Alfalfa, OK' ,
-'40005' : 'Atoka, OK' ,
-'40007' : 'Beaver, OK' ,
-'40009' : 'Beckham, OK' ,
-'40011' : 'Blaine, OK' ,
-'40013' : 'Bryan, OK' ,
-'40015' : 'Caddo, OK' ,
-'40017' : 'Canadian, OK' ,
-'40019' : 'Carter, OK' ,
-'40021' : 'Cherokee, OK' ,
-'40023' : 'Choctaw, OK' ,
-'40025' : 'Cimarron, OK' ,
-'40027' : 'Cleveland, OK' ,
-'40029' : 'Coal, OK' ,
-'40031' : 'Comanche, OK' ,
-'40033' : 'Cotton, OK' ,
-'40035' : 'Craig, OK' ,
-'40037' : 'Creek, OK' ,
-'40039' : 'Custer, OK' ,
-'40041' : 'Delaware, OK' ,
-'40043' : 'Dewey, OK' ,
-'40045' : 'Ellis, OK' ,
-'40047' : 'Garfield, OK' ,
-'40049' : 'Garvin, OK' ,
-'40051' : 'Grady, OK' ,
-'40053' : 'Grant, OK' ,
-'40055' : 'Greer, OK' ,
-'40057' : 'Harmon, OK' ,
-'40059' : 'Harper, OK' ,
-'40061' : 'Haskell, OK' ,
-'40063' : 'Hughes, OK' ,
-'40065' : 'Jackson, OK' ,
-'40067' : 'Jefferson, OK' ,
-'40069' : 'Johnston, OK' ,
-'40071' : 'Kay, OK' ,
-'40073' : 'Kingfisher, OK' ,
-'40075' : 'Kiowa, OK' ,
-'40077' : 'Latimer, OK' ,
-'40079' : 'Le Flore, OK' ,
-'40081' : 'Lincoln, OK' ,
-'40083' : 'Logan, OK' ,
-'40085' : 'Love, OK' ,
-'40087' : 'McClain, OK' ,
-'40089' : 'McCurtain, OK' ,
-'40091' : 'McIntosh, OK' ,
-'40093' : 'Major, OK' ,
-'40095' : 'Marshall, OK' ,
-'40097' : 'Mayes, OK' ,
-'40099' : 'Murray, OK' ,
-'40101' : 'Muskogee, OK' ,
-'40103' : 'Noble, OK' ,
-'40105' : 'Nowata, OK' ,
-'40107' : 'Okfuskee, OK' ,
-'40109' : 'Oklahoma, OK' ,
-'40111' : 'Okmulgee, OK' ,
-'40113' : 'Osage, OK' ,
-'40115' : 'Ottawa, OK' ,
-'40117' : 'Pawnee, OK' ,
-'40119' : 'Payne, OK' ,
-'40121' : 'Pittsburg, OK' ,
-'40123' : 'Pontotoc, OK' ,
-'40125' : 'Pottawatomie, OK' ,
-'40127' : 'Pushmataha, OK' ,
-'40129' : 'Roger Mills, OK' ,
-'40131' : 'Rogers, OK' ,
-'40133' : 'Seminole, OK' ,
-'40135' : 'Sequoyah, OK' ,
-'40137' : 'Stephens, OK' ,
-'40139' : 'Texas, OK' ,
-'40141' : 'Tillman, OK' ,
-'40143' : 'Tulsa, OK' ,
-'40145' : 'Wagoner, OK' ,
-'40147' : 'Washington, OK' ,
-'40149' : 'Washita, OK' ,
-'40151' : 'Woods, OK' ,
-'40153' : 'Woodward, OK' ,
-'41000' : 'OREGON' ,
-'41001' : 'Baker, OR' ,
-'41003' : 'Benton, OR' ,
-'41005' : 'Clackamas, OR' ,
-'41007' : 'Clatsop, OR' ,
-'41009' : 'Columbia, OR' ,
-'41011' : 'Coos, OR' ,
-'41013' : 'Crook, OR' ,
-'41015' : 'Curry, OR' ,
-'41017' : 'Deschutes, OR' ,
-'41019' : 'Douglas, OR' ,
-'41021' : 'Gilliam, OR' ,
-'41023' : 'Grant, OR' ,
-'41025' : 'Harney, OR' ,
-'41027' : 'Hood River, OR' ,
-'41029' : 'Jackson, OR' ,
-'41031' : 'Jefferson, OR' ,
-'41033' : 'Josephine, OR' ,
-'41035' : 'Klamath, OR' ,
-'41037' : 'Lake, OR' ,
-'41039' : 'Lane, OR' ,
-'41041' : 'Lincoln, OR' ,
-'41043' : 'Linn, OR' ,
-'41045' : 'Malheur, OR' ,
-'41047' : 'Marion, OR' ,
-'41049' : 'Morrow, OR' ,
-'41051' : 'Multnomah, OR' ,
-'41053' : 'Polk, OR' ,
-'41055' : 'Sherman, OR' ,
-'41057' : 'Tillamook, OR' ,
-'41059' : 'Umatilla, OR' ,
-'41061' : 'Union, OR' ,
-'41063' : 'Wallowa, OR' ,
-'41065' : 'Wasco, OR' ,
-'41067' : 'Washington, OR' ,
-'41069' : 'Wheeler, OR' ,
-'41071' : 'Yamhill, OR' ,
-'42000' : 'PENNSYLVANIA' ,
-'42001' : 'Adams, PA' ,
-'42003' : 'Allegheny, PA' ,
-'42005' : 'Armstrong, PA' ,
-'42007' : 'Beaver, PA' ,
-'42009' : 'Bedford, PA' ,
-'42011' : 'Berks, PA' ,
-'42013' : 'Blair, PA' ,
-'42015' : 'Bradford, PA' ,
-'42017' : 'Bucks, PA' ,
-'42019' : 'Butler, PA' ,
-'42021' : 'Cambria, PA' ,
-'42023' : 'Cameron, PA' ,
-'42025' : 'Carbon, PA' ,
-'42027' : 'Centre, PA' ,
-'42029' : 'Chester, PA' ,
-'42031' : 'Clarion, PA' ,
-'42033' : 'Clearfield, PA' ,
-'42035' : 'Clinton, PA' ,
-'42037' : 'Columbia, PA' ,
-'42039' : 'Crawford, PA' ,
-'42041' : 'Cumberland, PA' ,
-'42043' : 'Dauphin, PA' ,
-'42045' : 'Delaware, PA' ,
-'42047' : 'Elk, PA' ,
-'42049' : 'Erie, PA' ,
-'42051' : 'Fayette, PA' ,
-'42053' : 'Forest, PA' ,
-'42055' : 'Franklin, PA' ,
-'42057' : 'Fulton, PA' ,
-'42059' : 'Greene, PA' ,
-'42061' : 'Huntingdon, PA' ,
-'42063' : 'Indiana, PA' ,
-'42065' : 'Jefferson, PA' ,
-'42067' : 'Juniata, PA' ,
-'42069' : 'Lackawanna, PA' ,
-'42071' : 'Lancaster, PA' ,
-'42073' : 'Lawrence, PA' ,
-'42075' : 'Lebanon, PA' ,
-'42077' : 'Lehigh, PA' ,
-'42079' : 'Luzerne, PA' ,
-'42081' : 'Lycoming, PA' ,
-'42083' : 'McKean, PA' ,
-'42085' : 'Mercer, PA' ,
-'42087' : 'Mifflin, PA' ,
-'42089' : 'Monroe, PA' ,
-'42091' : 'Montgomery, PA' ,
-'42093' : 'Montour, PA' ,
-'42095' : 'Northampton, PA' ,
-'42097' : 'Northumberland, PA' ,
-'42099' : 'Perry, PA' ,
-'42101' : 'Philadelphia, PA' ,
-'42103' : 'Pike, PA' ,
-'42105' : 'Potter, PA' ,
-'42107' : 'Schuylkill, PA' ,
-'42109' : 'Snyder, PA' ,
-'42111' : 'Somerset, PA' ,
-'42113' : 'Sullivan, PA' ,
-'42115' : 'Susquehanna, PA' ,
-'42117' : 'Tioga, PA' ,
-'42119' : 'Union, PA' ,
-'42121' : 'Venango, PA' ,
-'42123' : 'Warren, PA' ,
-'42125' : 'Washington, PA' ,
-'42127' : 'Wayne, PA' ,
-'42129' : 'Westmoreland, PA' ,
-'42131' : 'Wyoming, PA' ,
-'42133' : 'York, PA' ,
-'44000' : 'RHODE ISLAND' ,
-'44001' : 'Bristol, RI' ,
-'44003' : 'Kent, RI' ,
-'44005' : 'Newport, RI' ,
-'44007' : 'Providence, RI' ,
-'44009' : 'Washington, RI' ,
-'45000' : 'SOUTH CAROLINA' ,
-'45001' : 'Abbeville, SC' ,
-'45003' : 'Aiken, SC' ,
-'45005' : 'Allendale, SC' ,
-'45007' : 'Anderson, SC' ,
-'45009' : 'Bamberg, SC' ,
-'45011' : 'Barnwell, SC' ,
-'45013' : 'Beaufort, SC' ,
-'45015' : 'Berkeley, SC' ,
-'45017' : 'Calhoun, SC' ,
-'45019' : 'Charleston, SC' ,
-'45021' : 'Cherokee, SC' ,
-'45023' : 'Chester, SC' ,
-'45025' : 'Chesterfield, SC' ,
-'45027' : 'Clarendon, SC' ,
-'45029' : 'Colleton, SC' ,
-'45031' : 'Darlington, SC' ,
-'45033' : 'Dillon, SC' ,
-'45035' : 'Dorchester, SC' ,
-'45037' : 'Edgefield, SC' ,
-'45039' : 'Fairfield, SC' ,
-'45041' : 'Florence, SC' ,
-'45043' : 'Georgetown, SC' ,
-'45045' : 'Greenville, SC' ,
-'45047' : 'Greenwood, SC' ,
-'45049' : 'Hampton, SC' ,
-'45051' : 'Horry, SC' ,
-'45053' : 'Jasper, SC' ,
-'45055' : 'Kershaw, SC' ,
-'45057' : 'Lancaster, SC' ,
-'45059' : 'Laurens, SC' ,
-'45061' : 'Lee, SC' ,
-'45063' : 'Lexington, SC' ,
-'45065' : 'McCormick, SC' ,
-'45067' : 'Marion, SC' ,
-'45069' : 'Marlboro, SC' ,
-'45071' : 'Newberry, SC' ,
-'45073' : 'Oconee, SC' ,
-'45075' : 'Orangeburg, SC' ,
-'45077' : 'Pickens, SC' ,
-'45079' : 'Richland, SC' ,
-'45081' : 'Saluda, SC' ,
-'45083' : 'Spartanburg, SC' ,
-'45085' : 'Sumter, SC' ,
-'45087' : 'Union, SC' ,
-'45089' : 'Williamsburg, SC' ,
-'45091' : 'York, SC' ,
-'46000' : 'SOUTH DAKOTA' ,
-'46003' : 'Aurora, SD' ,
-'46005' : 'Beadle, SD' ,
-'46007' : 'Bennett, SD' ,
-'46009' : 'Bon Homme, SD' ,
-'46011' : 'Brookings, SD' ,
-'46013' : 'Brown, SD' ,
-'46015' : 'Brule, SD' ,
-'46017' : 'Buffalo, SD' ,
-'46019' : 'Butte, SD' ,
-'46021' : 'Campbell, SD' ,
-'46023' : 'Charles Mix, SD' ,
-'46025' : 'Clark, SD' ,
-'46027' : 'Clay, SD' ,
-'46029' : 'Codington, SD' ,
-'46031' : 'Corson, SD' ,
-'46033' : 'Custer, SD' ,
-'46035' : 'Davison, SD' ,
-'46037' : 'Day, SD' ,
-'46039' : 'Deuel, SD' ,
-'46041' : 'Dewey, SD' ,
-'46043' : 'Douglas, SD' ,
-'46045' : 'Edmunds, SD' ,
-'46047' : 'Fall River, SD' ,
-'46049' : 'Faulk, SD' ,
-'46051' : 'Grant, SD' ,
-'46053' : 'Gregory, SD' ,
-'46055' : 'Haakon, SD' ,
-'46057' : 'Hamlin, SD' ,
-'46059' : 'Hand, SD' ,
-'46061' : 'Hanson, SD' ,
-'46063' : 'Harding, SD' ,
-'46065' : 'Hughes, SD' ,
-'46067' : 'Hutchinson, SD' ,
-'46069' : 'Hyde, SD' ,
-'46071' : 'Jackson, SD' ,
-'46073' : 'Jerauld, SD' ,
-'46075' : 'Jones, SD' ,
-'46077' : 'Kingsbury, SD' ,
-'46079' : 'Lake, SD' ,
-'46081' : 'Lawrence, SD' ,
-'46083' : 'Lincoln, SD' ,
-'46085' : 'Lyman, SD' ,
-'46087' : 'McCook, SD' ,
-'46089' : 'McPherson, SD' ,
-'46091' : 'Marshall, SD' ,
-'46093' : 'Meade, SD' ,
-'46095' : 'Mellette, SD' ,
-'46097' : 'Miner, SD' ,
-'46099' : 'Minnehaha, SD' ,
-'46101' : 'Moody, SD' ,
-'46103' : 'Pennington, SD' ,
-'46105' : 'Perkins, SD' ,
-'46107' : 'Potter, SD' ,
-'46109' : 'Roberts, SD' ,
-'46111' : 'Sanborn, SD' ,
-'46113' : 'Shannon, SD' ,
-'46115' : 'Spink, SD' ,
-'46117' : 'Stanley, SD' ,
-'46119' : 'Sully, SD' ,
-'46121' : 'Todd, SD' ,
-'46123' : 'Tripp, SD' ,
-'46125' : 'Turner, SD' ,
-'46127' : 'Union, SD' ,
-'46129' : 'Walworth, SD' ,
-'46135' : 'Yankton, SD' ,
-'46137' : 'Ziebach, SD' ,
-'47000' : 'TENNESSEE' ,
-'47001' : 'Anderson, TN' ,
-'47003' : 'Bedford, TN' ,
-'47005' : 'Benton, TN' ,
-'47007' : 'Bledsoe, TN' ,
-'47009' : 'Blount, TN' ,
-'47011' : 'Bradley, TN' ,
-'47013' : 'Campbell, TN' ,
-'47015' : 'Cannon, TN' ,
-'47017' : 'Carroll, TN' ,
-'47019' : 'Carter, TN' ,
-'47021' : 'Cheatham, TN' ,
-'47023' : 'Chester, TN' ,
-'47025' : 'Claiborne, TN' ,
-'47027' : 'Clay, TN' ,
-'47029' : 'Cocke, TN' ,
-'47031' : 'Coffee, TN' ,
-'47033' : 'Crockett, TN' ,
-'47035' : 'Cumberland, TN' ,
-'47037' : 'Davidson, TN' ,
-'47039' : 'Decatur, TN' ,
-'47041' : 'DeKalb, TN' ,
-'47043' : 'Dickson, TN' ,
-'47045' : 'Dyer, TN' ,
-'47047' : 'Fayette, TN' ,
-'47049' : 'Fentress, TN' ,
-'47051' : 'Franklin, TN' ,
-'47053' : 'Gibson, TN' ,
-'47055' : 'Giles, TN' ,
-'47057' : 'Grainger, TN' ,
-'47059' : 'Greene, TN' ,
-'47061' : 'Grundy, TN' ,
-'47063' : 'Hamblen, TN' ,
-'47065' : 'Hamilton, TN' ,
-'47067' : 'Hancock, TN' ,
-'47069' : 'Hardeman, TN' ,
-'47071' : 'Hardin, TN' ,
-'47073' : 'Hawkins, TN' ,
-'47075' : 'Haywood, TN' ,
-'47077' : 'Henderson, TN' ,
-'47079' : 'Henry, TN' ,
-'47081' : 'Hickman, TN' ,
-'47083' : 'Houston, TN' ,
-'47085' : 'Humphreys, TN' ,
-'47087' : 'Jackson, TN' ,
-'47089' : 'Jefferson, TN' ,
-'47091' : 'Johnson, TN' ,
-'47093' : 'Knox, TN' ,
-'47095' : 'Lake, TN' ,
-'47097' : 'Lauderdale, TN' ,
-'47099' : 'Lawrence, TN' ,
-'47101' : 'Lewis, TN' ,
-'47103' : 'Lincoln, TN' ,
-'47105' : 'Loudon, TN' ,
-'47107' : 'McMinn, TN' ,
-'47109' : 'McNairy, TN' ,
-'47111' : 'Macon, TN' ,
-'47113' : 'Madison, TN' ,
-'47115' : 'Marion, TN' ,
-'47117' : 'Marshall, TN' ,
-'47119' : 'Maury, TN' ,
-'47121' : 'Meigs, TN' ,
-'47123' : 'Monroe, TN' ,
-'47125' : 'Montgomery, TN' ,
-'47127' : 'Moore, TN' ,
-'47129' : 'Morgan, TN' ,
-'47131' : 'Obion, TN' ,
-'47133' : 'Overton, TN' ,
-'47135' : 'Perry, TN' ,
-'47137' : 'Pickett, TN' ,
-'47139' : 'Polk, TN' ,
-'47141' : 'Putnam, TN' ,
-'47143' : 'Rhea, TN' ,
-'47145' : 'Roane, TN' ,
-'47147' : 'Robertson, TN' ,
-'47149' : 'Rutherford, TN' ,
-'47151' : 'Scott, TN' ,
-'47153' : 'Sequatchie, TN' ,
-'47155' : 'Sevier, TN' ,
-'47157' : 'Shelby, TN' ,
-'47159' : 'Smith, TN' ,
-'47161' : 'Stewart, TN' ,
-'47163' : 'Sullivan, TN' ,
-'47165' : 'Sumner, TN' ,
-'47167' : 'Tipton, TN' ,
-'47169' : 'Trousdale, TN' ,
-'47171' : 'Unicoi, TN' ,
-'47173' : 'Union, TN' ,
-'47175' : 'Van Buren, TN' ,
-'47177' : 'Warren, TN' ,
-'47179' : 'Washington, TN' ,
-'47181' : 'Wayne, TN' ,
-'47183' : 'Weakley, TN' ,
-'47185' : 'White, TN' ,
-'47187' : 'Williamson, TN' ,
-'47189' : 'Wilson, TN' ,
-'48000' : 'TEXAS' ,
-'48001' : 'Anderson, TX' ,
-'48003' : 'Andrews, TX' ,
-'48005' : 'Angelina, TX' ,
-'48007' : 'Aransas, TX' ,
-'48009' : 'Archer, TX' ,
-'48011' : 'Armstrong, TX' ,
-'48013' : 'Atascosa, TX' ,
-'48015' : 'Austin, TX' ,
-'48017' : 'Bailey, TX' ,
-'48019' : 'Bandera, TX' ,
-'48021' : 'Bastrop, TX' ,
-'48023' : 'Baylor, TX' ,
-'48025' : 'Bee, TX' ,
-'48027' : 'Bell, TX' ,
-'48029' : 'Bexar, TX' ,
-'48031' : 'Blanco, TX' ,
-'48033' : 'Borden, TX' ,
-'48035' : 'Bosque, TX' ,
-'48037' : 'Bowie, TX' ,
-'48039' : 'Brazoria, TX' ,
-'48041' : 'Brazos, TX' ,
-'48043' : 'Brewster, TX' ,
-'48045' : 'Briscoe, TX' ,
-'48047' : 'Brooks, TX' ,
-'48049' : 'Brown, TX' ,
-'48051' : 'Burleson, TX' ,
-'48053' : 'Burnet, TX' ,
-'48055' : 'Caldwell, TX' ,
-'48057' : 'Calhoun, TX' ,
-'48059' : 'Callahan, TX' ,
-'48061' : 'Cameron, TX' ,
-'48063' : 'Camp, TX' ,
-'48065' : 'Carson, TX' ,
-'48067' : 'Cass, TX' ,
-'48069' : 'Castro, TX' ,
-'48071' : 'Chambers, TX' ,
-'48073' : 'Cherokee, TX' ,
-'48075' : 'Childress, TX' ,
-'48077' : 'Clay, TX' ,
-'48079' : 'Cochran, TX' ,
-'48081' : 'Coke, TX' ,
-'48083' : 'Coleman, TX' ,
-'48085' : 'Collin, TX' ,
-'48087' : 'Collingsworth, TX' ,
-'48089' : 'Colorado, TX' ,
-'48091' : 'Comal, TX' ,
-'48093' : 'Comanche, TX' ,
-'48095' : 'Concho, TX' ,
-'48097' : 'Cooke, TX' ,
-'48099' : 'Coryell, TX' ,
-'48101' : 'Cottle, TX' ,
-'48103' : 'Crane, TX' ,
-'48105' : 'Crockett, TX' ,
-'48107' : 'Crosby, TX' ,
-'48109' : 'Culberson, TX' ,
-'48111' : 'Dallam, TX' ,
-'48113' : 'Dallas, TX' ,
-'48115' : 'Dawson, TX' ,
-'48117' : 'Deaf Smith, TX' ,
-'48119' : 'Delta, TX' ,
-'48121' : 'Denton, TX' ,
-'48123' : 'De Witt, TX' ,
-'48125' : 'Dickens, TX' ,
-'48127' : 'Dimmit, TX' ,
-'48129' : 'Donley, TX' ,
-'48131' : 'Duval, TX' ,
-'48133' : 'Eastland, TX' ,
-'48135' : 'Ector, TX' ,
-'48137' : 'Edwards, TX' ,
-'48139' : 'Ellis, TX' ,
-'48141' : 'El Paso, TX' ,
-'48143' : 'Erath, TX' ,
-'48145' : 'Falls, TX' ,
-'48147' : 'Fannin, TX' ,
-'48149' : 'Fayette, TX' ,
-'48151' : 'Fisher, TX' ,
-'48153' : 'Floyd, TX' ,
-'48155' : 'Foard, TX' ,
-'48157' : 'Fort Bend, TX' ,
-'48159' : 'Franklin, TX' ,
-'48161' : 'Freestone, TX' ,
-'48163' : 'Frio, TX' ,
-'48165' : 'Gaines, TX' ,
-'48167' : 'Galveston, TX' ,
-'48169' : 'Garza, TX' ,
-'48171' : 'Gillespie, TX' ,
-'48173' : 'Glasscock, TX' ,
-'48175' : 'Goliad, TX' ,
-'48177' : 'Gonzales, TX' ,
-'48179' : 'Gray, TX' ,
-'48181' : 'Grayson, TX' ,
-'48183' : 'Gregg, TX' ,
-'48185' : 'Grimes, TX' ,
-'48187' : 'Guadalupe, TX' ,
-'48189' : 'Hale, TX' ,
-'48191' : 'Hall, TX' ,
-'48193' : 'Hamilton, TX' ,
-'48195' : 'Hansford, TX' ,
-'48197' : 'Hardeman, TX' ,
-'48199' : 'Hardin, TX' ,
-'48201' : 'Harris, TX' ,
-'48203' : 'Harrison, TX' ,
-'48205' : 'Hartley, TX' ,
-'48207' : 'Haskell, TX' ,
-'48209' : 'Hays, TX' ,
-'48211' : 'Hemphill, TX' ,
-'48213' : 'Henderson, TX' ,
-'48215' : 'Hidalgo, TX' ,
-'48217' : 'Hill, TX' ,
-'48219' : 'Hockley, TX' ,
-'48221' : 'Hood, TX' ,
-'48223' : 'Hopkins, TX' ,
-'48225' : 'Houston, TX' ,
-'48227' : 'Howard, TX' ,
-'48229' : 'Hudspeth, TX' ,
-'48231' : 'Hunt, TX' ,
-'48233' : 'Hutchinson, TX' ,
-'48235' : 'Irion, TX' ,
-'48237' : 'Jack, TX' ,
-'48239' : 'Jackson, TX' ,
-'48241' : 'Jasper, TX' ,
-'48243' : 'Jeff Davis, TX' ,
-'48245' : 'Jefferson, TX' ,
-'48247' : 'Jim Hogg, TX' ,
-'48249' : 'Jim Wells, TX' ,
-'48251' : 'Johnson, TX' ,
-'48253' : 'Jones, TX' ,
-'48255' : 'Karnes, TX' ,
-'48257' : 'Kaufman, TX' ,
-'48259' : 'Kendall, TX' ,
-'48261' : 'Kenedy, TX' ,
-'48263' : 'Kent, TX' ,
-'48265' : 'Kerr, TX' ,
-'48267' : 'Kimble, TX' ,
-'48269' : 'King, TX' ,
-'48271' : 'Kinney, TX' ,
-'48273' : 'Kleberg, TX' ,
-'48275' : 'Knox, TX' ,
-'48277' : 'Lamar, TX' ,
-'48279' : 'Lamb, TX' ,
-'48281' : 'Lampasas, TX' ,
-'48283' : 'La Salle, TX' ,
-'48285' : 'Lavaca, TX' ,
-'48287' : 'Lee, TX' ,
-'48289' : 'Leon, TX' ,
-'48291' : 'Liberty, TX' ,
-'48293' : 'Limestone, TX' ,
-'48295' : 'Lipscomb, TX' ,
-'48297' : 'Live Oak, TX' ,
-'48299' : 'Llano, TX' ,
-'48301' : 'Loving, TX' ,
-'48303' : 'Lubbock, TX' ,
-'48305' : 'Lynn, TX' ,
-'48307' : 'McCulloch, TX' ,
-'48309' : 'McLennan, TX' ,
-'48311' : 'McMullen, TX' ,
-'48313' : 'Madison, TX' ,
-'48315' : 'Marion, TX' ,
-'48317' : 'Martin, TX' ,
-'48319' : 'Mason, TX' ,
-'48321' : 'Matagorda, TX' ,
-'48323' : 'Maverick, TX' ,
-'48325' : 'Medina, TX' ,
-'48327' : 'Menard, TX' ,
-'48329' : 'Midland, TX' ,
-'48331' : 'Milam, TX' ,
-'48333' : 'Mills, TX' ,
-'48335' : 'Mitchell, TX' ,
-'48337' : 'Montague, TX' ,
-'48339' : 'Montgomery, TX' ,
-'48341' : 'Moore, TX' ,
-'48343' : 'Morris, TX' ,
-'48345' : 'Motley, TX' ,
-'48347' : 'Nacogdoches, TX' ,
-'48349' : 'Navarro, TX' ,
-'48351' : 'Newton, TX' ,
-'48353' : 'Nolan, TX' ,
-'48355' : 'Nueces, TX' ,
-'48357' : 'Ochiltree, TX' ,
-'48359' : 'Oldham, TX' ,
-'48361' : 'Orange, TX' ,
-'48363' : 'Palo Pinto, TX' ,
-'48365' : 'Panola, TX' ,
-'48367' : 'Parker, TX' ,
-'48369' : 'Parmer, TX' ,
-'48371' : 'Pecos, TX' ,
-'48373' : 'Polk, TX' ,
-'48375' : 'Potter, TX' ,
-'48377' : 'Presidio, TX' ,
-'48379' : 'Rains, TX' ,
-'48381' : 'Randall, TX' ,
-'48383' : 'Reagan, TX' ,
-'48385' : 'Real, TX' ,
-'48387' : 'Red River, TX' ,
-'48389' : 'Reeves, TX' ,
-'48391' : 'Refugio, TX' ,
-'48393' : 'Roberts, TX' ,
-'48395' : 'Robertson, TX' ,
-'48397' : 'Rockwall, TX' ,
-'48399' : 'Runnels, TX' ,
-'48401' : 'Rusk, TX' ,
-'48403' : 'Sabine, TX' ,
-'48405' : 'San Augustine, TX' ,
-'48407' : 'San Jacinto, TX' ,
-'48409' : 'San Patricio, TX' ,
-'48411' : 'San Saba, TX' ,
-'48413' : 'Schleicher, TX' ,
-'48415' : 'Scurry, TX' ,
-'48417' : 'Shackelford, TX' ,
-'48419' : 'Shelby, TX' ,
-'48421' : 'Sherman, TX' ,
-'48423' : 'Smith, TX' ,
-'48425' : 'Somervell, TX' ,
-'48427' : 'Starr, TX' ,
-'48429' : 'Stephens, TX' ,
-'48431' : 'Sterling, TX' ,
-'48433' : 'Stonewall, TX' ,
-'48435' : 'Sutton, TX' ,
-'48437' : 'Swisher, TX' ,
-'48439' : 'Tarrant, TX' ,
-'48441' : 'Taylor, TX' ,
-'48443' : 'Terrell, TX' ,
-'48445' : 'Terry, TX' ,
-'48447' : 'Throckmorton, TX' ,
-'48449' : 'Titus, TX' ,
-'48451' : 'Tom Green, TX' ,
-'48453' : 'Travis, TX' ,
-'48455' : 'Trinity, TX' ,
-'48457' : 'Tyler, TX' ,
-'48459' : 'Upshur, TX' ,
-'48461' : 'Upton, TX' ,
-'48463' : 'Uvalde, TX' ,
-'48465' : 'Val Verde, TX' ,
-'48467' : 'Van Zandt, TX' ,
-'48469' : 'Victoria, TX' ,
-'48471' : 'Walker, TX' ,
-'48473' : 'Waller, TX' ,
-'48475' : 'Ward, TX' ,
-'48477' : 'Washington, TX' ,
-'48479' : 'Webb, TX' ,
-'48481' : 'Wharton, TX' ,
-'48483' : 'Wheeler, TX' ,
-'48485' : 'Wichita, TX' ,
-'48487' : 'Wilbarger, TX' ,
-'48489' : 'Willacy, TX' ,
-'48491' : 'Williamson, TX' ,
-'48493' : 'Wilson, TX' ,
-'48495' : 'Winkler, TX' ,
-'48497' : 'Wise, TX' ,
-'48499' : 'Wood, TX' ,
-'48501' : 'Yoakum, TX' ,
-'48503' : 'Young, TX' ,
-'48505' : 'Zapata, TX' ,
-'48507' : 'Zavala, TX' ,
-'49000' : 'UTAH' ,
-'49001' : 'Beaver, UT' ,
-'49003' : 'Box Elder, UT' ,
-'49005' : 'Cache, UT' ,
-'49007' : 'Carbon, UT' ,
-'49009' : 'Daggett, UT' ,
-'49011' : 'Davis, UT' ,
-'49013' : 'Duchesne, UT' ,
-'49015' : 'Emery, UT' ,
-'49017' : 'Garfield, UT' ,
-'49019' : 'Grand, UT' ,
-'49021' : 'Iron, UT' ,
-'49023' : 'Juab, UT' ,
-'49025' : 'Kane, UT' ,
-'49027' : 'Millard, UT' ,
-'49029' : 'Morgan, UT' ,
-'49031' : 'Piute, UT' ,
-'49033' : 'Rich, UT' ,
-'49035' : 'Salt Lake, UT' ,
-'49037' : 'San Juan, UT' ,
-'49039' : 'Sanpete, UT' ,
-'49041' : 'Sevier, UT' ,
-'49043' : 'Summit, UT' ,
-'49045' : 'Tooele, UT' ,
-'49047' : 'Uintah, UT' ,
-'49049' : 'Utah, UT' ,
-'49051' : 'Wasatch, UT' ,
-'49053' : 'Washington, UT' ,
-'49055' : 'Wayne, UT' ,
-'49057' : 'Weber, UT' ,
-'50000' : 'VERMONT' ,
-'50001' : 'Addison, VT' ,
-'50003' : 'Bennington, VT' ,
-'50005' : 'Caledonia, VT' ,
-'50007' : 'Chittenden, VT' ,
-'50009' : 'Essex, VT' ,
-'50011' : 'Franklin, VT' ,
-'50013' : 'Grand Isle, VT' ,
-'50015' : 'Lamoille, VT' ,
-'50017' : 'Orange, VT' ,
-'50019' : 'Orleans, VT' ,
-'50021' : 'Rutland, VT' ,
-'50023' : 'Washington, VT' ,
-'50025' : 'Windham, VT' ,
-'50027' : 'Windsor, VT' ,
-'51000' : 'VIRGINIA' ,
-'51001' : 'Accomack, VA' ,
-'51003' : 'Albemarle, VA' ,
-'51005' : 'Alleghany, VA' ,
-'51007' : 'Amelia, VA' ,
-'51009' : 'Amherst, VA' ,
-'51011' : 'Appomattox, VA' ,
-'51013' : 'Arlington, VA' ,
-'51015' : 'Augusta, VA' ,
-'51017' : 'Bath, VA' ,
-'51019' : 'Bedford, VA' ,
-'51021' : 'Bland, VA' ,
-'51023' : 'Botetourt, VA' ,
-'51025' : 'Brunswick, VA' ,
-'51027' : 'Buchanan, VA' ,
-'51029' : 'Buckingham, VA' ,
-'51031' : 'Campbell, VA' ,
-'51033' : 'Caroline, VA' ,
-'51035' : 'Carroll, VA' ,
-'51036' : 'Charles City, VA' ,
-'51037' : 'Charlotte, VA' ,
-'51041' : 'Chesterfield, VA' ,
-'51043' : 'Clarke, VA' ,
-'51045' : 'Craig, VA' ,
-'51047' : 'Culpeper, VA' ,
-'51049' : 'Cumberland, VA' ,
-'51051' : 'Dickenson, VA' ,
-'51053' : 'Dinwiddie, VA' ,
-'51057' : 'Essex, VA' ,
-'51059' : 'Fairfax, VA' ,
-'51061' : 'Fauquier, VA' ,
-'51063' : 'Floyd, VA' ,
-'51065' : 'Fluvanna, VA' ,
-'51067' : 'Franklin, VA' ,
-'51069' : 'Frederick, VA' ,
-'51071' : 'Giles, VA' ,
-'51073' : 'Gloucester, VA' ,
-'51075' : 'Goochland, VA' ,
-'51077' : 'Grayson, VA' ,
-'51079' : 'Greene, VA' ,
-'51081' : 'Greensville, VA' ,
-'51083' : 'Halifax, VA' ,
-'51085' : 'Hanover, VA' ,
-'51087' : 'Henrico, VA' ,
-'51089' : 'Henry, VA' ,
-'51091' : 'Highland, VA' ,
-'51093' : 'Isle of Wight, VA' ,
-'51095' : 'James City, VA' ,
-'51097' : 'King and Queen, VA' ,
-'51099' : 'King George, VA' ,
-'51101' : 'King William, VA' ,
-'51103' : 'Lancaster, VA' ,
-'51105' : 'Lee, VA' ,
-'51107' : 'Loudoun, VA' ,
-'51109' : 'Louisa, VA' ,
-'51111' : 'Lunenburg, VA' ,
-'51113' : 'Madison, VA' ,
-'51115' : 'Mathews, VA' ,
-'51117' : 'Mecklenburg, VA' ,
-'51119' : 'Middlesex, VA' ,
-'51121' : 'Montgomery, VA' ,
-'51125' : 'Nelson, VA' ,
-'51127' : 'New Kent, VA' ,
-'51131' : 'Northampton, VA' ,
-'51133' : 'Northumberland, VA' ,
-'51135' : 'Nottoway, VA' ,
-'51137' : 'Orange, VA' ,
-'51139' : 'Page, VA' ,
-'51141' : 'Patrick, VA' ,
-'51143' : 'Pittsylvania, VA' ,
-'51145' : 'Powhatan, VA' ,
-'51147' : 'Prince Edward, VA' ,
-'51149' : 'Prince George, VA' ,
-'51153' : 'Prince William, VA' ,
-'51155' : 'Pulaski, VA' ,
-'51157' : 'Rappahannock, VA' ,
-'51159' : 'Richmond, VA' ,
-'51161' : 'Roanoke, VA' ,
-'51163' : 'Rockbridge, VA' ,
-'51165' : 'Rockingham, VA' ,
-'51167' : 'Russell, VA' ,
-'51169' : 'Scott, VA' ,
-'51171' : 'Shenandoah, VA' ,
-'51173' : 'Smyth, VA' ,
-'51175' : 'Southampton, VA' ,
-'51177' : 'Spotsylvania, VA' ,
-'51179' : 'Stafford, VA' ,
-'51181' : 'Surry, VA' ,
-'51183' : 'Sussex, VA' ,
-'51185' : 'Tazewell, VA' ,
-'51187' : 'Warren, VA' ,
-'51191' : 'Washington, VA' ,
-'51193' : 'Westmoreland, VA' ,
-'51195' : 'Wise, VA' ,
-'51197' : 'Wythe, VA' ,
-'51199' : 'York, VA' ,
-'51510' : 'Alexandria, VA' ,
-'51515' : 'Bedford, VA' ,
-'51520' : 'Bristol, VA' ,
-'51530' : 'Buena Vista, VA' ,
-'51540' : 'Charlottesville, VA' ,
-'51550' : 'Chesapeake, VA' ,
-'51560' : 'Clifton Forge, VA' ,
-'51570' : 'Colonial Heights, VA' ,
-'51580' : 'Covington, VA' ,
-'51590' : 'Danville, VA' ,
-'51595' : 'Emporia, VA' ,
-'51600' : 'Fairfax, VA' ,
-'51610' : 'Falls Church, VA' ,
-'51620' : 'Franklin, VA' ,
-'51630' : 'Fredericksburg, VA' ,
-'51640' : 'Galax, VA' ,
-'51650' : 'Hampton, VA' ,
-'51660' : 'Harrisonburg, VA' ,
-'51670' : 'Hopewell, VA' ,
-'51678' : 'Lexington, VA' ,
-'51680' : 'Lynchburg, VA' ,
-'51683' : 'Manassas, VA' ,
-'51685' : 'Manassas Park, VA' ,
-'51690' : 'Martinsville, VA' ,
-'51700' : 'Newport News, VA' ,
-'51710' : 'Norfolk, VA' ,
-'51720' : 'Norton, VA' ,
-'51730' : 'Petersburg, VA' ,
-'51735' : 'Poquoson, VA' ,
-'51740' : 'Portsmouth, VA' ,
-'51750' : 'Radford, VA' ,
-'51760' : 'Richmond, VA' ,
-'51770' : 'Roanoke, VA' ,
-'51775' : 'Salem, VA' ,
-'51780' : 'South Boston, VA' ,
-'51790' : 'Staunton, VA' ,
-'51800' : 'Suffolk, VA' ,
-'51810' : 'Virginia Beach, VA' ,
-'51820' : 'Waynesboro, VA' ,
-'51830' : 'Williamsburg, VA' ,
-'51840' : 'Winchester, VA' ,
-'53000' : 'WASHINGTON' ,
-'53001' : 'Adams, WA' ,
-'53003' : 'Asotin, WA' ,
-'53005' : 'Benton, WA' ,
-'53007' : 'Chelan, WA' ,
-'53009' : 'Clallam, WA' ,
-'53011' : 'Clark, WA' ,
-'53013' : 'Columbia, WA' ,
-'53015' : 'Cowlitz, WA' ,
-'53017' : 'Douglas, WA' ,
-'53019' : 'Ferry, WA' ,
-'53021' : 'Franklin, WA' ,
-'53023' : 'Garfield, WA' ,
-'53025' : 'Grant, WA' ,
-'53027' : 'Grays Harbor, WA' ,
-'53029' : 'Island, WA' ,
-'53031' : 'Jefferson, WA' ,
-'53033' : 'King, WA' ,
-'53035' : 'Kitsap, WA' ,
-'53037' : 'Kittitas, WA' ,
-'53039' : 'Klickitat, WA' ,
-'53041' : 'Lewis, WA' ,
-'53043' : 'Lincoln, WA' ,
-'53045' : 'Mason, WA' ,
-'53047' : 'Okanogan, WA' ,
-'53049' : 'Pacific, WA' ,
-'53051' : 'Pend Oreille, WA' ,
-'53053' : 'Pierce, WA' ,
-'53055' : 'San Juan, WA' ,
-'53057' : 'Skagit, WA' ,
-'53059' : 'Skamania, WA' ,
-'53061' : 'Snohomish, WA' ,
-'53063' : 'Spokane, WA' ,
-'53065' : 'Stevens, WA' ,
-'53067' : 'Thurston, WA' ,
-'53069' : 'Wahkiakum, WA' ,
-'53071' : 'Walla Walla, WA' ,
-'53073' : 'Whatcom, WA' ,
-'53075' : 'Whitman, WA' ,
-'53077' : 'Yakima, WA' ,
-'54000' : 'WEST VIRGINIA' ,
-'54001' : 'Barbour, WV' ,
-'54003' : 'Berkeley, WV' ,
-'54005' : 'Boone, WV' ,
-'54007' : 'Braxton, WV' ,
-'54009' : 'Brooke, WV' ,
-'54011' : 'Cabell, WV' ,
-'54013' : 'Calhoun, WV' ,
-'54015' : 'Clay, WV' ,
-'54017' : 'Doddridge, WV' ,
-'54019' : 'Fayette, WV' ,
-'54021' : 'Gilmer, WV' ,
-'54023' : 'Grant, WV' ,
-'54025' : 'Greenbrier, WV' ,
-'54027' : 'Hampshire, WV' ,
-'54029' : 'Hancock, WV' ,
-'54031' : 'Hardy, WV' ,
-'54033' : 'Harrison, WV' ,
-'54035' : 'Jackson, WV' ,
-'54037' : 'Jefferson, WV' ,
-'54039' : 'Kanawha, WV' ,
-'54041' : 'Lewis, WV' ,
-'54043' : 'Lincoln, WV' ,
-'54045' : 'Logan, WV' ,
-'54047' : 'McDowell, WV' ,
-'54049' : 'Marion, WV' ,
-'54051' : 'Marshall, WV' ,
-'54053' : 'Mason, WV' ,
-'54055' : 'Mercer, WV' ,
-'54057' : 'Mineral, WV' ,
-'54059' : 'Mingo, WV' ,
-'54061' : 'Monongalia, WV' ,
-'54063' : 'Monroe, WV' ,
-'54065' : 'Morgan, WV' ,
-'54067' : 'Nicholas, WV' ,
-'54069' : 'Ohio, WV' ,
-'54071' : 'Pendleton, WV' ,
-'54073' : 'Pleasants, WV' ,
-'54075' : 'Pocahontas, WV' ,
-'54077' : 'Preston, WV' ,
-'54079' : 'Putnam, WV' ,
-'54081' : 'Raleigh, WV' ,
-'54083' : 'Randolph, WV' ,
-'54085' : 'Ritchie, WV' ,
-'54087' : 'Roane, WV' ,
-'54089' : 'Summers, WV' ,
-'54091' : 'Taylor, WV' ,
-'54093' : 'Tucker, WV' ,
-'54095' : 'Tyler, WV' ,
-'54097' : 'Upshur, WV' ,
-'54099' : 'Wayne, WV' ,
-'54101' : 'Webster, WV' ,
-'54103' : 'Wetzel, WV' ,
-'54105' : 'Wirt, WV' ,
-'54107' : 'Wood, WV' ,
-'54109' : 'Wyoming, WV' ,
-'55000' : 'WISCONSIN' ,
-'55001' : 'Adams, WI' ,
-'55003' : 'Ashland, WI' ,
-'55005' : 'Barron, WI' ,
-'55007' : 'Bayfield, WI' ,
-'55009' : 'Brown, WI' ,
-'55011' : 'Buffalo, WI' ,
-'55013' : 'Burnett, WI' ,
-'55015' : 'Calumet, WI' ,
-'55017' : 'Chippewa, WI' ,
-'55019' : 'Clark, WI' ,
-'55021' : 'Columbia, WI' ,
-'55023' : 'Crawford, WI' ,
-'55025' : 'Dane, WI' ,
-'55027' : 'Dodge, WI' ,
-'55029' : 'Door, WI' ,
-'55031' : 'Douglas, WI' ,
-'55033' : 'Dunn, WI' ,
-'55035' : 'Eau Claire, WI' ,
-'55037' : 'Florence, WI' ,
-'55039' : 'Fond du Lac, WI' ,
-'55041' : 'Forest, WI' ,
-'55043' : 'Grant, WI' ,
-'55045' : 'Green, WI' ,
-'55047' : 'Green Lake, WI' ,
-'55049' : 'Iowa, WI' ,
-'55051' : 'Iron, WI' ,
-'55053' : 'Jackson, WI' ,
-'55055' : 'Jefferson, WI' ,
-'55057' : 'Juneau, WI' ,
-'55059' : 'Kenosha, WI' ,
-'55061' : 'Kewaunee, WI' ,
-'55063' : 'La Crosse, WI' ,
-'55065' : 'Lafayette, WI' ,
-'55067' : 'Langlade, WI' ,
-'55069' : 'Lincoln, WI' ,
-'55071' : 'Manitowoc, WI' ,
-'55073' : 'Marathon, WI' ,
-'55075' : 'Marinette, WI' ,
-'55077' : 'Marquette, WI' ,
-'55078' : 'Menominee, WI' ,
-'55079' : 'Milwaukee, WI' ,
-'55081' : 'Monroe, WI' ,
-'55083' : 'Oconto, WI' ,
-'55085' : 'Oneida, WI' ,
-'55087' : 'Outagamie, WI' ,
-'55089' : 'Ozaukee, WI' ,
-'55091' : 'Pepin, WI' ,
-'55093' : 'Pierce, WI' ,
-'55095' : 'Polk, WI' ,
-'55097' : 'Portage, WI' ,
-'55099' : 'Price, WI' ,
-'55101' : 'Racine, WI' ,
-'55103' : 'Richland, WI' ,
-'55105' : 'Rock, WI' ,
-'55107' : 'Rusk, WI' ,
-'55109' : 'St. Croix, WI' ,
-'55111' : 'Sauk, WI' ,
-'55113' : 'Sawyer, WI' ,
-'55115' : 'Shawano, WI' ,
-'55117' : 'Sheboygan, WI' ,
-'55119' : 'Taylor, WI' ,
-'55121' : 'Trempealeau, WI' ,
-'55123' : 'Vernon, WI' ,
-'55125' : 'Vilas, WI' ,
-'55127' : 'Walworth, WI' ,
-'55129' : 'Washburn, WI' ,
-'55131' : 'Washington, WI' ,
-'55133' : 'Waukesha, WI' ,
-'55135' : 'Waupaca, WI' ,
-'55137' : 'Waushara, WI' ,
-'55139' : 'Winnebago, WI' ,
-'55141' : 'Wood, WI' ,
-'56000' : 'WYOMING' ,
-'56001' : 'Albany, WY' ,
-'56003' : 'Big Horn, WY' ,
-'56005' : 'Campbell, WY' ,
-'56007' : 'Carbon, WY' ,
-'56009' : 'Converse, WY' ,
-'56011' : 'Crook, WY' ,
-'56013' : 'Fremont, WY' ,
-'56015' : 'Goshen, WY' ,
-'56017' : 'Hot Springs, WY' ,
-'56019' : 'Johnson, WY' ,
-'56021' : 'Laramie, WY' ,
-'56023' : 'Lincoln, WY' ,
-'56025' : 'Natrona, WY' ,
-'56027' : 'Niobrara, WY' ,
-'56029' : 'Park, WY' ,
-'56031' : 'Platte, WY' ,
-'56033' : 'Sheridan, WY' ,
-'56035' : 'Sublette, WY' ,
-'56037' : 'Sweetwater, WY' ,
-'56039' : 'Teton, WY' ,
-'56041' : 'Uinta, WY' ,
-'56043' : 'Washakie, WY' ,
-'56045' : 'Weston, WY' ,
-}
-
-def fipsstate(fips,countyfp):
-    tags = {}
-
-    if not fips:
-        tags['is_in'] = 'USA'
-        tags['is_in:country'] = 'USA'
-        tags['is_in:country_code'] = 'US'
-        return tags
-
-    if fips not in fipscodes:
-        raise KeyError, 'missing FIPS code', fips
-
-    state, statecode, isocode = fipscodes[fips]
-    county_fips_code = fips + "" + countyfp
-    county = county_fips[county_fips_code]
-    tags["tiger:county"] = county
-    tags["is_in:county"] = county
-
-    tags["is_in"] =  'USA, '+state
-    tags["is_in:state"] =  state
-    tags["is_in:state_code"] = statecode
-    tags["is_in:country_code"] = isocode
-
-    if isocode == 'US':
-        tags["is_in:iso_3166_2"] =  isocode+':'+statecode
-        tags["is_in:country"] = "USA"
-
-    else:
-        # Reasonable to specify both here
-        tags["is_in:country"] = 'USA;'+state
-
-    return tags
-
-def parse_shp_for_osm( filename ):
+def parse_shp_for_geom_and_tags( filename ):
     #ogr.RegisterAll()
 
     dr = ogr.GetDriverByName("ESRI Shapefile")
@@ -3371,6 +53,12 @@ def parse_shp_for_osm( filename ):
 
     poLayer = poDS.GetLayer( 0 )
 
+    fieldNameList = []
+    layerDefinition = poLayer.GetLayerDefn()
+    for i in range(layerDefinition.GetFieldCount()):
+        fieldNameList.append(layerDefinition.GetFieldDefn(i).GetName())
+    # sys.stderr.write(",".join(fieldNameList))
+
     poLayer.ResetReading()
 
     ret = []
@@ -3380,71 +68,71 @@ def parse_shp_for_osm( filename ):
         tags = {}
         
         # WAY ID
-        tags[iSource + ":way_id"] = int( poFeature.GetField("TLID") )
+        tags["tiger:way_id"] = int( poFeature.GetField("TLID") )
         
-       # FEATURE IDENTIFICATION
+        # FEATURE IDENTIFICATION
         mtfcc = poFeature.GetField("MTFCC");
         if mtfcc != None:
 
-           if mtfcc == "L4010":        #Pipeline
-               tags["man_made"] = "pipeline"
-           if mtfcc == "L4020":        #Powerline
-               tags["power"] = "line"
-           if mtfcc == "L4031":        #Aerial Tramway/Ski Lift
-               tags["aerialway"] = "cable_car"
-           if mtfcc == "L4110":        #Fence Line
-               tags["barrier"] = "fence"
-           if mtfcc == "L4125":        #Cliff/Escarpment
-               tags["natural"] = "cliff"
-           if mtfcc == "L4165":        #Ferry Crossing
-               tags["route"] = "ferry"
-           if mtfcc == "R1011":        #Railroad Feature (Main, Spur, or Yard)
-               tags["railway"] = "rail"
-               ttyp = poFeature.GetField("TTYP")
-               if ttyp != None:
-                   if ttyp == "S":
-                       tags["service"] = "spur"
-                   if ttyp == "Y":
-                       tags["service"] = "yard"
-                   tags["tiger:ttyp"] = ttyp
-           if mtfcc == "R1051":        #Carline, Streetcar Track, Monorail, Other Mass Transit Rail)
-               tags["railway"] = "light_rail"
-           if mtfcc == "R1052":        #Cog Rail Line, Incline Rail Line, Tram
-               tags["railway"] = "incline"
-           if mtfcc == "S1100":
-               tags["highway"] = "primary"
-           if mtfcc == "S1200":
-               tags["highway"] = "secondary"
-           if mtfcc == "S1400":
-               tags["highway"] = "residential"
-           if mtfcc == "S1500":
-               tags["highway"] = "track"
-           if mtfcc == "S1630":        #Ramp
-               tags["highway"] = "motorway_link"
-           if mtfcc == "S1640":        #Service Drive usually along a limited access highway
-               tags["highway"] = "service"
-           if mtfcc == "S1710":        #Walkway/Pedestrian Trail
-               tags["highway"] = "path"
-           if mtfcc == "S1720":
-               tags["highway"] = "steps"
-           if mtfcc == "S1730":        #Alley
-               tags["highway"] = "service"
-               tags["service"] = "alley"
-           if mtfcc == "S1740":        #Private Road for service vehicles (logging, oil, fields, ranches, etc.)
-               tags["highway"] = "service"
-               tags["access"] = "private"
-           if mtfcc == "S1750":        #Private Driveway
-               tags["highway"] = "service"
-               tags["access"] = "private"
-               tags["service"] = "driveway"
-           if mtfcc == "S1780":        #Parking Lot Road
-               tags["highway"] = "service"
-               tags["service"] = "parking_aisle"
-           if mtfcc == "S1820":        #Bike Path or Trail
-               tags["highway"] = "cycleway"
-           if mtfcc == "S1830":        #Bridle Path
-               tags["highway"] = "bridleway"
-           tags["tiger:mtfcc"] = mtfcc
+            if mtfcc == "L4010":        #Pipeline
+                tags["man_made"] = "pipeline"
+            if mtfcc == "L4020":        #Powerline
+                tags["power"] = "line"
+            if mtfcc == "L4031":        #Aerial Tramway/Ski Lift
+                tags["aerialway"] = "cable_car"
+            if mtfcc == "L4110":        #Fence Line
+                tags["barrier"] = "fence"
+            if mtfcc == "L4125":        #Cliff/Escarpment
+                tags["natural"] = "cliff"
+            if mtfcc == "L4165":        #Ferry Crossing
+                tags["route"] = "ferry"
+            if mtfcc == "R1011":        #Railroad Feature (Main, Spur, or Yard)
+                tags["railway"] = "rail"
+                ttyp = poFeature.GetField("TTYP")
+                if ttyp != None:
+                    if ttyp == "S":
+                        tags["service"] = "spur"
+                    if ttyp == "Y":
+                        tags["service"] = "yard"
+                    tags["tiger:ttyp"] = ttyp
+            if mtfcc == "R1051":        #Carline, Streetcar Track, Monorail, Other Mass Transit Rail)
+                tags["railway"] = "light_rail"
+            if mtfcc == "R1052":        #Cog Rail Line, Incline Rail Line, Tram
+                tags["railway"] = "incline"
+            if mtfcc == "S1100":
+                tags["highway"] = "primary"
+            if mtfcc == "S1200":
+                tags["highway"] = "secondary"
+            if mtfcc == "S1400":
+                tags["highway"] = "residential"
+            if mtfcc == "S1500":
+                tags["highway"] = "track"
+            if mtfcc == "S1630":        #Ramp
+                tags["highway"] = "motorway_link"
+            if mtfcc == "S1640":        #Service Drive usually along a limited access highway
+                tags["highway"] = "service"
+            if mtfcc == "S1710":        #Walkway/Pedestrian Trail
+                tags["highway"] = "path"
+            if mtfcc == "S1720":
+                tags["highway"] = "steps"
+            if mtfcc == "S1730":        #Alley
+                tags["highway"] = "service"
+                tags["service"] = "alley"
+            if mtfcc == "S1740":        #Private Road for service vehicles (logging, oil, fields, ranches, etc.)
+                tags["highway"] = "service"
+                tags["access"] = "private"
+            if mtfcc == "S1750":        #Private Driveway
+                tags["highway"] = "service"
+                tags["access"] = "private"
+                tags["service"] = "driveway"
+            if mtfcc == "S1780":        #Parking Lot Road
+                tags["highway"] = "service"
+                tags["service"] = "parking_aisle"
+            if mtfcc == "S1820":        #Bike Path or Trail
+                tags["highway"] = "cycleway"
+            if mtfcc == "S1830":        #Bridle Path
+                tags["highway"] = "bridleway"
+            tags["tiger:mtfcc"] = mtfcc
 
         # FEATURE NAME
         if poFeature.GetField("FULLNAME"):
@@ -3452,31 +140,35 @@ def parse_shp_for_osm( filename ):
             name = poFeature.GetField( "FULLNAME" )
             tags["name"] = name
 
-           #Attempt to guess highway grade
-           if name[0:2] == "I-":
-               tags["highway"] = "motorway"
-           if name[0:3] == "US ":
-               tags["highway"] = "primary"
-           if name[0:3] == "US-":
-               tags["highway"] = "primary"
-           if name[0:3] == "Hwy":
-               if tags["highway"] != "primary":
-                   tags["highway"] = "secondary"
-
-        divroad = poFeature.GetField("DIVROAD")
-        if divroad != None:
-           if divroad == "Y" and "highway" in tags and tags["highway"] == "residential":
-                tags["highway"] = "tertiary"
-            tags["tiger:separated"] = divroad
+            #Attempt to guess highway grade
+            if name[0:2] == "I-":
+                tags["highway"] = "motorway"
+            if name[0:3] == "US ":
+                tags["highway"] = "primary"
+            if name[0:3] == "US-":
+                tags["highway"] = "primary"
+            if name[0:3] == "Hwy":
+                if tags["highway"] != "primary":
+                    tags["highway"] = "secondary"
+
+        # TIGER 2017 no longer contains this field
+        if 'DIVROAD' in fieldNameList:
+            divroad = poFeature.GetField("DIVROAD")
+            if divroad != None:
+                if divroad == "Y" and "highway" in tags and tags["highway"] == "residential":
+                    tags["highway"] = "tertiary"
+                tags["tiger:separated"] = divroad
 
         statefp = poFeature.GetField("STATEFP")
         countyfp = poFeature.GetField("COUNTYFP")
         if (statefp != None) and (countyfp != None):
-           tags.update( fipsstate(statefp, countyfp) )
+            county_name = county_fips_data.get(statefp + '' + countyfp)
+            if county_name:
+                tags["tiger:county"] = county_name.encode("utf-8")
 
-        tlid = poFeature.GetField("TLID")
-        if tlid != None:
-            tags["tiger:tlid"] = tlid
+        tlid = poFeature.GetField("TLID")
+        if tlid != None:
+            tags["tiger:tlid"] = tlid
 
         lfromadd = poFeature.GetField("LFROMADD")
         if lfromadd != None:
@@ -3522,10 +214,10 @@ def parse_shp_for_osm( filename ):
 # ====================================
 projcs_wkt = \
 """GEOGCS["GCS_North_American_1983",
-       DATUM["D_North_American_1983",
-       SPHEROID["GRS_1980",6378137,298.257222101]],
-       PRIMEM["Greenwich",0],
-       UNIT["Degree",0.017453292519943295]]"""
+        DATUM["D_North_American_1983",
+        SPHEROID["GRS_1980",6378137,298.257222101]],
+        PRIMEM["Greenwich",0],
+        UNIT["Degree",0.017453292519943295]]"""
 
 from_proj = osr.SpatialReference()
 from_proj.ImportFromWkt( projcs_wkt )
@@ -3546,22 +238,21 @@ def length(segment, nodelist):
         pointid, (lat, lon) = nodelist[ round_point( point ) ]
         if first:
             first = False
-       else:
-           #The approximate number of feet in one degree of longitute
+        else:
+            #The approximate number of feet in one degree of longitute
             lrad = math.radians(lat)
             lon_feet = 365527.822 * math.cos(lrad) - 306.75853 * math.cos(3 * lrad) + 0.3937 * math.cos(5 * lrad)
-           distance += math.sqrt(((lat - previous[0])*lat_feet)**2 + ((lon - previous[1])*lon_feet)**2)
-       previous = (lat, lon)
+            distance += math.sqrt(((lat - previous[0])*lat_feet)**2 + ((lon - previous[1])*lon_feet)**2)
+        previous = (lat, lon)
     return distance
 
 def addressways(waylist, nodelist, first_id):
     id = first_id
-    awaylist = {}
     lat_feet = 364613  #The approximate number of feet in one degree of latitude
     distance = float(address_distance)
     ret = []
 
-    for waykey, segments in waylist.iteritems():
+    for waykey, segments in waylist.items():
         waykey = dict(waykey)
         rsegments = []
         lsegments = []
@@ -3570,11 +261,11 @@ def addressways(waylist, nodelist, first_id):
             rsegment = []
             lastpoint = None
 
-           #Don't pull back the ends of very short ways too much
-           seglength = length(segment, nodelist)
-           if seglength < float(address_pullback) * 3.0:
-               pullback = seglength / 3.0
-           else:
+            # Don't pull back the ends of very short ways too much
+            seglength = length(segment, nodelist)
+            if seglength < float(address_pullback) * 3.0:
+                pullback = seglength / 3.0
+            else:
                 pullback = float(address_pullback)
             if "tiger:lfromadd" in waykey:
                 lfromadd = waykey["tiger:lfromadd"]
@@ -3591,88 +282,88 @@ def addressways(waylist, nodelist, first_id):
             if "tiger:rtoadd" in waykey:
                 rtoadd = waykey["tiger:rtoadd"]
             else:
-               rtoadd = None
+                rtoadd = None
             if rfromadd != None and rtoadd != None:
                 right = True
-           else:
-               right = False
+            else:
+                right = False
             if lfromadd != None and ltoadd != None:
                 left = True
-           else:
-               left = False
+            else:
+                left = False
             if left or right:
-               first = True
+                first = True
                 firstpointid, firstpoint = nodelist[ round_point( segment[0] ) ]
 
                 finalpointid, finalpoint = nodelist[ round_point( segment[len(segment) - 1] ) ]
                 for point in segment:
                     pointid, (lat, lon) = nodelist[ round_point( point ) ]
 
-                   #The approximate number of feet in one degree of longitute
+                    #The approximate number of feet in one degree of longitute
                     lrad = math.radians(lat)
                     lon_feet = 365527.822 * math.cos(lrad) - 306.75853 * math.cos(3 * lrad) + 0.3937 * math.cos(5 * lrad)
 
 #Calculate the points of the offset ways
                     if lastpoint != None:
-                       #Skip points too close to start
-                       if math.sqrt((lat * lat_feet - firstpoint[0] * lat_feet)**2 + (lon * lon_feet - firstpoint[1] * lon_feet)**2) < pullback:
-                           #Preserve very short ways (but will be rendered backwards)
-                           if pointid != finalpointid:
-                               continue
-                       #Skip points too close to end
-                       if math.sqrt((lat * lat_feet - finalpoint[0] * lat_feet)**2 + (lon * lon_feet - finalpoint[1] * lon_feet)**2) < pullback:
-                           #Preserve very short ways (but will be rendered backwards)
-                           if (pointid != firstpointid) and (pointid != finalpointid):
-                               continue
+                        #Skip points too close to start
+                        if math.sqrt((lat * lat_feet - firstpoint[0] * lat_feet)**2 + (lon * lon_feet - firstpoint[1] * lon_feet)**2) < pullback:
+                            #Preserve very short ways (but will be rendered backwards)
+                            if pointid != finalpointid:
+                                continue
+                        #Skip points too close to end
+                        if math.sqrt((lat * lat_feet - finalpoint[0] * lat_feet)**2 + (lon * lon_feet - finalpoint[1] * lon_feet)**2) < pullback:
+                            #Preserve very short ways (but will be rendered backwards)
+                            if (pointid != firstpointid) and (pointid != finalpointid):
+                                continue
 
                         X = (lon - lastpoint[1]) * lon_feet
-                       Y = (lat - lastpoint[0]) * lat_feet
+                        Y = (lat - lastpoint[0]) * lat_feet
                         if Y != 0:
-                           theta = math.pi/2 - math.atan( X / Y)
-                           Xp = math.sin(theta) * distance
-                           Yp = math.cos(theta) * distance
+                            theta = math.pi/2 - math.atan( X / Y)
+                            Xp = math.sin(theta) * distance
+                            Yp = math.cos(theta) * distance
                         else:
                             Xp = 0
-                           if X > 0:
+                            if X > 0:
                                 Yp = -distance
-                           else:
+                            else:
                                 Yp = distance
 
-                       if Y > 0:
-                           Xp = -Xp
-                       else:
-                           Yp = -Yp
-                               
-                       if first:
-                           first = False
-                           dX =  - (Yp * (pullback / distance)) / lon_feet #Pull back the first point
-                           dY = (Xp * (pullback / distance)) / lat_feet
-                           if left:
+                        if Y > 0:
+                            Xp = -Xp
+                        else:
+                            Yp = -Yp
+                                
+                        if first:
+                            first = False
+                            dX =  - (Yp * (pullback / distance)) / lon_feet #Pull back the first point
+                            dY = (Xp * (pullback / distance)) / lat_feet
+                            if left:
                                 lpoint = (lastpoint[0] + (Yp / lat_feet) - dY, lastpoint[1] + (Xp / lon_feet) - dX)
                                 lsegment.append( (id, lpoint) )
-                               id += 1
-                           if right:
+                                id += 1
+                            if right:
                                 rpoint = (lastpoint[0] - (Yp / lat_feet) - dY, lastpoint[1] - (Xp / lon_feet) - dX)
                                 rsegment.append( (id, rpoint) )
-                               id += 1
-
-                       else:
-                           #round the curves
-                           if delta[1] != 0:
-                               theta = abs(math.atan(delta[0] / delta[1]))
-                           else:
-                               theta = math.pi / 2
-                           if Xp != 0:
-                               theta = theta - abs(math.atan(Yp / Xp))
-                           else: theta = theta - math.pi / 2
-                           r = 1 + abs(math.tan(theta/2))
-                           if left:
-                               lpoint = (lastpoint[0] + (Yp + delta[0]) * r / (lat_feet * 2), lastpoint[1] + (Xp + delta[1]) * r / (lon_feet * 2))
+                                id += 1
+
+                        else:
+                            #round the curves
+                            if delta[1] != 0:
+                                theta = abs(math.atan(delta[0] / delta[1]))
+                            else:
+                                theta = math.pi / 2
+                            if Xp != 0:
+                                theta = theta - abs(math.atan(Yp / Xp))
+                            else: theta = theta - math.pi / 2
+                            r = 1 + abs(math.tan(theta/2))
+                            if left:
+                                lpoint = (lastpoint[0] + (Yp + delta[0]) * r / (lat_feet * 2), lastpoint[1] + (Xp + delta[1]) * r / (lon_feet * 2))
                                 lsegment.append( (id, lpoint) )
                                 id += 1
-                           if right:
+                            if right:
                                 rpoint = (lastpoint[0] - (Yp + delta[0]) * r / (lat_feet * 2), lastpoint[1] - (Xp + delta[1]) * r / (lon_feet * 2))
-                               
+                                
                                 rsegment.append( (id, rpoint) )
                                 id += 1
 
@@ -3682,150 +373,111 @@ def addressways(waylist, nodelist, first_id):
 
 
 #Add in the last node
-               dX =  - (Yp * (pullback / distance)) / lon_feet
-               dY = (Xp * (pullback / distance)) / lat_feet
-               if left:
+                dX =  - (Yp * (pullback / distance)) / lon_feet
+                dY = (Xp * (pullback / distance)) / lat_feet
+                if left:
                     lpoint = (lastpoint[0] + (Yp + delta[0]) / (lat_feet * 2) + dY, lastpoint[1] + (Xp + delta[1]) / (lon_feet * 2) + dX )
                     lsegment.append( (id, lpoint) )
                     id += 1
-               if right:
+                if right:
                     rpoint = (lastpoint[0] - Yp / lat_feet + dY, lastpoint[1] - Xp / lon_feet + dX)
                     rsegment.append( (id, rpoint) )
                     id += 1
 
 #Generate the tags for ways and nodes
-               rtags = []
-               ltags = []
-               tags = []
                 zipr = ''
                 zipl = ''
                 name = ''
                 county = ''
-               if "tiger:zip_right" in waykey:
-                   zipr = waykey["tiger:zip_right"]
-                    rtags.append( "<tag k=\"addr:postcode\" v=\"%s\" />" % zipr )
-               if "tiger:zip_left" in waykey:
-                   zipl = waykey["tiger:zip_left"]
-                    ltags.append( "<tag k=\"addr:postcode\" v=\"%s\" />" % zipl )
+                if "tiger:zip_right" in waykey:
+                    zipr = waykey["tiger:zip_right"]
+                if "tiger:zip_left" in waykey:
+                    zipl = waykey["tiger:zip_left"]
                 if "name" in waykey:
                     name = waykey["name"]
-                    tags.append( "<tag k=\"addr:street\" v=\"%s\" />" % name )
-               if "is_in:state" in waykey:
-                   state = waykey["is_in:state"]
-                    tags.append( "<tag k=\"addr:state\" v=\"%s\" />" % state )
-               if "tiger:county" in waykey:
-                   county = waykey["tiger:county"]
-                    tags.append( "<tag k=\"addr:county\" v=\"%s\" />" % county )
-               if "is_in:country_code" in waykey:
-                   country = waykey["is_in:country_code"]
-                    tags.append( "<tag k=\"addr:country\" v=\"%s\" />" % country )
-               if "tiger:separated" in waykey:
-                   separated = waykey["tiger:separated"]
-               else:
-                   separated = "N"
-               ltags.extend(tags)
-               rtags.extend(tags)
+                if "tiger:county" in waykey:
+                    county = waykey["tiger:county"]
+                if "tiger:separated" in waykey: # No longer set in Tiger-2017
+                    separated = waykey["tiger:separated"]
+                else:
+                    separated = "N"
 
 #Write the nodes of the offset ways
-               if right:
+                if right:
                     rlinestring = [];
                     for i, point in rsegment:
                         rlinestring.append( "%f %f" % (point[1], point[0]) )
-               if left:
+                if left:
                     llinestring = [];
                     for i, point in lsegment:
                         llinestring.append( "%f %f" % (point[1], point[0]) )
-               if right:
+                if right:
                     rsegments.append( rsegment )
-               if left:
+                if left:
                     lsegments.append( lsegment )
-               rtofromint = right      #Do the addresses convert to integers?
-               ltofromint = left       #Do the addresses convert to integers?
-               if right:
-                   try: rfromint = int(rfromadd)
-                   except:
-                       print("Non integer address: %s" % rfromadd)
-                       rtofromint = False
-                   try: rtoint = int(rtoadd)
-                   except:
-                       print("Non integer address: %s" % rtoadd)
-                       rtofromint = False
-               if left:
-                   try: lfromint = int(lfromadd)
-                   except:
-                       print("Non integer address: %s" % lfromadd)
-                       ltofromint = False
-                   try: ltoint = int(ltoadd)
-                   except:
-                       print("Non integer address: %s" % ltoadd)
-                       ltofromint = False
-               import_guid = time.strftime( '%Y%m%d%H%M%S' )
-               if right:
-                   id += 1
-
-                    interpolationtype = "";
-                   if rtofromint:
+                rtofromint = right        #Do the addresses convert to integers?
+                ltofromint = left        #Do the addresses convert to integers?
+                if right:
+                    try: rfromint = int(rfromadd)
+                    except:
+                        print("Non integer address: %s" % rfromadd)
+                        rtofromint = False
+                    try: rtoint = int(rtoadd)
+                    except:
+                        print("Non integer address: %s" % rtoadd)
+                        rtofromint = False
+                if left:
+                    try: lfromint = int(lfromadd)
+                    except:
+                        print("Non integer address: %s" % lfromadd)
+                        ltofromint = False
+                    try: ltoint = int(ltoadd)
+                    except:
+                        print("Non integer address: %s" % ltoadd)
+                        ltofromint = False
+                if right:
+                    id += 1
+
+                    interpolationtype = "all";
+                    if rtofromint:
                         if (rfromint % 2) == 0 and (rtoint % 2) == 0:
-                           if separated == "Y":        #Doesn't matter if there is another side
-        #                        ret.append( "<tag k=\"addr:interpolation\" v=\"even\" />" )
+                            if separated == "Y":        #Doesn't matter if there is another side
                                 interpolationtype = "even";
-                           elif ltofromint and (lfromint % 2) == 1 and (ltoint % 2) == 1:
+                            elif ltofromint and (lfromint % 2) == 1 and (ltoint % 2) == 1:
                                 interpolationtype = "even";
-       #                         ret.append( "<tag k=\"addr:interpolation\" v=\"even\" />" )
-                           else:
-                                interpolationtype = "all";
-      #                          ret.append( "<tag k=\"addr:interpolation\" v=\"all\" />" )
                         elif (rfromint % 2) == 1 and (rtoint % 2) == 1:
-                           if separated == "Y":        #Doesn't matter if there is another side
+                            if separated == "Y":        #Doesn't matter if there is another side
                                 interpolationtype = "odd";
-     #                           ret.append( "<tag k=\"addr:interpolation\" v=\"odd\" />" )
-                           elif ltofromint and (lfromint % 2) == 0 and (ltoint % 2) == 0:
+                            elif ltofromint and (lfromint % 2) == 0 and (ltoint % 2) == 0:
                                 interpolationtype = "odd";
-    #                            ret.append( "<tag k=\"addr:interpolation\" v=\"odd\" />" )
-                           else:
-                                interpolationtype = "all";
-   #                             ret.append( "<tag k=\"addr:interpolation\" v=\"all\" />" )
-                       else:
-                            interpolationtype = "all";
-  #                          ret.append( "<tag k=\"addr:interpolation\" v=\"all\" />" )
-                   else:
-                        interpolationtype = "all";
- #                       ret.append( "<tag k=\"addr:interpolation\" v=\"all\" />" )
-#                  ret.extend(rtags)
-  #                  ret.append( "<tag k=\"source\" v=\"%s_import_v%s_%s\" />" % (iSource, VERSION, import_guid) )
- #                   ret.append( "<tag k=\"attribution\" v=\"%s\" />" % (iAttrib) )
-#                    ret.append( "</way>" )
-
-                    ret.append( "select tigger_create_interpolation(ST_GeomFromText('LINESTRING(%s)',4326), '%s', '%s', '%s', '%s', '%s', '%s');" %
-                                ( ",".join(rlinestring), rfromadd.replace("'", "''"), rtoadd.replace("'", "''"), interpolationtype.replace("'", "''"), name.replace("'", "''"), county.replace("'", "''"), zipr.replace("'", "''") ) )
-
-               if left:
-                   id += 1
-                   if ltofromint:
+
+                    ret.append( "SELECT tiger_line_import(ST_GeomFromText('LINESTRING(%s)',4326), %s, %s, %s, %s, %s, %s);" %
+                                ( ",".join(rlinestring), sql_quote(rfromadd), sql_quote(rtoadd), sql_quote(interpolationtype), sql_quote(name), sql_quote(county), sql_quote(zipr) ) )
+
+                if left:
+                    id += 1
+
+                    interpolationtype = "all";
+                    if ltofromint:
                         if (lfromint % 2) == 0 and (ltoint % 2) == 0:
-                           if separated == "Y":
+                            if separated == "Y":
                                 interpolationtype = "even";
-                           elif rtofromint and (rfromint % 2) == 1 and (rtoint % 2) == 1:
+                            elif rtofromint and (rfromint % 2) == 1 and (rtoint % 2) == 1:
                                 interpolationtype = "even";
-                           else:
-                                interpolationtype = "all";
-
                         elif (lfromint % 2) == 1 and (ltoint % 2) == 1:
-                           if separated == "Y":
+                            if separated == "Y":
                                 interpolationtype = "odd";
-                           elif rtofromint and (rfromint %2 ) == 0 and (rtoint % 2) == 0:
+                            elif rtofromint and (rfromint %2 ) == 0 and (rtoint % 2) == 0:
                                 interpolationtype = "odd";
-                           else:
-                                interpolationtype = "all";
-                       else:
-                            interpolationtype = "all";
-                   else:
-                        interpolationtype = "all";
-                    ret.append( "select tigger_create_interpolation(ST_GeomFromText('LINESTRING(%s)',4326), '%s', '%s', '%s', '%s', '%s', '%s');" %
-                                ( ",".join(llinestring), lfromadd.replace("'", "''"), ltoadd.replace("'", "''"), interpolationtype.replace("'", "''"), name.replace("'", "''"), county.replace("'", "''"), zipl.replace("'", "''") ) )
+
+                    ret.append( "SELECT tiger_line_import(ST_GeomFromText('LINESTRING(%s)',4326), %s, %s, %s, %s, %s, %s);" %
+                                ( ",".join(llinestring), sql_quote(lfromadd), sql_quote(ltoadd), sql_quote(interpolationtype), sql_quote(name), sql_quote(county), sql_quote(zipl) ) )
 
     return ret
 
+def sql_quote( string ):
+    return "'" + string.replace("'", "''") + "'"
+
 def unproject( point ):
     pt = tr.TransformPoint( point[0], point[1] )
     return (pt[1], pt[0])
@@ -3861,7 +513,6 @@ def adjacent( left, right ):
              left_right == right_right )
              
 def glom( left, right ):
-    
     left = list( left )
     right = list( right )
     
@@ -3921,13 +572,13 @@ def glom_all( segments ):
         
                 
 
-def compile_waylist( parsed_gisdata, blank_way_id ):
+def compile_waylist( parsed_gisdata ):
     waylist = {}
     
-    #Group by iSource:way_id
+    #Group by tiger:way_id
     for geom, tags in parsed_gisdata:
         way_key = tags.copy()
-        way_key = ( way_key[iSource + ':way_id'], tuple( [(k,v) for k,v in way_key.iteritems()] ) )
+        way_key = ( way_key['tiger:way_id'], tuple( [(k,v) for k,v in way_key.items()] ) )
         
         if way_key not in waylist:
             waylist[way_key] = []
@@ -3935,130 +586,35 @@ def compile_waylist( parsed_gisdata, blank_way_id ):
         waylist[way_key].append( geom )
     
     ret = {}
-    for (way_id, way_key), segments in waylist.iteritems():
-        
-        if way_id != blank_way_id:
-            ret[way_key] = glom_all( segments )
-        else:
-            ret[way_key] = segments
-        
+    for (way_id, way_key), segments in waylist.items():
+        ret[way_key] = glom_all( segments )
     return ret
             
 
-import time
-from xml.sax.saxutils import escape
-def shape_to_osm( shp_filename, base_filename, blank_way_id ):
+def shape_to_sql( shp_filename, sql_filename ):
     
-    import_guid = time.strftime( '%Y%m%d%H%M%S' )
-
-    print "parsing shpfile"
-    parsed_features = parse_shp_for_osm( shp_filename )
+    print("parsing shpfile %s" % shp_filename)
+    parsed_features = parse_shp_for_geom_and_tags( shp_filename )
     
-    print "compiling nodelist"
+    print("compiling nodelist")
     i, nodelist = compile_nodelist( parsed_features )
     
-    print "compiling waylist"
-    waylist = compile_waylist( parsed_features, blank_way_id )
-
-    filenumber = 1
-    objectcount = 0
-    seen = {}
-
-    print "preparing address ways"
-    ret = addressways(waylist, nodelist, i)
-    osm_filename = "%s%d.osm" % (base_filename, filenumber)
-    print "writing %s" %osm_filename
-    fp = open( osm_filename, "w" )
-    fp.write( "\n".join( ret ) )
-    fp.close()
-    filenumber += 1
+    print("compiling waylist")
+    waylist = compile_waylist( parsed_features )
 
-    
-    print "constructing osm xml file"
-    ret = []
-    ret.append( "<?xml version='1.0' encoding='UTF-8'?>" )
-    ret.append( "<osm version='0.6' generator='shape_to_osm.py'>" )
-    
-    for waykey, segments in waylist.iteritems():
-        for segment in segments:
-           #write the nodes
-            for point in segment:
-                id, (lat, lon) = nodelist[ round_point( point ) ]
-                if id not in seen:
-                    seen[id] = True
-                   #write node
-                    ret.append( "  <node id='-%d' action='create' visible='true' lat='%f' lon='%f' >" % (id, lat, lon) )
-                    ret.append( "  </node>" )
-                    objectcount += 1
-                else:
-                    pass
-                    #print "Skipping node %d" %id
+    print("preparing address ways")
+    sql_lines = addressways(waylist, nodelist, i)
 
-           #write the way
-            ret.append( "  <way id='-%d' action='create' visible='true'>" % i )
-            
-            ids = [ nodelist[ round_point( point ) ][0] for point in segment ]
-
-            count = 0
-            for id in ids:
-                count += 1
-                ret.append( "    <nd ref='-%d' />" % id )
-                if (count % Max_Waylength == 0) and (count != len(ids)):       #Split the way
-                    for k, v in waykey:
-                        ret.append( "    <tag k=\"%s\" v=\"%s\" />" % (k, escape(str(v))) )
-                    ret.append( "    <tag k=\"source\" v=\"%s_import_v%s_%s\" />" % (iSource, VERSION, import_guid) )
-                    ret.append( "    <tag k=\"attribution\" v=\"%s\" />" % (iAttrib) )
-                
-                    ret.append( "  </way>" )
-                    objectcount += 1
-                   i += 1
-                    ret.append( "  <way id='-%d' action='create' visible='true'>" % i )
-                    ret.append( "    <nd ref='-%d' />" % id )
-                
-            for k, v in waykey:
-                ret.append( "    <tag k=\"%s\" v=\"%s\" />" % (k, escape(str(v))) )
-            ret.append( "    <tag k=\"source\" v=\"%s_import_v%s_%s\" />" % (iSource, VERSION, import_guid) )
-            ret.append( "    <tag k=\"attribution\" v=\"%s\" />" % (iAttrib) )
-                
-            ret.append( "  </way>" )
-            objectcount += 1
-            
-            i += 1
-
-            if objectcount > maxNodes: #Write a file
-                ret.append( "</osm>" )
-                osm_filename = "%s%d.osm" % (base_filename, filenumber)
-                print "writing %s" %osm_filename
-                fp = open( osm_filename, "w" )
-                fp.write( "\n".join( ret ) )
-                fp.close()
-
-                objectcount = 0
-                filenumber += 1
-                seen = {}
-                ret = []
-                ret.append( "<?xml version='1.0' encoding='UTF-8'?>" )
-                ret.append( "<osm version='0.6' generator='shape_to_osm.py'>" )
-        
-    ret.append( "</osm>" )
-    
-    osm_filename = "%s%d.osm" % (base_filename, filenumber)
-    print "writing %s" %osm_filename
-    fp = open( osm_filename, "w" )
-    fp.write( "\n".join( ret ) )
+    print("writing %s" % sql_filename)
+    fp = open( sql_filename, "w" )
+    fp.write( "\n".join( sql_lines ) )
     fp.close()
     
 if __name__ == '__main__':
     import sys, os.path
-    if len(sys.argv) < 2:
-        print "%s filename.shp [filename.osm]" % sys.argv[0]
+    if len(sys.argv) < 3:
+        print("%s input.shp output.sql" % sys.argv[0])
         sys.exit()
-    shape = sys.argv[1]
-    if len(sys.argv) > 2:
-        osm = sys.argv[2]
-    else:
-        osm = shape[0:-4] + ".osm" 
-    id = "1.shp"
-       # Left over from massGIS unknown usage, but works fine hardcoded to "1.shp" which was the valu on a test of the actual mass data,
-       #id = os.path.basename(shape).split("_")[-1]
-    shape_to_osm( shape, osm, id )
+    shp_filename = sys.argv[1]
+    sql_filename = sys.argv[2]
+    shape_to_sql(shp_filename, sql_filename)